Tutorials › Exam FM - Financial Mathematics › Backward Recursion for Piecewise Annuity Values

Exam FM · Interest and Annuity Applications · Tutorial 911 of 998

Backward Recursion for Piecewise Annuity Values

Build a piecewise annuity value from its final cash flow backward, using the correct rate for each period and handling stage boundaries without double counting.

Advanced 11 min read

What You'll Learn

  • Define a value at each payment date that excludes cash flows already paid.
  • Derive the one-period backward valuation recursion from the accumulation equation.
  • Carry a boundary value correctly from one interest-rate stage into the preceding stage.
  • Include terminal amounts and skipped payments without shifting their dates.
  • Check a backward calculation by accumulating values forward through each period.
  • Identify the error caused by applying one stage’s rate across the entire payment stream.

Why Work Backward Through the Stages?

A payment stream that crosses interest-rate changes cannot generally be valued by applying one annuity factor to every payment. Each payment must be discounted using the rates that apply between its payment date and the valuation date. A backward recursion handles this systematically: start at the final date, then move one period at a time toward the present. At each step, combine the payment due at the next date with the value, at that date, of all later payments.

This method is useful when a stream has several rate stages, irregular payment amounts, skipped payments, or a terminal amount. It is aligned with the SOA Exam FM (Financial Mathematics) syllabus. The method does not require a closed-form annuity formula for the entire stream.

Definition: Let \(C_t\) be the cash flow paid at the end of period \(t\), and let \(i_t\) be the effective interest rate for the period from time \(t-1\) to time \(t\). Define \(V_t\) as the value at time \(t\) of all cash flows strictly after time \(t\). If the final cash flow occurs at time \(N\) and there are no later payments, set \(V_N=0\). The backward recursion is
$$ V_{t-1}=\frac{C_t+V_t}{1+i_t}, \qquad t=N,N-1,\ldots,1. $$

The timing convention matters. The payment \(C_t\) is made at time \(t\), so it is included when calculating \(V_{t-1}\), but excluded from \(V_t\), which represents cash flows strictly after time \(t\). If an ordinary payment and a terminal amount are both paid at time \(N\), combine them into \(C_N\). This avoids counting either amount twice.

Why the Recursion Works

Over one period, an amount at time \(t-1\) accumulates by the factor \(1+i_t\) to time \(t\). At time \(t\), the cash available from the value at time \(t-1\) must cover both the payment \(C_t\) and the value \(V_t\) of later cash flows. Equating those amounts and solving for the earlier value gives the recursion.

$$ (1+i_t)V_{t-1}=C_t+V_t \quad\Longrightarrow\quad V_{t-1}=\frac{C_t+V_t}{1+i_t}. $$

Applying this equation repeatedly gives the value at time 0. To see the resulting expression, substitute the recursion for \(V_1\) into that for \(V_0\), then continue in the same way:

$$ V_0 =\frac{C_1}{1+i_1} +\frac{C_2}{(1+i_1)(1+i_2)} +\cdots +\frac{C_N}{\prod_{r=1}^{N}(1+i_r)} =\sum_{t=1}^{N} C_t\prod_{r=1}^{t}\frac{1}{1+i_r}. $$

Each cash flow is discounted through exactly the periods between time 0 and its payment date. If the rate is constant within a stage, the same recursion applies there period by period. At a stage boundary, the value arriving from the later stage is simply the continuation value \(V_t\) used in the preceding period’s calculation; it is not a new payment.

1
Set the terminal value.
At the final payment date \(N\), set \(V_N=0\) if all cash flows at that date have been included in \(C_N\).
2
Identify the rate for the period.
For the step from time \(t-1\) to time \(t\), use \(i_t\), the effective rate applying to that period.
3
Combine and discount.
Add \(C_t\) to \(V_t\), then divide by \(1+i_t\) to obtain \(V_{t-1}\).
4
Repeat and check.
Continue to the desired valuation date. Check the result by accumulating each value forward and subtracting the payment at each date.

