Bond Risk Measures and Immunization › Liability-Driven Investing (LDI)

Michael BrenndoerferNovember 8, 20257 min read
Quantitative FinanceAll chapters
Part 2 of 15Equity and Fixed Income Markets
Chapter 13Bond Risk Measures and Immunization › Liability-Driven Investing (LDI)
Reading section 9 of 13 · Liability-Driven Investing (LDI) · 7 minSection 9 of 13 · 7 min

Book contents

Section 9 of 13 · 7 min read

Bond Risk Measures and Immunization › Liability-Driven Investing (LDI)One section · Sections in this chapter9 / 13 ↓
Reading tools Definitions & inline links

Choose your expertise level to adjust how many terms are explained. Beginners see more tooltips, experts see fewer to maintain reading flow. Hover over underlined terms for instant definitions.

Article links

Make inline references clickable

Liability-Driven Investing extends immunization concepts to manage portfolios against complex liability streams. Rather than targeting a single future payment, LDI addresses situations where institutions must meet a series of obligations over time. The framework shifts the investment objective from maximizing returns to ensuring that assets will be sufficient to meet liabilities under various market conditions.

Pension funds provide a classic example. A defined-benefit pension fund must pay retirees monthly benefits potentially spanning decades. The present value of these liabilities depends on interest rates. When rates fall, the present value of fixed liability payments rises. Funding can weaken if liabilities rise faster than assets in percentage terms; whether a deficit develops also depends on the initial funding position and the size of the rate move. A fund that appeared adequately funded at high interest rates may suddenly face a deficit when rates decline, even if the actual benefit obligations have not changed.

Duration Gap

The duration gap measures the mismatch between asset duration and liability duration weighted by the inverse funding ratio:

Duration Gap=DA−PVLPVA⋅DL\text{Duration Gap} = D_A - \frac{PV_L}{PV_A} \cdot D_L

where:

  • DAD_A: duration of the asset portfolio
  • DLD_L: duration of the liabilities
  • PVAPV_A: present value of assets
  • PVLPV_L: present value of liabilities
  • PVL/PVAPV_L / PV_A: the inverse of the funding ratio

The duration gap measures first-order exposure of dollar surplus S=A−LS=A-L. Under a common small decimal yield change, ΔS≈(−DAA+DLL)Δy=−A Duration Gap Δy\Delta S\approx(-D_AA+D_LL)\Delta y=-A\,\text{Duration Gap}\,\Delta y. A positive gap means rising yields reduce dollar surplus; a negative gap means rising yields increase it. This concerns dollar surplus, not the percentage changes in asset and liability values.

A zero gap equates asset and liability money durations, so dollar surplus has zero first-order yield sensitivity. The funding ratio F=A/LF=A/L has a different derivative: dF/dy=F(DL−DA)dF/dy=F(D_L-D_A). Its first-order sensitivity vanishes when the two modified durations are equal. For an overfunded fund, that is generally not the same condition as a zero surplus duration gap.

In[28]:
Code
# Example: Pension fund LDI analysis
asset_value = 100_000_000  # $100 million in assets
liability_value = 95_000_000  # $95 million in liabilities (overfunded)
asset_duration = 6.5
liability_duration = 12.0

funding_ratio = asset_value / liability_value
duration_gap = asset_duration - (liability_value / asset_value) * liability_duration

print("Pension Fund LDI Analysis")
print("=" * 50)
print(f"Asset Value: ${asset_value:,.0f}")
print(f"Liability Value: ${liability_value:,.0f}")
print(f"Funding Ratio: {funding_ratio:.2%}")
print(f"Asset Duration: {asset_duration:.1f} years")
print(f"Liability Duration: {liability_duration:.1f} years")
print(f"Duration Gap: {duration_gap:.2f}")
print()

# Impact of 1% rate change
rate_change = 0.01
asset_change = -asset_duration * asset_value * rate_change
liability_change = -liability_duration * liability_value * rate_change
surplus_change = asset_change - liability_change

