分享

BodieMerton_02 现金流五函数(rate,nepr,pmt,pv,fv,type)

 集思见闻录 2015-09-18

BodieMerton_02 现金流五函数(rateneprpmtpvfvtype

 

(由于本篇内容中用到了excel函数,可以随时看篇尾的“函数介绍章”)

 

1. 现金流时间轴

下图为“现金流时间轴”。负数表示你投入资金(现金从你口袋里流出),正数则表示是你收到(取出)一定量的资金(现金流入你的口袋)。

BodieMerton_02 现金流五函数(rate,nepr,pmt,pv,fv,type) - m_v_priest - 地平线上的星光

上图例子中,

0时间上,你投入100元,在第一期期末取出(收到)20元,在第二期期末取出50元,在第三期期末取出60元。

 

假设你1年后需要1000美元,两年后需要另外2000美元的资金,如果年利率是10%,你现在要存入多少钱进银行,才能达到你的需要?在该例中,我们需要计算这两笔现金流的现值。如下图所示。

BodieMerton_02 现金流五函数(rate,nepr,pmt,pv,fv,type) - m_v_priest - 地平线上的星光

  

你现在面临两个投资选择:

 

PV

I

N

FV

x项目

2500

 

期限一共两年,

1年后它将支付你1000美元,

2年后再付你2000美元。

 

存银行

2500

10%

 

 

第一个选择实际上就是和上图的例子是一样的,其未来带给你的所有现金流的现值,是2562美元。而你现在只要投入2500美元就行了。因此,其净现值NPV=你收到的现金流的现值2562-你投入的现金流的现值2500=62美元。是正的。

 

 

2.年金

在许多情况下,储蓄计划、投资项目或贷款偿付所产生的未来现金流每年都是一样的。我们把这一系列均等的现金流或付款,称为“年金”。“年金”一词,可用于任何等额的现金流。因此,分期偿付贷款或抵押贷款所形成的付款,都可称为“年金”。

→即时年金(先付年金):

收、付时点在每一期的期初。

比如,每年年初存入银行50 000元,2年年末全部提取本息。这里的50 000元,就是先付年金。

普通年金(后付年金):

收、付时点在每一期的期末。

比如,每年年末存入银行50 000元,2年年末全部提取本息。这里的50 000元,就是普通年金。

 

你打算在未来3年中每年储蓄100美元,如果年利率为10%3年后你能积蓄多少钱?

由于你是在年初存,所以这是一个「即时年金」。

FV=(100*1.1^3)+(100*1.1^2)+(100*1.1)

=100*(1.1+1.1^2+1.1^3)

式子中,与100美元相乘的因子(括号中的数),是每年存入1美元、连续3年的终值。一些表格会提供各种利率和期限下的「年金终值因子」。

 

计算器上,用PMT(付款的简写)来表示“定期资金”(也就是上例中的每年储蓄(现金流出)100美元):

PV

n

i

PMT

FV

结果

0

3

10%

100

FV=364.1

(为什么PV=0?详见本篇篇尾“复习章”)

 

在计算年金终值的时候,我们必须弄清它是「普通年金」还是上例一样的「即时年金」。如果是“普通年金”,那么最初的100美元应是在第一年年末投入的。

BodieMerton_02 现金流五函数(rate,nepr,pmt,pv,fv,type) - m_v_priest - 地平线上的星光

如上图所示,在这两种不同的情况下,虽然付款额(投入额、或现金流出额)相同,但“即时年金”的(各期)每一笔付款(投入),比“普通年金”都要多获得1年的利息。

普通年金的FV

=100*(1+1.1+1.1^2)

=331美元

即时年金的FV

=100*(1.1+1.1^2+1.1^3)

=100*(1+1.1+1.1^2)*1.1

=364.1美元

所以:即时年金的终值=普通年金的终值*(1+i)

 

「普通年金」的每年1美元年金的终值与现值公式:

→求每年1美元「普通年金」的终值FV公式:

FV={[(1+i)^n]-1}/i

(原书没有推导过程…)

BodieMerton_02 现金流五函数(rate,nepr,pmt,pv,fv,type) - m_v_priest - 地平线上的星光 

→求每年1美元「普通年金」的现值PV公式:

计算每期1美元、连续n期、利率为i的普通年金现值的公式为:

PV=[1-(1+i)^-n]/i

BodieMerton_02 现金流五函数(rate,nepr,pmt,pv,fv,type) - m_v_priest - 地平线上的星光

 

例如,为了在今后3年中每年能获得100美元,以年利率为10%计算,你现在需要投入多少资金?答案就是这3年现金流的现值。

PV=(100/1.1)+(100/1.1^2)+(100/1.1^3)  =100*[(1/1.1)+(1/1.1^2)+(1/1.1^3)]=248.69美元。

 

中括号里的就是参数i=10%,n=3,pmt=1美元,的普通年金的因子。

100相乘的因子,是1美元的普通年金以年利率10%计算的3年期的现值。

 

PV

n

i

PMT

FV

结果

3

10%

100

0

PV=248.69

excel函数计算:

PV(0.1,3,100,,0)=-248.69

 

 

 

3.有关年金的生活中例子:

如果你现在65岁,正在考虑你是否应该购买保险公司的年金。你只要支付1万美元,保险公司就会在你的余生中每年支付你1000美元。如果你将这笔钱存银行,每年可获得8%的利息。假设你可以活到80岁,你购买年金是否值得?保险公司支付给你的实际利率是多少?要让年金物有所值,你至少应该活到多少岁数才行?

我们来算一算保险年金的NPV

i

n

PMT

PV

FV

8%

80-65=15

-1000

负号表示你是投入钱的,现金流出

0

计算结果:

PV(8%,15,-1000,0,0)= 8,559.48

换句话说,要想今后15年每年获得1000美元,只需要在年利率为8%的银行账户上存入8559.48美元。

因此,投资于保险年金的净现值NPV=8559.48-10000=-1440.52美元。是负数,所以年金不值得投资。

年金未来给你这笔钱的总额的现值,低于你现在投入的本金的现值!

 

要计算你活多少年才能在年金项目中回本,就是要知道n为多少时其净现值NPV=0

我们用NPER函数来算:

i

n

PMT

PV

FV

8%

1000

-10000

0

NPER(RatePmtPvFvType)

结果:

NPER(8%,1000,-10000,0,0)=20.91

所以你必须退休后再多活21年,才值得投资于保险年金。从另一角度讲,如果你能再活21年而不是15年,则保险公司实际上向你提供的就是每年8%的利率(也只不过是和银行持平而已,而没有超过银行)。

 

你要借10万美元买房,A银行给出的贷款条件是:年利率12%,你需要在今后30年中分360次按月付清。那么,你来算算你每月要还贷多少钱?还有一家B银行则向你提供15年的抵押贷款,每月支付1100美元。那么,你从哪家银行贷款更有利?

 

i

n

pmt

pv

fv

A银行

12%

30

10

0

B银行

15

1100

10

0

A银行的PMT是:

PMT(12%/12,360,100000,0,0)= -1,028.61

你每月要还A银行贷款1028.61美元。

 

B银行的利率是:

RATE(15*12,-1100,100000,0,0)= 0.8677%

由于公式中我们是以月为单位的,所以这是月利率。我们还要换算成年利率:

0.8677%*12=0.1041,也就是10.41%(这是单利计算)

这个年利率小于A银行放贷你的利率。所以,B银行15年的抵押贷款对你更有利。

 

 

4. 永续年金

一种重要的特殊类型的年金,叫做「永续年金」。永续年金是指永远持续的一系列现金流。比如,英国19世纪发行的“安慰”债券,它每年按照债券的票面价值支付利息,但没有到期日。

任何一种永续年金都有一个特征:就是你无法计算它的现金流的终值,因为它永远没有结束日,没有结束期限。虽然无法计算它的终值,但是,它具有一个非常明确的、可以计量的现值。

 

→均等永续年金:

设想一下为了今后每年都可以从银行中取得100美元,你现在需要将多少钱存入年利率为10%的银行账户?

如果你存入1000美元,在第1年年末,你账户里就有1100美元,然后你提出100美元,为第2年留下1000美元。显然,只要利率每年都保持在10%,你就可以永远每年提取到100美元。

 

概括的讲,计算均等「永续年金」现值的公式为:

均等永续年金的现值=C/i

C为定期支付的金额(也就是每年提取的100美元),i为利率。这就是普通年金在期限n为无穷时的现值。

→永续增长年金:

也就是每期收到的现金流会以一定的比率增长。

例如,假设你正在考量一项投资,你预计第一年的现金流为1000美元,以后每年会以4%的幅度增加。那么此增长年金的现值是多少呢?

该公式为:PV=C1/(i-g)

C1为第一年的现金流,g为增长率。

(原书对该公式没有推导过程…)

 

仍拿左例,假设贴现率i=9%,则该资产的现值为:

PV=1000/(0.09-0.04)=2万美元

也就是,如果你能以低于2万美元的价格买下该资产,那你才是赚的(你的NPV才是大于零的)。

 

考量一家公司的股票,该股票支付的现金红利能以每年3%的速度增长。下一期的红利将是每股1美元,1年后进行分发。如果你希望获得10%的年收益率,你愿意支付多少钱来购买该公司的股票?

我们来算这个永续增长年金的现值:

PV=1/(10%-3%)=14.29美元

 

 

5.等额还贷中的本息占比变化

房屋抵押贷款和汽车贷款,都可以以等额的分期付款方式偿还。每一次(每一期)偿付中,有一部分是支付未还贷款的利息,还有一部分是偿还本金。每一次偿付后,一部分本金将从未偿还的贷款中扣除。因此,以后每期支付中,利息占总付款额的比例将比前期的所占比越来越低,而本金所占比越来越大。

 

例如,假设你以9%的年利率借入10万美元房屋抵押贷款,并将在今后3年内连本带息分期偿还。每年你要还多少钱呢?

i

n

pmt

pv

fv

9%

3

10

0

PMT(9%,3,100000,0,0)= -39,505.48

每年你要还39505.48美元。

 

贷款10万元,每期(每年)还款39505.48美元

利息

本金

本期还款后的剩余本金

在第1年中,这笔还款额中有多少是支付利息的,多少是偿还本金的呢?

因为i=9%,所以你的第一次支付额中,

利息部分=10*9%

=9000美元。

剩余部分就是本金,

本金=39505.48-9000

=30505.48美元。

在第1次支付后,

还剩下10-30505.48

=69494.52的本金要还。

2年的39505.48美元付款中,有多少属于利息,多少属于偿还的本金呢?

利息

=69,494.52*9%

=6254.51美元

本金

=39,505.48-6254.51

=33250.97美元

2次支付后,你剩下要还得本金

=69494.52-33250.9

7=36243.55美元

第三次,即最后一次偿付包括剩余36243.55美元贷款的本金和利息(即=36243.55*1.09=39505.47

 

下表列出了上述所有的信息,称为抵押贷款的“分期偿付时间表”。它显示了每一次30505.48美元的付款中,支付利息的部分是如何减少的,偿付本金的部分是如何增加的。

BodieMerton_02 现金流五函数(rate,nepr,pmt,pv,fv,type) - m_v_priest - 地平线上的星光

  

 

6.本篇基础知识:Excel函数复习

Excel中的5个财务函数:FVPVPMTNPERRATE,可以相应地依次快捷计算终值FV、现值PV、年金金额(或每期现金流金额)PMT、年限(或期数)n与收益率(每一期的复利率)r

BodieMerton_02 现金流五函数(rate,nepr,pmt,pv,fv,type) - m_v_priest - 地平线上的星光

5个财务函都有5个自变量,如果加上它本身的话(就是6个),排列顺序是固定的:inpmtpvfvtype

除了最后一个参数type外,5个参数中要求哪一个,就在排列顺序中把哪一个去处掉,写成函数头,其他参数顺序则不变:

FV(RateNperPmtPvType)

PV(RateNperPmtFvType)

PMT(RateNperPvFvType)

NPER(RatePmtPvFvType)

RATE(NperPmtPvFvType)

 

Rate=i

Nper=n

Pmt

PV

FV

Type

各期利率

为总投资期,即该项投资的付款期总数

为各期所应支付的金额,其数值在整个年金期间保持不变。通常 pmt 包括本金和利息,但不包括其他费用及税款。

Pmt取为零时,excel就自动默认为处理的是简单现金流量问题(复利问题,即只有一开始的现金流入量Pv,或者最后的现金流入量Fv。没有每一期的年金流

现值,也称为本金。

如果省略 PV,则假设其值为零,并且必须包括 pmt 参数。

终值

数字 0 1,用以指定各期的付款时间是在期初还是期末。

如果现金流发生在年末(或期末),Type就取值0或忽略;如果现金流发生在年初(或期初),Type就取值1

期末为0,期初为1

如果省略 type,则假设其值为0

当其中的自变量PvFv取为零时,excel就自动默认为处理的是年金问题。当然,计算年金问题时,其中的自变量PvFv都可以不取为零:Pv是指一开始的现金流入量,Fv是指最后的现金流入量。例如:RATE(364,-1001000)4%

 

FV函数,复利终值的计算:

FVinpmtpvtype

Excel函数规定:支出的款项(如向银行存入款项),用负数表示。收入的款项(如股息收入),用正数表示。

→普通复利终值的计算:

例如:某人将10000元投资于一项事业,年报酬率为6%,3年后的复利终值为:

FV6%,3,,-100000)=11910(元)

这不是年金,这是普通复利计算,所以第三个参数pmt忽略。最后一个0是指普通年金,而非即时年金。)

→普通年金终值的计算:

FV(i,n,pmt,,0

例如:某人每年存入银行10000元、年利率为10%,计算第3年年末可以从银行取得的本利和(每年年末存入银行)为:

FV10%,3-10000,,0)=33100(元)

由于这是年金,所以第四个参数pv忽略

 

→预付年金(即时年金)终值的计算:

FV(i,n,pmt,,1

仍以上例为例,计算预付年金终值(每年年初存入银行),则:

FV10%,3-10000,,1)=36410(元)

tom每年末存入(很明显这是普通年金)银行3000元,假设利率为5%,则6年后他一次能取出多少钱?

=FV(5%,6,3000,,0)=-20405.74。负数表示支取。

如果tom每年初存入(这就是即时年金)银行3000元,假设利率为5%,到第6年末一次性能取出多少钱?

=FV(5%,6,3000,,1)=-21426.03

 

 

PV函数,复利现值的计算:

PVinpmtfvtype

普通复利现值的计算:

某人拟在5年后获得本利和10000元,投资报酬率为10%,他现在应投入的金额为:

PV10%,5,,100000)=-6209(元)

