Skip to main content

Chapter 12 — Interest Rate Models

Guiding question

Modeling equity prices requires one SDE. Modeling the yield curve requires modeling infinitely many correlated rates simultaneously. How do we build self-consistent models for the entire term structure that remain arbitrage-free?

Interest rate modeling is fundamentally different from equity modeling: the "underlying" is not one number but a curve — the function T↦r(t,T)T\mapsto r(t,T) mapping maturity to yield. Every point on this curve is a derivative of the short rate rt=r(t,t)r_t = r(t,t), and all must move consistently under one probability measure.


12.1 Term structure fundamentals​

A zero-coupon bond P(t,T)P(t,T) pays \1attimeat timeT.Itspriceat. Its price at t$ is:

P(t,T)=EQ ⁣[exp⁡ ⁣(−∫tTrs ds)∣Ft].P(t,T) = \mathbb E^{\mathbb Q}\!\left[\exp\!\left(-\int_t^T r_s\,ds\right)\Bigg| \mathcal F_t\right].

The continuously compounded yield y(t,T)y(t,T) and forward rate f(t,T)f(t,T) are:

y(t,T)=−log⁡P(t,T)T−t,f(t,T)=−∂Tlog⁡P(t,T).y(t,T) = -\frac{\log P(t,T)}{T-t}, \qquad f(t,T) = -\partial_T\log P(t,T).

The short rate is rt=lim⁡T→tf(t,T)=f(t,t)r_t = \lim_{T\to t}f(t,T) = f(t,t).

The entire yield curve is determined by the bond prices {P(t,T):T≥t}\{P(t,T): T\ge t\}.


12.2 The Vasicek model​

Vasicek short-rate model

The Vasicek model assumes:

drt=κ(θ−rt) dt+σ dWt.dr_t = \kappa(\theta - r_t)\,dt + \sigma\,dW_t.

The zero-coupon bond price is P(t,T)=A(τ)e−B(τ)rtP(t,T) = A(\tau)e^{-B(\tau)r_t} where τ=T−t\tau = T-t:

B(τ)=1−e−κτκ,log⁡A(τ)=(θ−σ22κ2)(B(τ)−τ)−σ2B(τ)24κ.B(\tau) = \frac{1-e^{-\kappa\tau}}{\kappa}, \quad \log A(\tau) = \left(\theta - \frac{\sigma^2}{2\kappa^2}\right)(B(\tau)-\tau) - \frac{\sigma^2 B(\tau)^2}{4\kappa}.
Derivation via Feynman–Kac

By Feynman–Kac, P(t,r)=A(τ)e−B(τ)rP(t,r) = A(\tau)e^{-B(\tau)r} must solve the PDE:

∂τP=κ(θ−r)∂rP+12σ2∂rrP−rP.\partial_\tau P = \kappa(\theta-r)\partial_r P + \tfrac12\sigma^2\partial_{rr}P - rP.

Substituting the affine form:

A˙e−Br−AB˙re−Br=κ(θ−r)(−AB)e−Br+12σ2AB2e−Br−rAe−Br.\dot A e^{-Br} - A\dot B r e^{-Br} = \kappa(\theta-r)(-AB)e^{-Br} + \tfrac12\sigma^2 AB^2 e^{-Br} - rAe^{-Br}.

Dividing by Ae−BrAe^{-Br} and collecting r0r^0 and r1r^1 terms:

  • r0r^0: A˙/A=−κθB+12σ2B2\dot A/A = -\kappa\theta B + \frac12\sigma^2 B^2
  • r1r^1: −B˙=−1+κB-\dot B = -1 + \kappa B

The r1r^1 equation gives the ODE B˙=1−κB\dot B = 1 - \kappa B with B(0)=0B(0) = 0, solved by B(τ)=(1−e−κτ)/κB(\tau) = (1-e^{-\kappa\tau})/\kappa. The r0r^0 equation gives log⁡A\log A by integration.

Vasicek interest rate model
θ=0.050010yr
Vasicek: dr = κ(θ−r)dt + σdW. Rates can go negative (a model defect). Stationary distribution: N(θ, σ²/2κ). The blue dashed line shows E[r_t | r_0].

Properties:

  • Exact Gaussian distribution: rt∣r0∼N(θ+(r0−θ)e−κt,σ22κ(1−e−2κt))r_t\mid r_0\sim N(\theta + (r_0-\theta)e^{-\kappa t}, \frac{\sigma^2}{2\kappa}(1-e^{-2\kappa t}))
  • Negative rates possible (limitation for low-rate environments)
  • Yield curve can be normal, flat, or inverted depending on r0r_0 vs θ\theta

12.3 The CIR model​

To avoid negative rates, Cox–Ingersoll–Ross proposed:

drt=κ(θ−rt) dt+σrt dWt.dr_t = \kappa(\theta-r_t)\,dt + \sigma\sqrt{r_t}\,dW_t.
CIR bond price