Worked Examples

Worked Example: Two Rate Stages and Unequal Payments

A fund will pay \$100 at time 1, \$100 at time 2, \$200 at time 3, and \$200 at time 4. The effective rate is 5% per period for periods 1 and 2, then 10% per period for periods 3 and 4. Find the value at time 0. Assume the payments occur at period-end and there are no other cash flows.

Method. Start from \(V_4=0\) and apply the backward recursion. The rates for periods 4 and 3 are 10%; those for periods 2 and 1 are 5%.

$$ \begin{aligned} V_4&=0,\\ V_3&=\frac{200+V_4}{1.10} =\frac{200}{1.10} =181.8181818\ldots,\\ V_2&=\frac{200+V_3}{1.10} =\frac{200+181.8181818\ldots}{1.10} =347.1074380\ldots,\\ V_1&=\frac{100+V_2}{1.05} =\frac{100+347.1074380\ldots}{1.05} =425.8166076\ldots,\\ V_0&=\frac{100+V_1}{1.05} =\frac{100+425.8166076\ldots}{1.05} =500.7777215\ldots. \end{aligned} $$

The value at time 0 is \$500.78, rounded to the nearest cent. To check, accumulate forward and subtract each payment: \(500.7777215\ldots(1.05)-100=425.8166076\ldots\); multiplying that result by 1.05 and subtracting 100 gives \(347.1074380\ldots\). The next step is \(347.1074380\ldots(1.10)-200=181.8181818\ldots\), and the final step gives \(181.8181818\ldots(1.10)-200=0\), as required. This check confirms that each period’s rate and payment have been applied in the correct order.

Common mistake avoided: using the 5% rate for payments in periods 3 and 4 would overvalue those later payments. The rate is selected by the period being crossed, not by the date at which the calculation starts.

Worked Example: Carrying a Boundary Value and Including a Terminal Amount

A hypothetical contract pays \$80, \$100, \$120, \$140, and \$160 at times 1 through 5, respectively. The effective rate is 4% per period in periods 1 and 2, 8% in periods 3 and 4, and 5% in period 5. In addition to the \$160 payment, a terminal amount of \$300 is paid at time 5. Find the value at time 0.

Method. Combine the two time-5 amounts, so \(C_5=160+300=460\). Then recurse backward. In particular, the value at the time-4 boundary includes the discounted time-5 cash flow, and is carried into the calculation for time 3.

$$ \begin{aligned} C_5&=460,\qquad V_5=0,\\ V_4&=\frac{460+V_5}{1.05} =438.095238095\ldots,\\ V_3&=\frac{140+V_4}{1.08} =535.273368607\ldots,\\ V_2&=\frac{120+V_3}{1.08} =606.734600562\ldots,\\ V_1&=\frac{100+V_2}{1.04} =679.552500540\ldots,\\ V_0&=\frac{80+V_1}{1.04} =730.338942827\ldots. \end{aligned} $$

The value at time 0 is \$730.34, rounded to the nearest cent. For a boundary check, move forward from \(V_3\): \(535.273368607\ldots(1.08)-140=438.095238095\ldots=V_4\). Then \(V_4(1.05)=460\), exactly the combined payment due at time 5. Moving forward through periods 1 and 2 likewise recovers \(V_1\) and \(V_2\) after subtracting the payments at those dates.

The terminal amount is included at its actual payment date, not treated as if it were paid at time 0 or time 4. The boundary value is a valuation of future cash flows, not an additional cash flow to add again when crossing that boundary.

Worked Example: A Skipped Payment and a Terminal Payment

A stream has payments of \$0, \$50, \$100, and \$125 at times 1 through 4. A separate terminal amount of \$250 is also paid at time 4. The effective rate is 0% per period for periods 1 and 2, and 25% per period for periods 3 and 4. Find the value at time 0.

Method. The skipped payment is recorded as \(C_1=0\); it does not shift later payments. Combine the time-4 cash flows to get \(C_4=125+250=375\), and work backward:

