金融函数

金融函数介绍

1.fv函数——计算所谓的终值(future value),即基于一些假设给出的某个金融资
产在未来某一时间点的价值。
2.pv函数——计算现值(present value),即金融资产当前的价值。
3.npv函数——计算净现值(net present value),即按折现率计算的净现金流之和。
4.pmt函数——根据本金和利率计算每期需支付的金额。
5.nper函数——计算定期付款的期数。
6.rate函数——计算利率(rate of interest)。

1.fv函数

    fv函数——计算所谓的终值(future value),终值是基于一些假设给出的某个金融
资产在未来某一时间点的价值。终值有以下4个参数决定-------->利率、期数、每期支付金额以及现值

语法格式如下:np.fv(rate,nper,pmt,pv)
rate:存款/贷款每期的利率
nper:存款/贷款期数
pmt:存款/贷款每期支付的金额
pv:存款/贷款金额

举例:某用户去银行存款,假设年利率3%、每季度续存金额
10元、存5年以及存款1000,则计算5年后可领取多少金额。

fv=np.fv(0.03/4,5*4,-10,-1000)
rate=0.03/4
nper=5*4
pmt=-10
pv=1000
print("5年后本息和为:",fv)-------------------------->5年后本息和为: 1376.0963320407982

for year in range(1,6):
    fv=np.fv(0.03/4,year*4,-10,-1000)
    print("第{}年后本息和为:{}".format(year,fv))----->第1年后本息和为:1070.79144488281282年后本息和为:1143.73064490931033年后本息和为:1218.88276123229554年后本息和为:1296.31493194121195年后本息和为:1376.0963320407982

2.pv函数

    pv函数计算现值(present value)是指资产在当前时刻的价值。
现值有以下4个参数决定------>利率、期数、每期支付金额以及终值

语法格式如下:np.pv(rate,nper,pmt,fv)
rate:存款/贷款每期的利率
nper:存款/贷款期数
pmt:存款/贷款每期支付的金额
fv:存款/贷款终值
   如果是贷款则终值为0
   如果是存款则终值为本息和

举例:某用户去银行存款,假设年利率3%、每季度续存金额10
元、存5年后可领1376.0963320,则计算5年前存取的本金是多
少金额。

rate=0.03/4
nper=5*4
pmt=-10
pv=1376.0963320
pv=np.pv(0.03/4,5*4,-10,1376.0963320)
print("5年钱存取的本金为:",np.round(-pv))--------------->5年钱存取的本金为: 1000.0

3.npv函数

    净现值(net present value)——定义为按折现率计算的净现金流之和。净现值是指投资方案所产生的
[现金净流量](流入-流出)以资金成本为贴现率折现之后与原始投资额现值的差额

经济意义
 NPV>0表示项目实施后,除保证可实现预定的收益率外,尚可获得更高的收益。
 NPV<0表示项目实施后,未能达到预定的收益率水平,而不能确定项目已亏损。
 NPV=0表示项目实施后的投资收益率正好达到预期,而不是投资项目盈亏平衡。

语法格式:np.npv(rate,values)
rate:折现率
values:现金流,正数代表‘收入’或‘取款’,负数代表‘投资’或‘存款’。第一个值
必须是初始的投资,也就是必须是负数

举例:投资100,支出39、59、55、20。折现率为28.1%,则
净现值为:

npv=np.npv(0.281,[-100,39,59,55,20])
print("净现值为\n",npv)-------------------------------->净现值为
 -0.00847859163845488

4.pmt函数

    pmt函数——根据本金和利率计算每期需支付的金额。

语法格式:np.pmt(rate,nper,pv)
rate:存款/贷款每期的利率
nper:存款/贷款期数
pv:需要存款/贷款的金额

举例:某同学房贷20万,准备15年还清,年利率为7.5%,则每
月需还贷多少金额?

rate=0.075/12
nper=15*12
pv=200000
pmt=np.pmt(0.075/12,15*12,200000)
print("每期需要还款:{}元".format(pmt))-------------------->每期需要还款:-1854.0247200054619

5.nper函数

    nper函数——计算定期付款的期数。

语法格式:np.nper(rate,pmt,pv,fv)
rate:存款/贷款每期的利率
pmt:存款/贷款每期支付的金额
pv:存款/贷款金额
fv:存款/贷款终值

举例:某同学房贷20万,年利率为7.5%,每月能还贷2000,则
需要还多少期?

months=np.ceil(np.nper(0.075/12,-2000,200000))#np.ceil()进行向上取整
print("需要还款{}月".format(months))----------------------->需要还款158.0月
years=np.ceil(months/12)
print("需要还款{}年".format(years))------------------------>需要还款14.0

6.rate函数

    rate函数——根据给定的付款期数、每期付款资金、现值和终值计算利率.

语法格式:numpy.rate(nper, pmt, pv, fv)    
nper :需还的期数
pmt:每期支付的金额
pv:present value,现值
fv: 终值    

举例:某同学房贷20万,需还14年,每月能还贷2000,则年利
率为多少?

rate=12*np.rate(14*12,-2000,200000,0)
print(rate)------------------------------------------------->0.08152561100572708

猜你喜欢

转载自blog.csdn.net/messi_james/article/details/80508409