The bond price has the same affine form P(t,T)=A(τ)e−B(τ)rtP(t,T) = A(\tau)e^{-B(\tau)r_t}, but with:

B(τ)=2(eγτ−1)(γ+κ)(eγτ−1)+2γ,B(\tau) = \frac{2(e^{\gamma\tau}-1)}{(\gamma+\kappa)(e^{\gamma\tau}-1)+2\gamma},A(τ)=(2γe(κ+γ)τ/2(γ+κ)(eγτ−1)+2γ)2κθ/σ2,A(\tau) = \left(\frac{2\gamma e^{(\kappa+\gamma)\tau/2}}{(\gamma+\kappa)(e^{\gamma\tau}-1)+2\gamma}\right)^{2\kappa\theta/\sigma^2},

where γ=κ2+2σ2\gamma = \sqrt{\kappa^2+2\sigma^2}.

The key difference from Vasicek: the yields in CIR are always positive (when r0>0r_0 > 0 and the Feller condition holds), and the vol of the short rate scales with r\sqrt{r} rather than being constant.


12.4 Affine term structure models​

Both Vasicek and CIR are special cases of affine term structure models (ATSMs). An ATSM assumes the state vector Xt\mathbf X_t follows an affine diffusion:

dXt=(κθ−KXt) dt+Σ(Xt) dWt,d\mathbf X_t = (\boldsymbol\kappa\boldsymbol\theta - K\mathbf X_t)\,dt + \Sigma(\mathbf X_t)\,d\mathbf W_t,

with the short rate rt=δ0+δ⋅Xtr_t = \delta_0 + \boldsymbol\delta\cdot\mathbf X_t (affine in the state).

Key result: bond prices are exponential-affine: P(t,T)=eA(τ)+B(τ)⋅XtP(t,T) = e^{A(\tau)+\mathbf B(\tau)\cdot\mathbf X_t}, where (A,B)(A,\mathbf B) solve a system of Riccati ODEs.

The An(m)A_n(m) classification (Dai–Singleton) organizes ATSMs by the number of state variables nn and the number of correlated factors driving volatility mm.


12.5 The HJM framework​

The Heath–Jarrow–Morton framework models the entire forward rate curve:

df(t,T)=μ(t,T) dt+σ(t,T)⋅dWt.df(t,T) = \mu(t,T)\,dt + \boldsymbol\sigma(t,T)\cdot d\mathbf W_t.

Here f(t,T)f(t,T) is the instantaneous forward rate for time TT, observed at time tt.

HJM drift condition (no-arbitrage)

Under the risk-neutral measure Q\mathbb Q, the drift of f(t,T)f(t,T) is completely determined by its volatility:

μQ(t,T)=σ(t,T)⋅∫tTσ(t,s) ds.\mu^{\mathbb Q}(t,T) = \boldsymbol\sigma(t,T)\cdot\int_t^T\boldsymbol\sigma(t,s)\,ds.

This is the HJM drift restriction.

Proof sketch

The bond price is P(t,T)=exp⁡(−∫tTf(t,s) ds)P(t,T) = \exp(-\int_t^T f(t,s)\,ds). For P~(t,T)=e−rtP(t,T)\tilde P(t,T) = e^{-rt}P(t,T) to be a Q\mathbb Q-martingale, Itô's formula for P(t,T)P(t,T) (using Itô's formula for the exponential of a stochastic integral) forces the drift-volatility relationship above.

HJM as geometry of forward rates

The HJM condition says: in a no-arbitrage model, you cannot freely specify both the drift and the volatility of forward rates. Once you commit to a volatility structure σ(t,T)\sigma(t,T), the drift is determined. The entire arbitrage-free family of term structure models is parameterized by the volatility structure alone.

Vasicek is HJM with σ(t,T)=σe−κ(T−t)\sigma(t,T) = \sigma e^{-\kappa(T-t)} (exponentially decaying vols). CIR is HJM with state-dependent vol. The HJM framework unifies all these as special cases.


12.6 The LIBOR market model​

For cap/floor pricing, the natural objects are LIBOR forward rates L(t,Ti,Ti+1)L(t,T_i,T_{i+1}) for a tenor grid T0<T1<⋯<TnT_0 < T_1 < \cdots < T_n.

In the Brace–Gatarek–Musiela (BGM)/LIBOR market model, each LIBOR rate follows a lognormal process under its own forward measure (the Ti+1T_{i+1}-forward measure):

dLi(t)=μi(t) dt+σi(t) Li(t) dW~tTi+1,dL_i(t) = \mu_i(t)\,dt + \sigma_i(t)\,L_i(t)\,d\tilde W_t^{T_{i+1}},

where the drift μi\mu_i (under a common measure) is determined by the terminal correlation structure and the tenor basis.

