Next: , Previous: Present Value, Up: Financial Functions

8.6.4 Related Financial Functions

The functions in this section are basically inverses of the present value functions with respect to the various arguments.

The b M (calc-fin-pmt) [pmt] command computes the amount of periodic payment necessary to amortize a loan. Thus pmt(rate, n, amount) equals the value of payment such that pv(rate, n, payment) = amount.

The I b M [pmtb] command does the same computation but using pvb instead of pv. Like pv and pvb, these functions can also take a fourth argument which represents an initial lump-sum investment.

The H b M key just invokes the fvl function, which is the inverse of pvl. There is no explicit pmtl function.

The b # (calc-fin-nper) [nper] command computes the number of regular payments necessary to amortize a loan. Thus nper(rate, payment, amount) equals the value of n such that pv(rate, n, payment) = amount. If payment is too small ever to amortize a loan for amount at interest rate rate, the nper function is left in symbolic form.

The I b # [nperb] command does the same computation but using pvb instead of pv. You can give a fourth lump-sum argument to these functions, but the computation will be rather slow in the four-argument case.

The H b # [nperl] command does the same computation using pvl. By exchanging payment and amount you can also get the solution for fvl. For example, nperl(8%, 2000, 1000) = 9.006, so if you place $1000 in a bank account earning 8%, it will take nine years to grow to $2000.

The b T (calc-fin-rate) [rate] command computes the rate of return on an investment. This is also an inverse of pv: rate(n, payment, amount) computes the value of rate such that pv(rate, n, payment) = amount. The result is expressed as a formula like ‘6.3%’.

The I b T [rateb] and H b T [ratel] commands solve the analogous equations with pvb or pvl in place of pv. Also, rate and rateb can accept an optional fourth argument just like pv and pvb. To redo the above example from a different perspective, ratel(9, 2000, 1000) = 8.00597%, which says you will need an interest rate of 8% in order to double your account in nine years.

The b I (calc-fin-irr) [irr] command is the analogous function to rate but for net present value. Its argument is a vector of payments. Thus irr(payments) computes the rate such that npv(rate, payments) = 0; this rate is known as the internal rate of return.

The I b I [irrb] command computes the internal rate of return assuming payments occur at the beginning of each period.