一、货币时间价值
实际上numpy和scipy很强大,包含了计算各种财务指标的函数,可以直接调用,终值(fv)、现值(pv)、净现值(npv)、每期支付金额(pmt)、内部收益率(irr)、修正内部收益率(mirr)、定期付款期数(nper)、利率(rate)等等。
其中,PV为现值,FV为终值;C为现金流,r贴现率,n期限。
现值(Present Discounted Value):折现值也称贴现值PDV,是将未来的一笔钱按照某种利率折合为现值。通俗地说,折现值是指将来的一笔资产或负债折算到现在,值多少。这是考虑了两个时间点上现金或资产点时间价值。意思是,相同数目的资金,时间越长的,价值大。
终值(Future value):是指某一时点上的一定量现金折合到未来的价值,俗称本利和。
贴现率(Discount Rate):未来的钱折算到现值,少掉或者多出的那部分钱,与未来的钱的比值。
二、年金计算
在n个时期内,每个时期可以获得等额现金流PMT,利率为r
- 普通年金现值:
- 普通年金终值:
- 均等永续年金现值:
令公式(1)中的n为无穷大即可得到
- 增长永续年金现值:
c为未来每期可以获得的现金收入,g是c的固定增长率
详细解析可以看这篇文章现金流五函数(rate,nepr,pmt,pv,fv,type)
1 | #自定义计算一系列现金流现值(如年金)的函数 |
- 应用实例1: 有个五年的普通年金年金,每年可获得20000元,假设贴现率为5%,现值是多少?如果是预付年金呢?
1 | c=20000 |
- 如果要计算一系列现金流的终值呢?
1 | #自定义终值函数 |
- 应用实例2:未来五年年末分别收到100、200、300、100、500元,每年贴现率分别为4%、5%、6%、8%和10%,求现值和终值。
1 | c=[100,200,300,100,500] |
- 已知现值或终值,利率和时期,求每期支出或收入现金流呢?
1 | #定义一个计算每期现金流的函数 |
- 应用实例3:假设向某银行贷款200万元买房,贷款利率5.0%,按月还款,30年还清本息,请问每月应该还多少钱?
1 | pv=2000000 |
- 应用实例3扩展:假设计息利率调整一次,前15年利率保持5%,后15年利率上调到6%。可以理解为:假设前15年每月按照10736元还款,后15年如果利率上升到6%,应该每月还多少?
1 | c0=10736 |
- 应用实例4:假设计划15年后要给小孩准备一笔300万元的留学资金,投资收益率为8%,请问从现在开始每月需要投入多少钱?
1 | fv=3000000 |
三、实际利率
其中,EAR为实际年利率(effective annual rate);APR为名义年利率(Annual Percentage Rate);m是一年内复利的次数。
- 连续复利(Continuously compounded interest rate)
知识回顾
名义利率与实际利率跟通胀率对应的名义利率不同。实际利率是什么呢?知乎
- 情景一:年初存入银行100块钱,银行承诺利率12%。于是年末能拿到112块钱。这里的12块钱就是利息,12%就是实际利率。
- 情景二:年初存入银行100块钱,银行承诺利率12%。聪明的人发现一个漏洞(假设半年就是12%/2),银行承诺12%,也就是半年利率可记为6%。然后当存入100块半年后,取出来106块钱,接着转身去另一个柜员处存入106块半年,期末将得106*(1+6%)=112.36白白多得3毛6。这里的实际利率就是12.36%。
- 情景三:年初存入银行100块钱,银行承诺利率12%。更加聪明的人把100块钱存取了三次,就是100*(1+4%)^3=112.4864比聪明的人还多得1毛2分6厘4。此时的实际利率是12.4864%。
【这里银行承诺的就是名义利率,而实际所得的是实际利率。(当然现实生活中的商业银行会把半年利率调低,而不是单纯的用一年的利率除以期数。)而后面两种情景的计息方式为 复利。俗称利滚利。不要以为利滚利就能滚上天,有一个条件限制住了它,叫名义利率。随着存取次数的不断增加,每一个期数内的利率也在逐渐减小。现在把计息次数扩大到∞,实际利率就变成了(1+12%/∞)^∞,而这玩意计算出来就是e^12%。这就是所谓的连续复利。】
四、项目投资分析
金融财务分析里关于项目投资分析判断的方法有很多,比较常用的有净现值、回收期、内部收益率法等。
- 净现值法(Net present value,NPV)
项目投资NPV法判断依据:
1 | def npv_f(rate,cashflows): |
- 回收期法(Payback period)
与净现值法相比,优点是简单易懂,缺点:不考虑时间价值,基准回收期的确定比较主观。
- 内部收益率法(IRR)
IRR:使得净现值为0的贴现率。
1 | def IRR_f(cashflows,interations=10000): |
- 应用实例5:假设贴现率为5%,有A、B两个项目,前期均需投入120万, A项目第一年至五年分别收入10、30、50、40、10万,而项目B第一至五年分别收入30、40、40、20、10万,项目A和B哪个投资价值高?
1 | #分析:如果光从金额看都是投资120万元, |
NPV与IRR比较
NPV:优点:计算相对简便易懂,结果直观,容易理解;局限性:没有消除初始投资额不同的差异,也没有消除投资项目期限的差异。
IRR:优点:跟NPV比较消除了初始投资额不同和项目投资期限的差异,直观反映项目本身的报酬率;缺点是计算量大,可能存在多解或无解。
净现值和内部收益率适用范围不同,净现值适用于互斥方案间的择优,而内部收益率用于独立方案间的择优。
- 应用实例6:有项目C、D,一次性投入均为100万元,其中,C项目前六年无现金流入,第7年现金流入200万;D项目前六年每年现金流入12万,最后一年现金流入112万,选择哪个?
1 | C=[-100,0,0,0,0,0,200] |
五、单利与复利增长
1 | #单利和复利 |
复利就是“利滚利”呀!!!