Exact Cash-Flow Matching
Exact cash-flow matching, also called dedication, eliminates interest-rate risk entirely by holding assets whose cash flows replicate the liability cash flows date-for-date, so no rebalancing or rate assumption is ever needed.
By the end you'll be able to build a dedicated portfolio for a liability stream and explain why its surplus stays at zero no matter how the interest rate moves.
Predict: once the asset cash flows exactly replicate the liabilities date-for-date, does changing the interest rate ever create a shortfall? Drag the rate and check the surplus.
Liabilities of 70 at t=1, 70 at t=2, and 1070 at t=3 are shown as the gray bars. Drag the three asset sliders to set each date's inflow — the blue bars — and watch the surplus line below. When every asset bar lines up exactly with its liability bar, the surplus line is pinned flat at zero across every rate on the slider.
At i = 5.0%: surplus S(i) = $0.00 — matched at every date, so this holds for every rate.
Immunization strategies hedge value against rate moves but still lean on assumptions — small shifts, a flat curve, periodic rebalancing. Exact cash-flow matching sidesteps all of that by making sure there's nothing left to hedge.
If asset receipts exactly cover each liability as it comes due, the fund never has to buy or sell at an uncertain future price, and never has to reinvest a surplus or fund a shortfall at an unknown future rate. Formally, if the asset cash flow at every date equals the liability cash flow at that date, surplus \(S(i) = \sum_t (A_t - L_t)\cdot v^t = 0\) for every yield i, because each term is zero individually — not just at one rate, and not just to second order the way immunization's surplus is. The hedge is exact and rate-independent by construction.
With matched cash flows there is no rate assumption — the match holds at any yield and for any shape or twist of the curve, because no discounting is ever needed to compare timing. There is no rebalancing — duration drift is irrelevant; you simply hold to maturity and let each payment arrive. And there is no reinvestment risk: nothing is ever reinvested, since each inflow is spent on its matching outflow.
Liabilities: pay 100 at the end of year 1, 100 at the end of year 2, and 1,100 at the end of year 3. A 3-year bond with face 1,000 and a 10% annual coupon pays exactly 100 (coupon), 100 (coupon), and 100+1,000=1,100 (final coupon plus redemption) at t = 1, 2, 3 — an exact match on its own. Equivalently, you could assemble three zeros: one maturing at 100 (t=1), one at 100 (t=2), one at 1,100 (t=3). Either way, every year's inflow equals that year's outflow, so surplus is zero regardless of the rate used to price the portfolio.
Liabilities: pay 50 at the end of year 1, 50 at the end of year 2, and 1,050 at the end of year 3. A 3-year bond with face 1,000 pays a coupon C at t=1 and t=2, and 1,000+C at t=3. Matching the first two liabilities requires C = ____. Matching t = 3 then requires 1,000 + C = ____ — check it against the 1,050 owed.
Reveal the answer
C = 50 (a 5% annual coupon on a face of 1,000), and 1,000 + 50 = 1,050, matching the year-3 liability exactly. A 3-year, 5% annual-coupon bond dedicates this liability stream. Try setting the sliders above to 50, 50, 1,050 (drag within range) and confirm the surplus line stays flat at zero for every rate.
More info — why matching skips the discounting step entirely
Redington immunization protects surplus with a Taylor-series argument: match present value and duration, keep asset convexity above liability convexity, and surplus stays non-negative for a small rate move near today's rate i₀ — a second-order approximation that can still fail for a large move or after enough time passes without rebalancing. Exact matching needs none of that machinery. Because \(A_t - L_t = 0\) at every single date, the sum \(\sum_t (A_t-L_t)\cdot v^t\) is zero term-by-term for any discount factor \(v^t\) — there's no approximation, no "small move" caveat, and no dependence on the curve's shape. That's the entire reason it's the safest strategy on the risk-versus-cost spectrum, at the price of needing bonds that line up with the liabilities in the first place.
Check your understanding
Liabilities require payments of 60 at the end of year 1, 60 at the end of year 2, and 1060 at the end of year 3. Which single bond gives an exact cash-flow match?
Why does exact cash-flow matching make surplus zero at every interest rate, not just the rate used to price the portfolio?
A portfolio manager is choosing between exact cash-flow matching (dedication) and Redington immunization for a set of liabilities. Which statement correctly distinguishes them?
What is the primary practical drawback of exact cash-flow matching compared to Redington immunization?
Recap
- Exact cash-flow matching (dedication) holds assets whose cash flow at every date equals the liability's cash flow at that same date.
- Surplus \(S(i) = \sum_t (A_t - L_t)\cdot v^t = 0\) because every term is zero individually — so it's zero at every rate i, with no rate assumption needed.
- No reinvestment and no rebalancing: each inflow is simply spent on its outflow.
- It is the safest but most rigid and often most expensive strategy — matching bonds may not exist at the needed maturities, and giving up all risk usually means giving up yield. Immunization trades some certainty for flexibility and lower cost.
Dive deeper
- General Cash Flows, Portfolios, and Asset Liability Management — SOA Exam FM (AnalystPrep) Define exact matching (dedication) and its cash-flow replication of liabilities.
- Marcel Finan — Exam FM study guide (PDF) Build a dedicated portfolio whose cash flows match the liabilities date-for-date.
Sources
- Exact Cash-Flow Matching (Dedication)