This model is consistent with Black's formula for caps and floors, making calibration straightforward.


12.7 Bond option pricing in Vasicek​

A European call on P(t,T2)P(t,T_2) with strike KK and maturity T1<T2T_1 < T_2:

price=P(0,T2)N(d^1)−KP(0,T1)N(d^2),\text{price} = P(0,T_2)N(\hat d_1) - KP(0,T_1)N(\hat d_2), d^1,2=log⁡(P(0,T2)/KP(0,T1))σ^T1±σ^T12,\hat d_{1,2} = \frac{\log(P(0,T_2)/KP(0,T_1))}{\hat\sigma\sqrt{T_1}} \pm \frac{\hat\sigma\sqrt{T_1}}{2}, σ^2=σ2(1−e−κT1)2(1−e−2κ(T2−T1))2κ3T1.\hat\sigma^2 = \frac{\sigma^2(1-e^{-\kappa T_1})^2(1-e^{-2\kappa(T_2-T_1)})}{2\kappa^3 T_1}.

This is a Black-type formula for bond options, with σ^\hat\sigma being the effective vol of the forward bond price over [0,T1][0,T_1].

Negative rates and extensions

The Vasicek model allows negative rates, which was academic curiosity until 2014 when European central banks introduced negative policy rates. Gaussian models (Vasicek, Hull-White) became acceptable. The normal SABR model and shifted lognormal models are now standard for low-rate environments.

For a Vasicek model extended to fit the initial term structure (Hull–White extension): dr=(θ(t)−κr) dt+σ dWdr = (\theta(t) - \kappa r)\,dt + \sigma\,dW, where θ(t)\theta(t) is calibrated to match P(0,T)P(0,T) for all TT. This makes the model exact for today's curve while retaining mean-reverting dynamics.


12.8 Problems​

Problem 1: Vasicek yield

Show that the Vasicek yield y(τ)=−log⁡P(τ)/τy(\tau) = -\log P(\tau)/\tau satisfies y(∞)=θ−σ2/(2κ2)y(\infty) = \theta - \sigma^2/(2\kappa^2). Interpret: the long-run yield is the long-run rate minus a convexity adjustment.

Problem 2: HJM from Vasicek

Write the Vasicek forward rate as f(t,T)=−∂Tlog⁡P(t,T)f(t,T) = -\partial_T\log P(t,T) using the affine formula, and show it follows an HJM model with σ(t,T)=σe−κ(T−t)\sigma(t,T) = \sigma e^{-\kappa(T-t)}.

Problem 3: Affine check

For the two-factor Vasicek model with X=(r,v)\mathbf X = (r, v) where dr=κr(rˉ−r) dt+σr dWrdr = \kappa_r(\bar r - r)\,dt + \sigma_r\,dW^r and dv=κv(vˉ−v) dt+σv dWvdv = \kappa_v(\bar v - v)\,dt + \sigma_v\,dW^v, and rt=rt+vtr_t = r_t + v_t, show that bond prices are still exponential-affine and write the ODEs for A,Br,BvA, B_r, B_v.


12.9 Selected solutions​

Solution 1

As τ→∞\tau\to\infty: B(τ)/τ=(1−e−κτ)/(κτ)→0B(\tau)/\tau = (1-e^{-\kappa\tau})/(\kappa\tau)\to 0. The log-AA term gives:

log⁡A(τ)τ→(θ−σ22κ2)lim⁡τ→∞B(τ)−ττ−σ24κlim⁡τ→∞B(τ)2τ.\frac{\log A(\tau)}{\tau} \to \left(\theta-\frac{\sigma^2}{2\kappa^2}\right)\lim_{\tau\to\infty}\frac{B(\tau)-\tau}{\tau} - \frac{\sigma^2}{4\kappa}\lim_{\tau\to\infty}\frac{B(\tau)^2}{\tau}.

The second term vanishes since B(τ)2/τ→0B(\tau)^2/\tau\to 0. The first term uses B(τ)−τ→−1/κB(\tau)-\tau\to -1/\kappa... Working through the full limit gives y(∞)=θ−σ2/(2κ2)y(\infty) = \theta - \sigma^2/(2\kappa^2). The convexity adjustment σ2/(2κ2)\sigma^2/(2\kappa^2) arises from Jensen's inequality applied to the exponential discounting.


12.10 What this chapter gives you​

ModelSDEBond priceRates
VasicekOU for rrAe−BrAe^{-Br}, explicitCan be negative
CIROU with r\sqrt{r} volAe−BrAe^{-Br}, explicitAlways positive
HJMForward rate f(t,T)f(t,T)ImpliedNo-arbitrage drift condition
LMMLIBOR rates lognormalImpliedBlack's formula for caps

The next chapter leaves the world of analytical solutions and develops numerical methods for SDEs that cannot be solved in closed form.