MathU for iPhoneCreative Creek, LLC

MathU™ RPN 2.2 for iPhone
Documentation

Financial Functions

Contents

The financial functions

The financial functions are governed by the equation,

PV*(1+i)N + PMT/i*((1+i)N−1) + FV = 0

This equation is used when the annuity mode (BEGIN/END preference) is set to ordinary annuity (payments due at the end of the period: END). When the annuity mode is annuity due (payments due at the beginning of the period: BEGIN) then PMT in this equation is modified to be PMT * (1 + i).

The financial functions have two modes: input mode and calculation mode. MathU RPN is in input mode if a number has been keyed into the calculator or any non-financial functions have been executed. Executing one of the main financial functions

N, i, PMT, PV, or FV

stores the displayed value in the associated financial register. MathU RPN is in calculation mode after any financial functions have been executed and before any other functions that change the stack are executed. The result of a financial computation is pushed onto the stack:

Most of the time this should behave as you would expect. However, if for some reason MathU RPN stores a value when you intended to compute one, simply execute the financial function again to obtain the desired result.

Key Function Description Details
N N Number of periods Input mode: Store displayed value as N.

Calculation mode: Compute N. The value returned is always an integer. The last payment can be computed using the keystrokes FV RCL PMT +.

12x   Number of periods (annual basis) Store 12 times displayed value as N.

This function is provided as a convenience when there are twelve periods per year.

i interest Interest rate per period Input mode: Store displayed value as i (in percent).

Calculation mode: Solve for i. If the solver doesn't converge an error '-e-' will be displayed.

12÷   Interest rate (annual basis) Store displayed value divided by 12 as i (in percent).

This function is provided as a convenience when there are twelve periods per year.

PMT pmt Payment per period Input mode: Store displayed value as PMT.

Calculation mode: Compute PMT.

PV pv Present value Input mode: Store displayed value as PV.

Calculation mode: Compute PV.

FV fv Future value (or balloon) Input mode: Store displayed value as FV.

Calculation mode: Compute FV.

STO fn sto Store into financial register fn can be N, i, PV, PMT or FV.
RCL fn rcl Recall financial register fn can be N, i, PV, PMT or FV.
AMORT amort Amortization table values

Computes the interest and principle for a series of x payments. The amount applied to the principle is pushed into the y register and the total interest is pushed into the x register. The number of payments just amortized is in the z register.

The financial PV register is updated to be the remaining principal balance and the financial N register is updated to be the total number of payments amortized so far.

AMORT relies on the financial registers to define the loan to be amortized. It uses the value of the x register as the number of payments to amortize. Start the amortization by setting the financial N register to zero and PV to the initial loan amount. See below for more info.

CF0 CF0 Initial cash flow Define the initial cash flow.
IRR irr Internal rate of return

Compute the internal rate of return for the series of cash flows stored in CF0 and CFj registers. Pushes the interest rate where the net present value is approximately zero onto the x register and stores it in the financial i register.

The IRR computation is iterative and may not converge to a solution. Depending on the cash flows entered into the cash flow registers, it is possible that the IRR function can have a single solution, multiple solutions or no solution. If not solution is found, an error "-e-" is displayed.

NPV npv Net present value Compute the net present value for the series of cash flows stored in the CF0 and CFj registers subject to a discount rate defined by the financial i register. Pushes the net present value onto the x register and stores it in the financial PV register.
CLFIN clfin Clear financial registers Clear financial registers and set payment due to END (ordinary annuity).

Cash Flow Convention

Financial problems can be thought of as a series of cash flows. For example a mortgage consists of a large positive cash flow (the loan amount) followed by a series of monthly negative cash flows (the payments) with possibly a final negative cash flow at the end (the balloon payment). The diagram below illustrates this situation.

Ordinary annuity cash flow diagram

Positive cash flows (amounts you receive) are shown as upward pointing arrows. Negative cash flows (amounts you pay) are shown as downward pointing arrows. The horizontal axis of the diagram is time, with time increasing to the right. The time between the equally spaced payments is called the period.

