Tools › Investing › Bonds › Bond Immunization › Method

Bond Immunization: Method

Open the Bond Immunization tool

Bond Immunization: How It Works

What it does

You owe a known payment on a known future date and want to set money aside for it in bonds. If yields fall, the sum needed today to fund the payment rises; if they rise, bonds lose value. Immunization picks a mix of bonds whose value moves with yields by the same amount as the value of the payment, so that the two changes cancel. The page finds that mix for two bonds, shows how well it holds when yields move, and shows that it has to be renewed as time passes. Every step is printed as formula, numbers put in, answer.

The method

Symbols. L0 is the payment owed and t its date in years from today; yf the yield per year, compounded every six months, and ip = yf / 2 the yield per half-year, both used as decimals (5 % is 0.05). V is a present value, D a duration, C a convexity; the subscript L marks the payment (the liability), A, B and C the bonds, P the mix of bonds A and B.

Present value. A payment t years away is worth VL = L0 / (1 + ip)2t today. A bond per 100 of face with a yearly coupon rate k and N half-years to maturity is worth P = 100 (k / 2) [1 − (1 + ip)−N] / ip + 100 (1 + ip)−N. A par bond has k = yf and P = 100.

Duration and convexity. Duration here is the modified duration, D = −(1 / V) dV/dy: the percent fall in value for a one-point rise in yield, in years. Convexity is C = (1 / V) d²V/dy², the curvature of value against yield. For one payment t years away, D = t / (1 + ip) and C = t (t + ½) / (1 + ip)². For a bond, or for several payments, D and C are the averages of these over the cash flows, each weighted by its share of the present value. The Macaulay duration, the weighted average time to the cash flows, is D (1 + ip). For a small change Δy in yield, ΔV / V ≈ −D Δy + ½ C Δy².

The weights. With shares wA and wB of the sum VL in the two bonds, matching present value and duration means

wA + wB = 1,    wA DA + wB DB = DL,    so    wA = (DB − DL) / (DB − DA),   wB = 1 − wA.

The money in bond A is wA VL and the face amount bought is that money divided by PA / 100. Both weights are positive when DL lies between DA and DB.

Surplus. The surplus is the value of the bonds minus the present value of the payment; it is zero today. After a parallel shift Δy (every yield moves by the same amount, at once) the duration terms cancel and what is left is S ≈ ½ (CP − CL) VL Δy², with CP = wA CA + wB CB. When the mix is more convex than the payment the surplus is positive for a move in either direction (Redington's second condition). The table reprices everything exactly, beside one bond held alone and beside zero-coupon bonds that pay exactly what is owed (cash matching), whose surplus is zero at every yield.

Drift. One year later at an unchanged yield, with each coupon reinvested in the bond that paid it, every holding and the payment's present value have grown by (1 + ip)², so the shares are unchanged; but each duration has shortened by a different amount. The page recomputes the durations, the duration of the unchanged mix, and the new weights from the same two equations. The money to move into bond A is (new wA − old wA) × the value then.

Advanced: three bonds. A third equation, uA CA + uB CB + uC CC = CL, matches convexity too; the three equations are solved for the shares u.

Advanced: several payments and cash-flow matching. Further payments are added to the first; VL, DL and CL are then those of the whole set. The cash-flow match uses one par bond maturing on each payment date (the last half-year date before it, if the payment falls between two) and chooses the face amounts xj ≥ 0 that minimise the total cost, subject to: at every payment date, the coupons and face amounts received so far are at least the payments due so far. Cash received early waits without earning interest. This small linear program is solved exactly by examining every corner of the allowed region.

Advanced: a curve that turns. On a flat curve the yield is also the rate for each single maturity. The what-if changes the rate for a cash flow t years away by s (t − t0) / 10, where s is the entered change per 10 years and t0 the Macaulay duration of the payments, and reprices every cash flow at its own rate.

Advanced: key-rate durations. The key-rate duration at 2, 5, 10 or 30 years is the percent fall in value when the rate at that maturity alone rises one point, the rise fading in a straight line to zero at the neighbouring key maturities (level before 2 and after 30 years). A cash flow at t contributes its duration split between the two keys around t. The four add up to D.

What it assumes

One yield for every maturity, compounded every six months; bonds that pay in full and on time and cannot be called; maturities that are a whole number of half-years, with the next coupon six months away; any face amount can be bought, including fractions, and a bond can be sold short when a weight is negative; no taxes or trading costs. Shifts happen at once, today. In the drift step the yield is unchanged for a year and coupons are reinvested in the same bond.

When it misleads

Yield curves are not flat and do not move in parallel. The match cancels one kind of move only. When short and long rates move by different amounts, a mix of a short and a long bond around a payment in the middle (a barbell) can fall short; the steepening and key-rate sections show this. Bonds whose cash flows lie close to the payment date are less exposed to it.

The match decays. Durations change with time and with every move in yields, so the weights have to be recomputed and bonds traded, at a cost the page leaves out.

Large moves. Duration is a first-order measure. For moves of several points the surplus depends on convexity and on higher-order terms.

The convexity cushion is not a free gain. It appears only because the model allows nothing but parallel shifts of a flat curve. In markets, more convex holdings usually yield less.

Default and call risk are left out. If a bond defaults or is repaid early, its cash flows are not the ones the durations were computed from.

The cash-flow match is costed cautiously. Idle cash is assumed to earn nothing, which overstates its extra cost, and the set is limited to par bonds on the payment dates.

Worked example

The default case: 1,000,000 is owed in 7 years; the yield is 5 %; bond A is a 3-year and bond B a 15-year par bond.

ip = 0.05 / 2 = 0.025. Payment: VL = 1,000,000 / 1.02514 = 707,727.20; DL = 7 / 1.025 = 6.829 years; CL = 7 × 7.5 / 1.025² = 49.97.

Bonds (each priced at 100): DA = 2.754 years, CA = 9.21; DB = 10.465 years, CB = 139.54.

Weights: wA = (10.465 − 6.829) / (10.465 − 2.754) = 0.4715 and wB = 0.5285. Money: 0.4715 × 707,727.20 = 333,702.74 in bond A and 374,024.45 in bond B. Check: 0.4715 × 2.754 + 0.5285 × 10.465 = 6.829 years. Convexity of the mix: 0.4715 × 9.21 + 0.5285 × 139.54 = 78.09.

One-point shift: estimated surplus ½ × (78.09 − 49.97) × 707,727.20 × 0.01² = 994.93. Exact repricing gives 915.51 after a rise and 1,082.35 after a fall, while bond B held alone loses 22,749.44 after a rise and gains 29,105.07 after a fall.

One year later: DA = 1.881, DB = 9.982, DL = 6 / 1.025 = 5.854 years. The unchanged mix has 0.4715 × 1.881 + 0.5285 × 9.982 = 6.162 years, 0.309 too long. New wA = (9.982 − 5.854) / (9.982 − 1.881) = 0.5096; the money to move from bond B into bond A is (0.5096 − 0.4715) × 743,555.89 = 28,345.63 (with unrounded weights).

A calculator for education and analysis, not investment advice.