print("Impact of +1% Rate Change:")
print(f"  Asset Value Change: ${asset_change:,.0f}")
print(f"  Liability Value Change: ${liability_change:,.0f}")
print(f"  Surplus Change: ${surplus_change:,.0f}")
print()
print(
    f"New Funding Ratio: {(asset_value + asset_change) / (liability_value + liability_change):.2%}"
)
Out[28]:
Console
Pension Fund LDI Analysis
==================================================
Asset Value: $100,000,000
Liability Value: $95,000,000
Funding Ratio: 105.26%
Asset Duration: 6.5 years
Liability Duration: 12.0 years
Duration Gap: -4.90

Impact of +1% Rate Change:
  Asset Value Change: $-6,500,000
  Liability Value Change: $-11,400,000
  Surplus Change: $4,900,000

New Funding Ratio: 111.84%

The negative duration gap (-4.9) indicates that liabilities are more rate-sensitive than assets. A 1% rate increase benefits the fund because liabilities fall more than assets, improving the funding ratio. Conversely, falling rates would damage the fund's position. This analysis highlights the interest rate risk that pension funds face when their asset duration does not match their liability duration.

LDI Strategies

Pension funds and insurers employ several LDI approaches to manage the duration gap and protect their funding status:

  • Cash flow matching: Structure bond portfolios so that coupon and principal payments exactly match liability payment dates in both timing and amount. This approach eliminates reinvestment risk entirely because each cash inflow is immediately used to fund an outflow. However, cash flow matching may be expensive or impossible to implement for very long-dated liabilities, as appropriate bonds may not exist or may trade at premium prices.

  • Duration matching: Match portfolio duration to liability duration, accepting some reinvestment risk in exchange for flexibility. This approach allows the use of a broader range of bonds and can be implemented at lower cost than perfect cash flow matching. The tradeoff is that the fund remains exposed to non-parallel yield curve shifts.

  • Key rate duration matching: Match sensitivity to specific points on the yield curve, and protects against non-parallel curve movements. Instead of a single duration number, key rate durations measure sensitivity to changes at specific maturities (such as the 2-year, 5-year, 10-year, and 30-year points). Matching key rate durations across assets and liabilities gives more stable protection but requires more sophisticated analysis and implementation.

  • Liability-driven benchmarking: Compare the portfolio's cash-flow-adjusted percentage return with the percentage change in a consistently valued liability benchmark. Asset returns above that benchmark indicate relative outperformance, even when both percentage changes are negative. Contributions and benefit payments must be handled consistently, and liability remeasurement must be distinguished from investment performance. This comparison is one performance measure, not a complete judgment of a plan's success.

In[29]:
Code
def ldi_scenario_analysis(
    asset_value,
    liability_value,
    asset_duration,
    liability_duration,
    yield_scenarios,
):
    """Analyze funding ratio under different yield scenarios."""
    results = []

    for dy in yield_scenarios:
        new_assets = asset_value * (1 - asset_duration * dy)
        new_liabilities = liability_value * (1 - liability_duration * dy)
        new_surplus = new_assets - new_liabilities
        new_funding_ratio = new_assets / new_liabilities

        results.append(
            {
                "yield_change": dy,
                "assets": new_assets,
                "liabilities": new_liabilities,
                "surplus": new_surplus,
                "funding_ratio": new_funding_ratio,
            }
        )

    return results
Out[30]:
Visualization
Line chart comparing funding ratios under rate changes for mismatched versus matched duration portfolios.
Funding ratios for a model fund with $100 million assets and $95 million liabilities under yield changes from -3 to +3 percentage points. The current portfolio uses asset and liability modified durations of 6.5 and 12 years. The surplus-matched portfolio sets asset duration to 11.4, making the surplus duration gap zero: dollar surplus stays at $5 million in this first-order value model, but the funding ratio changes from about 103.87% to 108.22%. The equal-duration portfolio instead holds the funding ratio at about 105.26% within the model. These are ratios of linear price approximations, not exact finite-shock valuations or protection against every source of risk.

The current portfolio's funding ratio improves when rates rise because its liability percentage sensitivity exceeds its asset sensitivity. The surplus-matched portfolio holds dollar surplus constant in this linear scenario model, but its funding ratio still changes. The added equal-duration series instead holds the funding ratio constant within the model. Neither construction removes convexity, credit, liquidity or general curve-shape risk, and the finite-shock curves use approximate rather than exactly repriced values.