python现金流计算的方法有哪些
今天小编给大家分享一下python现金流计算的方法有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
常用现金流的计算1.固定现金流现值计算函数表达式:PresentVal=pv(Rate,NumPeriods,Payment,ExtraPayment,Due) Rate:贴现率 NumPeriods:贴现周期 Payment 周期现金流 ExtraPayment:最后一次非周期现金流,函数默认为 0Due:现金流计息方式(0为周期末付息,1为周期初付息)PresentVal:现金流现值代码如下:
importnumpyasnpFacevalue=1000#债券付息(面值*利率),假设每年付息一次Payment=0.05*Facevalue#市场利率Rate=0.06#到期还本,ExtraPayment额外现金流为本金ExtraPayment=Facevalue#债券期现为10年NumPeriods=10#每年年末付息Due=0PresentVal=abs(np.pv(Rate,NumPeriods,Payment,ExtraPayment,Due))print(PresentVal)#该债券价格低于926.4,则被低估,高于926.4,则被高估
结果为:926.3991294858529
FutureVal=fv(Rate,NumPeriods,Payment,PresentVal,Due)
Rate:贴现率
NumPeriods:贴现周期
Payment 周期现金流
Due:现金流计息方式(0为周期末付息,1为周期初付息)
PresentVal:现金流现值 # FutureVal:现金流终值
代码如下:
importnumpyasnpFacevalue=1000#债券付息(面值*利率),假设每年付息一次Payment=0.05*Facevalue#市场利率Rate=0.06#到期还本,ExtraPayment额外现金流为本金ExtraPayment=Facevalue#债券期现为10年NumPeriods=10#每年年末付息Due=0FutureVal=abs(np.fv(Rate,NumPeriods,Payment,PresentVal,Due))print(FutureVal)
结果如下:2318.079494238091
净现值法(NPV)将现金流用必要收益率贴现计算 NPV 值,若 NPV>0,则可行,否则不可行内部收益率法假设 NPV=0,计算必要贴现率,若 IRR 大于必要收益率则可行,反之不可行净现值 NPV 计算函数 PresentVal=npv(Rate,CashFlow)Rate:必要收益率CashFlow:现金流序列向量 PresentVal:现金流现值代码如下:
importnumpyasnp#现金流CashFlow=[-8000,2500.1500,3000,1000,2000]#利率Rate=0.08PresentVal1=-8000+2500/1.08+1500/1.08**2+3000/1.08**3+1000/1.08**4+2000/1.08**5PresentVal1=np.npv(Rate,CashFlow)print(PresentVal1)
结果如下:-849.137888777871
4. 内部收益率计算函数Return=irr(CashFlow)Return :内部收益率代码如下:
importnumpyasnpCashFlow=[-8000,2500,1500,3000,1000,2000]Return=np.round(np.irr(CashFlow),4)#round()方法返回浮点数x的四舍五入值。如round(80.23456,2):80.23print(Return)
结果如下:0.0839
5. 年现金流计算若投资100万买房,还款期20年,每月还6000元,则贷款利率为多少?若改为每月还8000,贷款利率不变,则还款期限为多长?年金利率函数 rate Rate=rate(NumPeriods,Payment,PresentValue,FutureValue,Due) NumPeriods:现金流周期 Payment:现金流支出 FutureValue:现金流终值,函数默认为 0Due:现金流计息方式(0为周期末付息,1为周期初付息) PresentVal:现金流现值 Rate:利息率(贴现率)
代码如下:
importnumpyasnp#贷款现值PresentValue=1000000.0#每次还款金额Payment=-6000.0#还款次数NumPeriods=20*12#现金流终值为0FutureValue=0#每周期还款一次,0为周期末付息Due=0#调用rate函数Rate=np.around(np.rate(NumPeriods,Payment,PresentValue,FutureValue),4)print(Rate)
结果为:0.0032
继续求解,
年金周期函数 nper NumPeriods=nper(Rate,Payment,PresentValue,fv,Due)Rate:贴现率 Payment:现金流收入(支出) PresentValue:现金流现值fv:现金流终值,默认值为 0Due:现金流计息方式 NumPeriods:现金流周期
importnumpyasnp#贷款现值PresentValue=1000000.0#每次还款金额Payment=-8000.0#现金流终值为0FutureValue=0#每周期还款一次,0为周期末付息Due=0#月利率,银行的现行计息方式Rate=0.0389/12#调用nper计算还款周期NumPeriods=np.nper(Rate,Payment,PresentValue,fv=0,when='end')print(NumPeriods/12)
结果如下:13.377524805437297
以上就是“python现金流计算的方法有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。