Tutorials › Exam FM - Financial Mathematics › Exact Cash-Flow Matching

Exam FM · Asset-Liability Matching · Tutorial 644 of 998

Exact Cash-Flow Matching

Set up dated cash-flow equations, solve for asset holdings, and check that every liability payment is met on its due date.

Advanced 10 min read

What You'll Learn

  • Express liabilities and asset payments on a common set of dates
  • Form period-by-period equations for asset holdings
  • Solve a triangular cash-flow matching system
  • Verify an exact match without using present values or reinvestment
  • Recognize when a calculated holding is negative

What Exact Cash-Flow Matching Requires

An asset portfolio can have the same present value as a liability portfolio and still fail to provide the cash needed on a particular payment date. Exact cash-flow matching addresses the timing directly: the assets must generate the required amount on each liability date. The test is made date by date, not by comparing only totals or present values.

The method applies to known, deterministic cash flows over a stated set of dates. Assume that each asset’s scheduled cash flows and each liability payment are certain, that holdings remain fixed over the matching period, and that there are no transaction costs, taxes, or defaults. No interest rate is needed to check the match: the method does not use interim surplus cash to earn interest or rely on reinvesting asset proceeds.

Definition: Suppose the relevant payment dates are \(t_1,t_2,\ldots,t_n\). Let \(L_k\) be the liability due at date \(t_k\), \(c_{jk}\) the cash flow paid at \(t_k\) by one unit of asset \(j\), and \(x_j\) the number of units of asset \(j\) held. An exact cash-flow match requires $$ \sum_j c_{jk}x_j=L_k $$ at every date \(t_k\). If the equation holds at every date, the portfolio’s scheduled inflows equal the liabilities period by period.

A unit can represent one bond, one contract, or a stated face amount of an instrument. Fractional holdings are allowed when the problem permits them. If only long positions are permitted, each \(x_j\) must also be nonnegative; a negative solution represents a short position and does not satisfy that restriction.

Build the Equations by Date

Put all asset and liability cash flows on the same timeline. Include a date whenever there is an asset payment or liability payment. If an asset pays nothing on a date, its cash flow there is zero; do not omit the date just because one portfolio has no payment. Then write one equation for each date.

1
List dates and liabilities.
Record the amount due at each date. Use zero when no liability is due.
2
Write each asset’s dated payments.
Record the cash flow per unit of asset at every listed date, including zero payments.
3
Form one equation per date.
Multiply each asset’s per-unit payment by its holding and set the sum equal to the liability for that date.
4
Solve and check.
Substitute the holdings into every date’s equation. A match is not verified until all dates have been checked.

When the equations can be solved in sequence, start with the earliest date. If only one asset pays on that date, its holding is determined immediately. Substitute that holding into the next date’s equation, solve for the next unknown, and continue. This approach is called back-substitution when the system is triangular.

Why Period-by-Period Equality Is Sufficient

The reason for checking every date is simple: a payment due on one date cannot be met by an asset payment arriving later unless some other funding source bridges the gap. Exact matching does not make that extra funding assumption.

To see the condition formally, define the cash balance immediately after date \(t_k\) as \(B_k\), and assume the balance before the first date is zero. If asset inflows and liability payments are the only cash movements, then $$ B_k=B_{k-1}+\sum_j c_{jk}x_j-L_k. $$ If each date’s inflows equal that date’s liability, then \(B_k=B_{k-1}\). Starting from zero, the balance remains zero at every date. Conversely, if the balance is zero before a date and remains zero after it, the equation requires that date’s inflows equal its liability. Thus date-by-date equality maintains a zero balance without depending on interest earned or reinvestment.

This is different from allowing cash left over at an early date to accumulate and help fund a later liability. Such a strategy requires an explicit assumption about holding or investing interim cash. Exact matching, as used here, does not rely on that assumption.

Worked Cash-Flow Systems