For the problem to be solvable with MathU RPN, there must be at least one cash flow in each direction. It is always possible to add a present value or future value cash flow to meet this requirement. Think about your problem to determine which is more appropriate (see example 4 below).

Time Value of Money (TVM) Examples

Example 1: Suppose you are interested in determining the payment for a car loan of $18,500 at 7.25% interest for 5 years. The key strokes to solve this problem using MathU RPN are

  1. CLFIN to reset the financial registers (since the values in the registers are maintained between sessions with MathU RPN it is a good idea to reset the financial registers before each use of the financial functions).
  2. 5 ENTER 1 2 × N to set the number of periods (in months)
  3. 7 . 2 5 ENTER 1 2 ÷ i since the interest per month is 7.25/12 %
  4. 1 8 5 0 0 PV to set the principal or present value of the loan
  5. PMT to compute the payment per period (ans: $-368.51). The value is negative because the payments are made in the opposite cash flow direction from the principle cash flow.

Note: The convenience functions 12x and 12÷ could have been used in steps 2 and 3 to replace the keystrokes

1 2 × N and 1 2 ÷ i

respectively.

Example 2: What is the payment if you are willing to pay a balloon payment of $2,000 at the end of the loan?

  1. 2 0 0 0 CHS FV Set the value $-2,000 as the FV (balloon) for the loan. The value is negative because this is money you will pay out.
  2. PMT to compute the new payment per period (ans: $-340.75)

Example 3: How much interest do you end up paying with the balloon payment?

  1. N PMT × FV FV + PV PV + to compute the total payments minus the loan value
    (ans: $-3,945.17). Note that FV and PV had to be pressed twice since the first time stored the total payments into FV or PV.

Example 4: To compute the effective interest rate in an IRA account that you put $2000 into each year, you will need to enter the current value of the account as a positive future value (FV) even though you haven't sold the assets in the account. To make the example concrete, suppose that you started your IRA in 1985 with a $10,000 rollover and that the value in the account is $80,000 in the year 2001.

  1. CLFIN to reset the financial registers
  2. 2 0 0 1 ENTER 1 9 8 5 N to set the number of periods (in years)
  3. 1 0 0 0 0 CHS PV to set the starting value of the account. The value is negative since you added this value to the account with the rollover.
  4. 2 0 0 0 CHS PMT to set the annual contribution.
  5. 8 0 0 0 0 FV to set the current value of the account. The value is positive since this is the money you would receive if you sold all the assets in the account.
  6. i to compute the effective annual rate of return in the account (ans: 6.39%)

Odd period computations

When N is not an integer MathU RPN treats the fractional part of N as an intial odd period. The odd period is the fraction of a period between the date interest begins to accrue and the beginning of the first payment period. The interest during this time is computed using the simple interest formula:

odd period interest = interest rate per period * odd fraction of a period

Odd period computations taken into account when computing i, PV, PMT and FV. The computation of N always rounds up to the nearest whole period so to take advantage of the odd period computations, you must explicitly store a non-integer value in N.

Because the number of periods is rounded up, the final payment may be smaller than the previous N-1 payments.

Example 5: You take out a 3 year loan for $2,000 at 5% interest on Apr 3, 2001 but the first loan period doesn't start until Apr 15, 2001. The first 15-3 = 12 days are an odd period. Simple interest is accrued during those first few days. Compute the monthly payment.

  1. For comparison purposes, set up the loan without an odd period to start. Use CLFIN to initialize the financial registers.
  2. 2 0 0 0 PV set the amount of the loan
  3. 5 12÷ sets the interest rate per month
  4. 3 12× defines the period of the loan (without the odd period)
  5. PMT computes the payment without taking into account the odd period. Ans: -59.94
  6. Although not necessary for this particular example, let's use the ΔDYS function to compute the number of days in the odd period.
  7. 4 . 0 3 2 0 0 1 ENTER (assuming the date format setting is M.DY)
  8. 4 . 1 5 2 0 0 1 ΔDYS Ans: 12
  9. 3 0 ÷ computes the fractional odd period using a 30 day per month basis.
  10. RCL N + Ncomputes and stores the new number of periods including the odd period. Ans: 36.4
  11. Finally determine the loan payment PMT with the odd period. Ans: -60.04.