普通年金现值的计算:

某人要购买一项养老保险,购买成本为60000元,该保险可以在20年内于每月末回报500元、投资报酬率为8%,计算这笔投资是否值得。

PV0.081212×20500,,0)=—59777(元)

由于养老保险未来总收入的现值(59777元)小于现在实际支付(投入)的现值(60000元),npv是负的。因此,这项投资不合算。

 

预付(即时)年金现值的计算:

6年时间分期付款购物,每年预付200元。设银行利率为10%,该项分期付款相当于一次现金交付的购价是多少?

PV10%,6200,,1)=-958

 

 

PMT(Payment)函数:是基于固定利率及等额分期付款方式,返回贷款的每期付款额。

PMTinpvfvtype

In的单位应该一致,例如,同样是4年期年利率为 12% 的贷款,如果按月支付,i应为 12%/12n应为 4*12。如果是按年支付,i应为 12%n 4

注意:如果要计算一笔款项的总支付额,请用 PMT 返回值乘以 n

 

例如:

·返回需要 10 个月付清的年利率为 8% $10,000 贷款的月支付额:

=PMT(8%/12,10,10000,,0) = -$1,037.03

对于上例同一笔贷款,如果支付期限在每期的期初,支付额应为:

=PMT(8%/12,10,10000,0,1) =-$1,030.16

