calc: Present Value
8.6.3 Present Value
-------------------
The ‘b P’ (‘calc-fin-pv’) [‘pv’] command computes the present value of
an investment. Like ‘fv’, it takes three arguments: ‘pv(RATE, N,
PAYMENT)’. It computes the present value of a series of regular
payments. Suppose you have the chance to make an investment that will
pay $2000 per year over the next four years; as you receive these
payments you can put them in the bank at 9% interest. You want to know
whether it is better to make the investment, or to keep the money in the
bank where it earns 9% interest right from the start. The calculation
‘pv(9%, 4, 2000)’ gives the result 6479.44. If your initial investment
must be less than this, say, $6000, then the investment is worthwhile.
But if you had to put up $7000, then it would be better just to leave it
in the bank.
Here is the interpretation of the result of ‘pv’: You are trying to
compare the return from the investment you are considering, which is
‘fv(9%, 4, 2000) = 9146.26’, with the return from leaving the money in
the bank, which is ‘fvl(9%, 4, X)’ where X is the amount of money you
would have to put up in advance. The ‘pv’ function finds the break-even
point, ‘x = 6479.44’, at which ‘fvl(9%, 4, 6479.44)’ is also equal to
9146.26. This is the largest amount you should be willing to invest.
The ‘I b P’ [‘pvb’] command solves the same problem, but with
payments occurring at the beginning of each interval. It has the same
relationship to ‘fvb’ as ‘pv’ has to ‘fv’. For example ‘pvb(9%, 4,
2000) = 7062.59’, a larger number than ‘pv’ produced because we get to
start earning interest on the return from our investment sooner.
The ‘H b P’ [‘pvl’] command computes the present value of an
investment that will pay off in one lump sum at the end of the period.
For example, if we get our $8000 all at the end of the four years,
‘pvl(9%, 4, 8000) = 5667.40’. This is much less than ‘pv’ reported,
because we don’t earn any interest on the return from this investment.
Note that ‘pvl’ and ‘fvl’ are simple inverses: ‘fvl(9%, 4, 5667.40) =
8000’.
You can give an optional fourth lump-sum argument to ‘pv’ and ‘pvb’;
this is handled in exactly the same way as the fourth argument for ‘fv’
and ‘fvb’.
The ‘b N’ (‘calc-fin-npv’) [‘npv’] command computes the net present
value of a series of irregular investments. The first argument is the
interest rate. The second argument is a vector which represents the
expected return from the investment at the end of each interval. For
example, if the rate represents a yearly interest rate, then the vector
elements are the return from the first year, second year, and so on.
Thus, ‘npv(9%, [2000,2000,2000,2000]) = pv(9%, 4, 2000) = 6479.44’.
Obviously this function is more interesting when the payments are not
all the same!
The ‘npv’ function can actually have two or more arguments. Multiple
arguments are interpreted in the same way as for the vector statistical
functions like ‘vsum’. Single-Variable Statistics. Basically,
if there are several payment arguments, each either a vector or a plain
number, all these values are collected left-to-right into the complete
list of payments. A numeric prefix argument on the ‘b N’ command says
how many payment values or vectors to take from the stack.
The ‘I b N’ [‘npvb’] command computes the net present value where
payments occur at the beginning of each interval rather than at the end.