Worked Example: A Three-Date Match by Back-Substitution

A liability portfolio requires $500 at the end of year 1, $700 at the end of year 2, and $400 at the end of year 3. Asset A pays $100 at the ends of years 1 and 2. Asset B pays $100 at the end of year 2 and $50 at the end of year 3. Asset C pays $100 at the end of year 3. Find the holdings for an exact match. Assume these dated payments are certain, fractional units may be held, and no interest or reinvestment is assumed.

Method. Write one equation per year, then solve from year 1 onward. This avoids the mistake of matching only the total cash received over all three years.

Let the holdings of A, B, and C be \(x_A,x_B,x_C\). At year 1, only A pays:

$$ 100x_A=500 \quad\Longrightarrow\quad x_A=5. $$

At year 2, A and B pay. Substitute \(x_A=5\):

$$ 100(5)+100x_B=700 \quad\Longrightarrow\quad 500+100x_B=700 \quad\Longrightarrow\quad x_B=2. $$

At year 3, B and C pay. Substitute \(x_B=2\):

$$ 50(2)+100x_C=400 \quad\Longrightarrow\quad 100+100x_C=400 \quad\Longrightarrow\quad x_C=3. $$

Check. Year 1 inflow is \(100(5)=\$500\). Year 2 inflow is \(100(5)+100(2)=\$700\). Year 3 inflow is \(50(2)+100(3)=\$400\). Each date’s inflow equals its liability, so the holdings are 5 units of A, 2 units of B, and 3 units of C.

Common mistake avoided: adding all three liabilities and equating that total to all asset payments would ignore when the payments occur. The three separate checks establish the exact match.

Worked Example: Matching at Unevenly Spaced Dates

A fund owes $800 at year 1, $600 at year 2, and $550 at year 4. Asset A pays $200 at year 1 and $50 at year 2. Asset B pays $100 at year 2 and $100 at year 4. Asset C pays $50 at year 4. Determine the holdings. Treat the scheduled payments as certain, permit fractional units, and assume no interest or reinvestment of interim cash.

Method. Use the actual payment dates, even though there is no liability date at year 3. The gap does not create an additional cash flow or a reason to accrue interest.

Let \(x_A,x_B,x_C\) be the holdings. At year 1, only A pays, so

$$ 200x_A=800 \quad\Longrightarrow\quad x_A=4. $$

At year 2, A and B pay. The year-2 contribution from A is \(50(4)=\$200\), so

$$ 50(4)+100x_B=600 \quad\Longrightarrow\quad 200+100x_B=600 \quad\Longrightarrow\quad x_B=4. $$

At year 4, B contributes \(100(4)=\$400\). The remaining $150 must come from C:

$$ 100(4)+50x_C=550 \quad\Longrightarrow\quad 400+50x_C=550 \quad\Longrightarrow\quad x_C=3. $$

Check. At year 1, inflow is \(200(4)=\$800\). At year 2, inflow is \(50(4)+100(4)=\$600\). At year 4, inflow is \(100(4)+50(3)=\$550\). The holdings of 4 units of A, 4 units of B, and 3 units of C match every liability date.

Common mistake avoided: treating year 4 as three years after year 1 does not justify inserting a year-3 payment. The equations use the dates on which cash actually arrives or is due.

Worked Example: A Negative Holding in a Proposed Match

Liabilities are $900 at year 1, $760 at year 2, and $1,300 at year 3. Asset A pays $100 at years 1 and 2. Asset B pays $100 at year 2 and $50 at year 3. Asset C pays $100 at year 3. Find the holdings required for an exact match, allowing signed positions. The cash flows are deterministic, and no interest or reinvestment is assumed.

Method. Solve the dated equations in order and interpret the sign of each holding. A negative holding means that the asset’s cash flow is subtracted, not added.

At year 1, only A pays:

$$ 100x_A=900 \quad\Longrightarrow\quad x_A=9. $$