Amortization

The entries in an amortization table can be computed using AMORT.

Example Amortization Table (based on Example 1)
Period
Interest
Principal
Payment
Remaining Principal
1
$111.77
$256.74
$368.51
$18,243.26
2
$110.22
$258.29
$368.51
$17,984.97
3
$108.66
$259.85
$368.51
$17,725.12
4
$107.09
$261.42
$368.51
$17,463.70

The AMORT function computes the amount paid against the principal and the amount of interest paid for a series of payments. AMORT bases its calculation on the values in the financial registers. To compute the amortization table values:

  1. Clear the financial registers via CLFIN
  2. Set the number of digits to round the result by changing the Digits preference. For dollars and cents, a Digits setting of 2 is normally used.
  3. Enter the amount of the loan (principal value) using PV
  4. Enter the interest rate using i
  5. Enter the payment using CHS PMT (following the cash flow convention)
  6. Make sure the annuity (payments due) mode is set to BEG for annuity due loans or END for ordinary annuity loans using the preferences.
  7. Enter the number of payments to amortize and execute AMORT. The amount paid in interest is placed in the x register.
  8. Execute x<>y to view the amount paid against the principal.
  9. Execute RCL PV to view the remaining principal balance.
  10. Perform steps 7-10 to compute the each set of values in the amortization table.

The AMORT function places the amount paid in interest in the x register, the amount paid against the principal in the y register and the number of payments just amortized in the z register:

Amortization stack picture

In addition, the financial N register and the financial PV register is updated to contain the total number of periods amortized so far and the remaining balance. Because of this, the rows in the amortization table can be computed by repeatedly executing AMORT.

Note: The AMORT function automatically rounds its results based on the digits preference setting. This could result in answers that differ slightly (by a few cents) from the amortization performed by your lending institution (since they might be using a different rounding rule).

Example 6: Compute the values shown in the Example Amortization Table (using the loan described in Example 1).

  1. CLFIN to reset the financial registers.
  2. 1 8 5 0 0 PV to enter the loan amount (principal value).
  3. 7 . 2 5 12÷ to enter the loan annual interest rate per month.
  4. 5 ENTER 12× to set the number of periods (in months)
  5. PMT to compute the payment per period. Ans:
  6. 0 N to get ready for the amortization. Also set the Digits preference to 2.
  7. 1 AMORT to compute the interest for the first payment. Ans: -111.77 (the value is negative since the interest is paid out)
  8. x<>y to display the amount paid toward the principal. Ans: -256.74 (the value is negative since this the principle paid)
  9. RCL PV to display the amount remaining on the loan. Ans: 18,243.26
  10. Repeat steps 7-9 for the next row of the table. Ans: -110.22, -258.29 and 17,984.97
  11. Repeat steps 7-9 for the next row of the table. Ans: -108.66, -259.85 and 17,725.12
  12. Repeat steps 7-9 for the last row of the table. Ans: -107.09, -261.42 and 17,463.70

Discounted cash flows

MathU RPN includes functions to compute the Internal Rate of Return (IRR) and Net Present Value (NPV) of a series of cash flows. The cash flows must occur at regular intervals but the value of each cash flow can be different. You use the cash flow functions CF0, CFj and Nj to define them.

Unequal cash flows diagram

Positive cash flows (amounts you receive) are shown as upward pointing arrows. Negative cash flows (amounts you pay) are shown as downward pointing arrows. The horizontal axis of the diagram is time, with time increasing to the right. The time between the equally spaced payments is called the period.

Up to 20 cash flows can be entered. Bigger problems can be solved if there are repeated equal cash flows. In this case, the number of consecutive cash flows (Nj) is entered just after entering the cash flow (CFj). Up to 20 distinct cash flow amounts can be entered.

