is possible to calculate Net Present Value with different discount rates per year?

The formular for NPV is: Net Present value formula $$\sum_{t=1}^n= \frac{Rt}{(1+i)^t}$$

where: Rt =Net cash inflow-outflows during a single period t

i=Discount rate or return that could be earned in alternative investments

t=Number of timer periods ​

Which means taking projected cash flow for each year and dividing it by (1 + discount rate). For example this is the formula for a 5 year project and 3% discount rate: $$\sum_{t=1}^n= \frac{Rt}{(1+0.03)^5}$$

This formula has one serious problem: considers that the discount rate does not change throughout the project. Which means for example that the risk free rate dont change in 5 years ( premise totally out of reality ). My question is very simple: is possible to consider differents rates per year for Net Present Value calculation? for example for the first year 3% for the next year 3.4% etc. If i calculate the npv for the first year with 3% of discount rate and sum by the npv for the second year with 3.4% discount rate??

To solve this doubt, I created a cashflow, separate it into two cash flows, calculated the NPV for each separately and added the same discount rate.

# R CODE
library(FinCal)
total_cashflow=c(10,10,10,20,60)
split1_cashflow=c(10,10)
split2_cashflow=c(10,20,60)

#Net present Value for the complete cashflow 3% discout rate
npv(0.03,total_cashflow)
> 100.7468
#Sum of Net present Value for the two split cashflows 3% discout rate
npv(0.03,split1_cashflow)+npv(0.03,split2_cashflow)
> 105.682


Why are the results different?

• Please do not post unsearchable images of equations. Instead, typeset using MathJax. Nov 12, 2020 at 16:56
• i'm sorry, i don't know how to do this. Nov 12, 2020 at 16:59
• Here is a MathJax tutorial: math.meta.stackexchange.com/questions/5020/… Nov 12, 2020 at 17:04
• i edited the post. Nov 12, 2020 at 17:04
• Calculate the principal for the first $n$ years using one rate, then start at that year and calculate for the next $m$ years using the second rate. Nov 12, 2020 at 17:07

If we assume that the first payment is made immediately then your first result is right. It starts at $$t=0$$ and ends at $$t=4$$

$$PV_1=\frac{10}{1.03^0}+\frac{10}{1.03^1}+\frac{10}{1.03^2}+\frac{20}{1.03^3}+\frac{60}{1.03^4}=100.7468 \ \ \color{\limegreen}{\checkmark}$$

The split approach begins for the first two payments at $$t=0$$ and ends at $$t=1$$. For the next three payments it begins once again at $$t=0$$ and ends at $$t=2$$.

$$PV_2=\underbrace{\frac{10}{1.03^0}+\frac{10}{1.03^1}}_{\textrm{split 1}}+\underbrace{\frac{10}{1.03^0}+\frac{20}{1.03^1}+\frac{60}{1.03^2}}_{\textrm{split 2}}=105.682 \ \ \color{red}{\times}$$

This is not the intention of the first approach.

• soo if i want to calculate npv for different discount rates i have to: 10/discount_rate1^0 + 10/discount_rate1^1 + 10/discount_rate1^2 + 20/discount_rate2^3 + 60/discount_rate2^4 ? Nov 15, 2020 at 14:08
• Not really. First of all this question is different from the question in your post. Usually the discount rates are linked to the period. Let´s say you have two periods with the following discount rates and payments: $i_1=0.1,i_2=0.12,R_1=100,R_2=80$. Then the NVP is $$\textrm{NVP}=\frac{100}{1.1}+\frac{80}{1.1\cdot 1.12}.$$ In this example the pyments are made at the end of the year. With the discount of 1.12 of the second payment you get the value of 80 at $t=1$. And then you discount again with $1.1$ and you obtain the NPV of the $80$ (t=0) Nov 15, 2020 at 16:59
• I dont understand in your first answer you say that the error is because the t= 0 occurs again but in this comment you multiply by 1.1 so the t=0 occurs again Nov 15, 2020 at 17:18
• All values of the payments have to be transformed to the present value. At split 2 we have $$\underbrace{\frac{10}{1.03^0}+\frac{20}{1.03^1}+\frac{60}{1.03^2}}_{\textrm{split 2}}$$ Here it is pretended that the payment 10 is made at $t=0$, the payment 20 is made at $t=1$ and the payment 60 is made at $t=2$. But this is not true. They are made at $t=2, t=3$ and $t=4$. That´s why the result is wrong at the end. To get the right result we have to discount every term twice. (continued ...) Nov 15, 2020 at 18:11
• $$\left(\frac{10}{1.03^0}+\frac{20}{1.03^1}+\frac{60}{1.03^2}\right)\cdot \frac1{1.03^2}=\frac{10}{1.03^2}+\frac{20}{1.03^3}+\frac{60}{1.03^4}$$ This is equal to the expression at $\textrm{PV}_1$. Nov 15, 2020 at 18:11