·贷款月利率为0.51%,贷款期为10年即120月,贷款额为10000元,付款金额每月相等,求每月还款额:

=PMT(0.51%,120,10000,,0)=-111.62,也就是每月需支出111.62元。

·如果以 12% 的利率贷出 $5,000,并希望对方在 5 个月内还清,下列公式将返回每月所得款数:

=PMT(12%/12,5,-5000,,0)= $1,030.20

 

除了用于贷款之外,函数 PMT 还可以计算出别的以年金方式付款的支付额。例如:如果需要以按月定额存款方式在 18 年中存款 $50,000(也就是18年后账户上的总额达到5万),假设存款年利率为 6%,则函数 PMT 可以用来计算月存款额:

=PMT(6%/12,18*12,0,50000,0)=-$129.08 (这是在月末存的?)

注意:为什么公式中6%要除以1218年要乘以12个月?而不是直接以6%的年利率与18年来算?因为我们要求的是每月存款额,而不是每年存款额!所以既然求的是以“月”为单位,所以我们公式中也要输入以“月”为单位的数字。

即向 6% 的存款帐户中每月存入 $129.0818 年后可获得 $50,000

 

·存款方零存整取

某厂欲积累一笔存款,用于5年后买一台新设备,预计5年后的价格为500万元。假设银行利率为3.33%,则该厂每年年末至少要存入多少钱?