$$ \begin{aligned} V_4&=0,\\ V_3&=\frac{375+V_4}{1.25}=300,\\ V_2&=\frac{100+V_3}{1.25}=320,\\ V_1&=\frac{50+V_2}{1.00}=370,\\ V_0&=\frac{0+V_1}{1.00}=370. \end{aligned} $$

The value at time 0 is \$370.00. A direct check gives the same result: the \$50 payment at time 2 has no discounting; the \$100 payment at time 3 is discounted one period at 25%, giving \$80; and the \$375 at time 4 is discounted for two periods at 25%, giving \$240. Thus, \(50+80+240=370\). The zero payment remains at time 1 and the terminal amount remains at time 4.

Common mistake avoided: a skipped payment is not a skipped time period. The interest rate still applies over that period, even though the cash flow is zero.

Stage Boundaries and Common Errors

A stage is a run of periods governed by the same effective rate. Suppose stage \(j\) begins at time \(T_j\), ends at time \(T_{j+1}\), and has \(n_j=T_{j+1}-T_j\) periods at rate \(i_j\). If \(V_{T_{j+1}}\) represents cash flows strictly after the boundary, then the value at the start of the stage is

$$ V_{T_j} = \sum_{h=1}^{n_j} \frac{C_{T_j+h}}{(1+i_j)^h} + \frac{V_{T_{j+1}}}{(1+i_j)^{n_j}}. $$

This block expression follows by applying the one-period recursion \(n_j\) times. It discounts each payment inside the stage by the number of periods from its payment date back to the stage start. It also discounts the continuation value at the end of the stage through all \(n_j\) periods. Applying the blocks from the last stage to the first produces the same result as working backward period by period.

When a payment occurs exactly at a stage boundary, use one consistent convention: include it in the cash flow for its payment date, and do not include it again in the continuation value. The recursion itself uses the rate for the period ending on that payment date. A rate change after that date affects later periods, not the period that has just ended.

Common exam trap: Applying a single rate to every period, or assigning a boundary payment to both adjacent stages, changes the value. Record the payment dates first, identify the rate for each period, and include each cash flow exactly once. A reliable check is to reverse the recursion: accumulate \(V_{t-1}\) at rate \(i_t\), subtract \(C_t\), and confirm that the result is \(V_t\).

A backward table is often the clearest working format: list each period, its payment, its rate, and the value at the end of that period; then calculate from the final row upward. Keep full precision in the intermediate values and round the requested dollar amount only at the end. The recursion is especially useful when payments vary from period to period, because it depends only on the cash flow and rate for the current step plus the continuation value already calculated.

Check Your Understanding

For each problem, use the stated period-end timing and effective rates. Keep intermediate values unrounded and round dollar answers to the nearest cent.

  1. A stream pays \$105 at time 1 and \$220 at time 2. The effective rate is 5% in both periods. Find the value at time 0. (Answer: \$299.55)
  2. A stream pays \$80, \$100, and \$242 at times 1, 2, and 3. The rate is 4% in periods 1 and 2, then 10% in period 3. Find the value at time 0. (Answer: \$372.78)
  3. A stream pays \$30, \$60, \$90, and \$150 at times 1 through 4, plus a terminal amount of \$50 at time 4. The rate is 0% in periods 1 and 2 and 20% in periods 3 and 4. Find the value at time 0. (Answer: \$303.89)
  4. A stream pays \$100, \$150, \$200, \$300, and \$400 at times 1 through 5. The rates are 3% in periods 1 and 2, 8% in periods 3 and 4, and 4% in period 5. Find the value at time 0. (Answer: \$966.29)
  5. A stream pays \$40 at time 2, \$66 at time 3, and \$121 at time 4; there is no payment at time 1. The rate is 0% in periods 1 and 2 and 10% in periods 3 and 4. Find the value at time 0 and the value at the time-2 boundary of all later payments. (Answer: Value at time 0 is \$200.00; time-2 boundary value is \$160.00)
Clinical Biostats