Repeated cash flows

For the problem to be solvable with MathU RPN, there must be at least one cash flow in each direction. Not all cash flow situations have a solution. Depending on the values and the timing of the cash flows there could be a single solution, multiple solutions, or no solution. If no solution is found, an error "-e-" is displayed.

Entering Cash Flows

To enter cash flows:

  1. Clear the financial and cash flow registers using CLREG
  2. Enter the initial cash flow value and then execute CF0 to store the value.
  3. For each cash flow, enter the value and then execute CFj to store the value. If the cash flow is repeated, enter the number of repeated cash flows and execute Nj to store the count.
  4. Perform step 3 for all the remaining cash flows.

The cash flows are stored into registers 0 through 19. If there is a 20th cash flow, it is stored into the financial FV register. The counts are stored in hidden registers in the calculator. The total number of cash flows is stored in the financial N register.

Reviewing The Cash Flows

You can review the cash flow counts and their values by storing the number of the cash flow to be reviewed in the financial N register (STO N) and executing RCL Nj and RCL CFj. Each time RCL CFj is executed, the financial N register is decremented. Repeated executions of RCL CFj will display each cash flow in reverse order. Remember to reset the financial N register to the total number of cash flows before executing NPV or IRR.

You can also access the cash flows by directly recalling them from the storage registers using RCL n or RCL .n

Internal Rate of Return

The internal rate of return (IRR) is the discount rate where the net present value is zero. MathU RPN computes the internal rate of return based on the cash flows entered via CF0, CFj and Nj (see Entering Cash Flows). To compute the IRR, enter the cash flows and then execute the IRR function. The interest rate in percent per period is pushed onto the stack and also stored in the financial i register.

Example 7: Suppose the six cash flows depicted in the following diagram illustrate the cash flows possible from an investment property. An initial investment in the amount of $-10,000 (CF0) is used to buy the property which nets $4,000 (CF1), $2,000 (CF2), $3,500 (CF3), $6,000 (CF4) and $4,000 (CF5) for 5 years. What is the internal rate of return (IRR)?

Unequal cash flow example

  1. Clear the financial and cash flow registers with CLREG
  2. Enter the initial cash flow: 1 0 0 0 0 CHS CF0
  3. Enter the first cash flow: 4 0 0 0 CFj
  4. Enter the second through fifth cash flows:
    • 2 0 0 0 CFj
    • 3 5 0 0 CFj
    • 6 0 0 0 CFj
    • 4 0 0 0 CFj
  5. Check the total number of periods: RCL N. ans: 5
  6. Compute the internal rate of return: IRR. ans: 25.1837% per year.

Net Present Value

The net present value (NPV) is the discounted value of a series of cash flows in the future. MathU RPN computes the internal rate of return based on the cash flows entered via CF0, CFj and Nj (see Entering Cash Flows). The discount rate used is taken from the financial i register. Once the cash flows have been entered, enter the desired discount rate in percent using STO i and then execute NPV. The net present value is pushed onto the stack and also stored in the financial PV register.

If the net present value is positive, then the series of cash flows produce a better return than the assumed discount rate. Conversely, a negative net present value indicates that the return is worse than the assumed discount rate. Use IRR to compute the actual discount rate implied by the series of cash flows.

Example 8: Suppose that you wish to compare two investments. The first investment opportunity is described in Example 6. The second investment opportunity is expected to return a minimum of 10% over the next 5 years. To determine which investment is better, compute the NPV of the first investment using the discount rate possible with the second investment. If the NPV is positive, the first investment is better. If the NPV is negative, the second investment will provide better returns.

  1. Clear the financial and cash flow registers using CLREG
  2. Enter the cash flows from Example 6 into the calculator (steps 2-4 of Example 7)
  3. Enter the discount rate to use and then execute i
  4. Compute the Net Present value by executing NPV. Ans: 4950.68. Since this value is positive, the first investment is better than the second investment.