i

n

pv

fv

type

3.33%

5

0

公式中pv参数为0,因为首年初未存款,存款是在年末的。

500

0

因为是年末存款

PMT(3.33%,5,0,5000000,0)= -935,580.64

BodieMerton_02 现金流五函数(rate,nepr,pmt,pv,fv,type) - m_v_priest - 地平线上的星光

  

·放贷方整取,借款方零存

某投资项目贷款200万元,银行5年内每年末等额收回全部贷款,已知贷款年利率为6.12%,那么项目每年的净收益不应少于多少?

i

n

pv

fv

type

6.12%

5

200

首年贷款金额

0

5年后还清贷款

0

因为是年末还款

PMT(6.12%,5,2000000,0,0)= -476,343.80

结果为负值,这是因为这是一笔还款,站在贷款人的角度就是现金流出。

公式中fv参数为0,即表示最终还清贷款。

BodieMerton_02 现金流五函数(rate,nepr,pmt,pv,fv,type) - m_v_priest - 地平线上的星光

  

 

RATE函数

RATE(NperPmtPvFvType)

·有一个零存整取项目,存期为3年,每个月月初存0.1万元,3年以后可得4万元,则该项目的月复利率为:

=RATE(n36pmt0.1pv0fv4,期初1)0.562%

上面的是月利率,其年复利率为:

IRR(10.562%)^1216.95557%

 

·Peter10年前,以10万元买了一个基金,现在该基金净值15万元,请问这样相当于多少的年报酬率?

=RATE(10,,-100000,150000,1)=4.138%

 

·Peter10年前,以10万元买了一个基金,而且每月定期定额2,000元买相同之基金,现在该基金净值65万元,请问这样相当于多少的年报酬率?

=RATE(10*12,-0.2,-10,65,1)=0.7763%

这是月利率。年报酬率必须再乘上12=0.7763%*12 =9.3155%

 

·Susan向银行贷款100万元,期限20年,每月本息摊还6,600元,问这贷款年利率是多少?

每月为一期,总共240(NPER =240),期初拿到100(PV=1,000,000),每期缴款6,600(PMT=-6,600),期末还清(FV = 0)

 =RATE(20*12,-0.66,100,0,0)=0.4167%

这是月利率,换算成年利率=0.4167%*12 =5.0008%

 

 

Nper函数

·一个设备的价格为30万元,准备对它进行分期付款,每个月月底支付1万元,商定的月复利率为0.5%,则需要付款的次数为:

=NPER(0.5%,PMT-1,PV30,FV0,0)32.585次。

 

 

⑥净现值的计算:

NPVivalue1value2,…)

i代表贴现率;

value1value2,…代表支出和收入的129个参数,时间均匀分布在每期末出现。NPV按次序使用value1value2,…来注释现金流量的次序。

·某公司准备购置一台新设备,价款为40000元,以扩大生产规模,项目周期为5年,各年的净现金流入分别为150001200013000180008000,若资金成本为10%,计算这一投资项目的净现值,并说明是否可行。

NPV0.1-40000150001200013000180008000)=9620(元)

净现值大于0,所以项目可行。

 

网上有人提了一个问题(如下):关于NPV函数的公式,可以有两种输入形式:

——————————

如果现金净流量为:

0        1      2       3 

-100     30     40      50 

折现率为15%,那么净现值的计算:

1=npv(0.15,-100,30,40,50) = -9.38

2=npv(0.15,30,40,50)-100 = -10.79

该网友查看了很多excel的书籍,有的书用第一个公式,有的书用第二个公式,他疑惑到底用哪个?

——————————

关于这个问题,下文(包括我的理解)应该解释了这一点:

NPV 函数中的Value1, value2, ...在时间上必须具有相等间隔,并且都发生在期末。

NPV 假定投资开始于 value1 现金流所在日期的前一期,并结束于最后一笔现金流的当期。如果第一笔现金流发生在第一个周期的期初,则第一笔现金必须添加到函数 NPV 的结果中(也就是NPV()-初始投资),而不应包含在 values 参数中(不放在NPV的括号中)(这句话解释了上面网友的疑惑)。

举例:

小张现投资¥200,000 开一家电器经销店,年贴现率(相当于通货膨胀率或其他投资的收益率)以及预期从今年开始(也就是今年投资,今年就第一年现金流入。所以这2万元的初始投资额不能放在NPV的括号中当作value参数,而只能放在“NPV()-初始投资”这种形式上),前五年每年收益情况如下表所示:

BodieMerton_02 现金流五函数(rate,nepr,pmt,pv,fv,type) - m_v_priest - 地平线上的星光

  

NPV函数在两个重要方面不同于PV函数:

PV函数假定相同的支付额(年金PMT),而NPV则允许可变的支付额。

PV函数允许支付和接收发生在周期开始或者结束,而NPV函数假定所有支付和接收都均等分布,发生在周期结束。如果投资费用必须在前面全部付清(不算作以后的现金流均等期限内),则不应将此项费用作为value参数之一,而应当从NPV函数得出结果后,再减去它。另一方面,如果该费用必须在第一期结束时付清(把它算在了均等期限里面了),则应当将它作为第一个负value参数。

 

 

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多