Stock pricing models one price: S(t). Fixed income models an entire curve of prices — the yield curve — simultaneously. A bond maturing in 1 month, 6 months, 1 year, 5 years, and 30 years all have different yields, and they all move together in complex, correlated ways. The same Feynman-Kac machinery from Chapter 23 applies — but the input is now an interest rate SDE rather than a stock price SDE.
A stock model tracks one number. A bond model must simultaneously describe the entire yield curve across all maturities.
Rather than modelling the entire yield curve directly, short-rate models focus on a single variable: R(t), the interest rate for borrowing money for an infinitesimal instant. This "short rate" is the engine that drives everything else. All bond prices at all maturities are determined by the expected future path of this one rate — under the risk-neutral measure.
One short rate R(t) drives the entire yield curve. All bond prices B(t,T) are risk-neutral expectations of its future path.
The "one-factor" assumption is both a strength and a limitation. Strength: it is mathematically tractable — one SDE produces clean, closed-form bond prices. Limitation: real yield curves twist and steepen in ways that one factor cannot capture. A one-factor model predicts that all rates move in parallel. Multi-factor models (two or three factors) are needed to model the slope and curvature of the yield curve independently.
The simplest fixed income instrument is the zero-coupon bond: a contract that pays exactly $1 at maturity T, with no intermediate payments. Its price today B(t,T) is the present value of that future dollar — discounted at whatever interest rates happen between now and T. All other fixed income instruments (coupon bonds, swaps, interest rate options) can be decomposed into zero-coupon bonds.
This is the exact same three-step recipe from Chapter 23, now applied to R(t) instead of S(t). The only differences are: (1) the variable is r (the rate) instead of x (the stock price), and (2) the terminal condition is f(T,r) = 1 (the bond pays $1) instead of a payoff function h(x).
The bond price has an important interpretation: B(t,T) = 𝔼̃[ e^(−∫ₜᵀ R(u)du) | ℱ(t) ]. It is the risk-neutral expectation of the cumulative discount factor from t to T. This is Feynman-Kac in fixed income — the PDE and the expectation are two routes to the same bond price.
For certain SDE specifications, the bond pricing PDE has a beautiful closed-form solution. These are called Affine Yield Models because the yield (log of the bond price divided by maturity) is an affine — that is, a linear — function of the current short rate. The bond price always takes the exponential-affine form:
Mean-reverting rubber band. Constant volatility. The affine solution has explicit formulas for A(t,T) and C(t,T). Analytically tractable — yields closed-form prices for bonds and many interest rate derivatives.
Same rubber band but volatility shrinks as R→0. Still affine — closed-form solution exists (involves Bessel functions). Rates stay positive. More complex but more realistic for post-zero-rate environments.
Both models produce smooth, well-behaved yield curves for different starting short rates. The affine structure guarantees this shape analytically — no Monte Carlo needed.
A European call option on a bond gives you the right to buy a specific bond at price K at a future date T₁, where the bond itself matures at T₂ > T₁. Pricing this requires solving two PDEs sequentially — the same PDE structure, applied twice with different terminal conditions.
Two PDEs solved sequentially: backward from T₂ → T₁ (bond price), then backward from T₁ → today (option price). Same equation, different terminal conditions.
For the Hull-White model, this two-step process has a complete closed-form solution — the Bond Option Formula. It looks similar to Black-Scholes but with the Hull-White yield replacing the stock price and a bond-specific volatility replacing σ. For CIR, the solution involves the non-central chi-squared distribution. Both are faster than Monte Carlo for simple bond options.
Set the current short rate and model parameters. The simulator computes the zero-coupon yield curve using the affine bond price formula for both Hull-White and CIR. Observe how different short rates produce different curve shapes — normal, flat, or inverted.
Gold = yield curve at current R(0) | Dashed teal = long-run mean rate | Shape changes from normal to flat to inverted as R(0) rises above the mean
Chapter 24 — bond pricing and the yield curve in four ideas:
What comes next: Multidimensional Feynman-Kac — extending the PDE bridge to multiple correlated assets, path-dependent options (Asian options where the payoff depends on the average price), and the computational machinery needed to solve high-dimensional PDEs in practice.