python——商业按揭贷款分析

模型变量解释:

1.商业按揭贷款分析

# 等额还款模型与计算
# 借款人每期以相等的金额偿还贷款,按还款周期逐期归还,在贷款截止日期前全部还清本息
# R;月贷款利率
# B:总借款额
# MP:月还款额
# n:还款期
# F=AJfixPayMENT(MP,Num,B,Rate)
# MP:每期还款总额
# Num:还款期数
# B:贷款总额
# Rate:贷款利率
# F:最后贷款总额

模型代码:

def AJfixPayment(MP,Num,B,Rate):
    IR=[0]*Num #IR为月利息偿还额
    YE=[0]*Num #YE为月初贷款余额
    BJ=[0]*Num #BJ为月本金偿还额
#     第一期贷款本金
    YE[0]=B
    for i in xrange(Num): #xrange() 函数用法与 range 完全相同,所不同的是生成的不是一个数组,而是一个生成器。
#         第i期应还利息
        IR[i]=Rate*YE[i]
#     第i期应还本金=第i期还款-第i期利息
        BJ[i]=MP-IR[i]
#     非最后一次还款
        if i

例子:

#贷款50万,10年还款120期,年贷款利率5%,每月还款5000,则贷款余额为多少

from six.moves import xrange
Num=12*10
# 贷款金额
B=5e5
# 月利率
Rate=0.05/12
# 每次还款5000元
MP=5000
F=AJfixPayment(MP,Num,B,Rate)
print(F)

结果为:

47093.3516168021

2.# 等额本金还款


# 借款人每期必须偿还等额本金,同时付清本期应付的贷款利息,而每期归还的本金等于贷款总额除以贷款期数
# MP=AJvarPayment(Num,B,Rate)
# Num:还款期数
# B:贷款总额
# Rate:贷款利率
# MP:每期还款总额

import numpy as np
def AJvarPayment(Num,B,Rate):
    MB=B/Num #月还本金
    YE=B-np.cumsum(MB*np.ones(Num-1)) #月初贷款余额
    MP=MB+Rate*YE 
    MP=MP.tolist()
    MP=[MB+Rate*B]+MP
    return np.array(MP)

例子:

#  贷款50万,10年还款120期,年贷款利率5%,采用等额本金还款方式,则每月还款总额多少

Num=12*10
B=5e5
Rate=0.05/12
MP=AJvarPayment(Num,B,Rate)
print(MP)

结果为:

[6250.         6232.63888889 6215.27777778 6197.91666667 6180.55555556
 6163.19444444 6145.83333333 6128.47222222 6111.11111111 6093.75
 6076.38888889 6059.02777778 6041.66666667 6024.30555556 6006.94444444
 5989.58333333 5972.22222222 5954.86111111 5937.5        5920.13888889
 5902.77777778 5885.41666667 5868.05555556 5850.69444444 5833.33333333
 5815.97222222 5798.61111111 5781.25       5763.88888889 5746.52777778
 5729.16666667 5711.80555556 5694.44444444 5677.08333333 5659.72222222
 5642.36111111 5625.         5607.63888889 5590.27777778 5572.91666667
 5555.55555556 5538.19444444 5520.83333333 5503.47222222 5486.11111111
 5468.75       5451.38888889 5434.02777778 5416.66666667 5399.30555556
 5381.94444444 5364.58333333 5347.22222222 5329.86111111 5312.5
 5295.13888889 5277.77777778 5260.41666667 5243.05555556 5225.69444444
 5208.33333333 5190.97222222 5173.61111111 5156.25       5138.88888889
 5121.52777778 5104.16666667 5086.80555556 5069.44444444 5052.08333333
 5034.72222222 5017.36111111 5000.         4982.63888889 4965.27777778
 4947.91666667 4930.55555556 4913.19444444 4895.83333333 4878.47222222
 4861.11111111 4843.75       4826.38888889 4809.02777778 4791.66666667
 4774.30555556 4756.94444444 4739.58333333 4722.22222222 4704.86111111
 4687.5        4670.13888889 4652.77777778 4635.41666667 4618.05555556
 4600.69444444 4583.33333333 4565.97222222 4548.61111111 4531.25
 4513.88888889 4496.52777778 4479.16666667 4461.80555556 4444.44444444
 4427.08333333 4409.72222222 4392.36111111 4375.         4357.63888889
 4340.27777778 4322.91666667 4305.55555556 4288.19444444 4270.83333333
 4253.47222222 4236.11111111 4218.75       4201.38888889 4184.02777778]

画图直观表示:

import matplotlib.pyplot as plt
t=range(0,120,1)
plt.plot(t,MP)

python——商业按揭贷款分析_第1张图片

这期就分享到这里,边学习边分享。

你可能感兴趣的:(python,数据分析,机器学习,深度学习,算法)