At year 2, A’s nine units already produce \(100(9)=\$900\). To match a liability of $760, B must offset $140:

$$ 100(9)+100x_B=760 \quad\Longrightarrow\quad 900+100x_B=760 \quad\Longrightarrow\quad x_B=-1.4. $$

At year 3, B’s signed contribution is \(50(-1.4)=-\$70\). Therefore C must provide $1,370:

$$ 50(-1.4)+100x_C=1{,}300 \quad\Longrightarrow\quad -70+100x_C=1{,}300 \quad\Longrightarrow\quad x_C=13.7. $$

Check. Year 1 inflow is \(100(9)=\$900\). Year 2 inflow is \(100(9)+100(-1.4)=900-140=\$760\). Year 3 inflow is \(50(-1.4)+100(13.7)=-70+1{,}370=\$1{,}300\). The exact signed solution is \(x_A=9,\ x_B=-1.4,\ x_C=13.7\).

Interpretation and common mistake avoided: the negative value means shorting 1.4 units of B. If short positions are prohibited, these holdings are not an admissible portfolio. Reporting a positive holding for B would be an arithmetic error: the year-2 equation requires \(900+100x_B=760\), not \(900-100x_B=760\) unless the short position is explicitly represented by its negative holding.

Checks, Constraints, and Scope

A complete exact-match calculation should show both the equations used to find holdings and the resulting inflows at every liability date. A solution can satisfy the algebra while violating a portfolio constraint, such as a prohibition on short sales. Keep those questions separate: first solve and verify the cash-flow equations, then check whether the holdings meet the restrictions in the problem.

QuestionWhat to check
Are all dates represented?Include every date with an asset payment or liability payment.
Are the amounts per unit?Multiply each scheduled asset payment by its holding.
Is the match exact?Compare inflow with liability separately at every date.
Are the holdings allowed?Check requirements such as nonnegative holdings or whole-unit holdings.

Exact matching focuses on the timing and amount of scheduled cash flows. It does not by itself establish that the portfolio can be purchased within a specified budget, that market prices are fair, or that payments will occur if an issuer defaults. Those are separate considerations. In contrast with a present-value or duration comparison, this method directly verifies that the specified asset inflow at each date covers exactly the specified liability payment at that date.

Key takeaway: Set up one cash-flow equation for every liability date, solve for the asset holdings, and substitute the answer back into every equation. Do not assume that a surplus at one date can fund a later payment unless the problem explicitly includes a cash account or reinvestment mechanism.

Check Your Understanding

For each problem, use the stated dated cash flows and check the holdings at every liability date. Unless a problem says otherwise, payments are certain, fractional holdings are allowed, and no interest or reinvestment is assumed.

  1. Liabilities are $300 at year 1 and $500 at year 2. Asset A pays $100 at year 1 and $50 at year 2; asset B pays $100 at year 2. Find the holdings. (Answer: 3 units of A and 3.5 units of B.)
  2. Liabilities are $400 at year 1 and $500 at year 2. Asset A pays $80 at year 1 and $40 at year 2; asset B pays $120 at year 2. Find the holdings. (Answer: 5 units of A and 2.5 units of B.)
  3. Liabilities are $700 at year 1, $540 at year 2, and $350 at year 3. Asset A pays $100 at year 1 and $20 at year 2; asset B pays $100 at year 2 and $25 at year 3; asset C pays $100 at year 3. Find the holdings. (Answer: 7 units of A, 4 units of B, and 2.5 units of C.)
  4. Liabilities are $500 at year 1, $400 at year 2, and $500 at year 3. Asset A pays $100 at years 1 and 2; asset B pays $100 at year 2 and $50 at year 3; asset C pays $100 at year 3. Find the exact signed holdings and state whether they are all nonnegative. (Answer: 5 units of A, −1 unit of B, and 5.5 units of C; the holdings are not all nonnegative.)
Clinical Biostats