K2E-B-Z-1 · Paper Note

CIR Term Structure via Kalman Filter

Created 2021-07-01Updated 2026-06-04slam / papers / z-cross-domain-kf

  • Description: Cross-domain Kalman-filter application — estimating the Cox-Ingersoll-Ross (CIR) interest-rate term structure via Kalman filter: affine term structure, CIR dynamics, state-space form, quasi-maximum-likelihood estimation
  • My Notion Note ID: K2E-B-Z-1
  • Created: 2021-07-01
  • Updated: 2026-06-04
  • License: Reuse welcome — please credit Yu Zhang and link back to yuzhang.io

Cross-domain note: Kalman filter applied to finance (interest-rate term structure) rather than SLAM. The shared machinery is the Kalman filter framework itself (see Gaussian Filters); the "state" being estimated is latent interest-rate factors rather than robot pose.


Table of Contents


1. Summary

Title: Multi-Factor Cox-Ingersoll-Ross Models of the Term Structure: Estimates and Tests from a Kalman Filter Model Authors: Ren-Raw Chen, Louis Scott Paper: Journal of Real Estate Finance and Economics, 27(2), 143–172 (2003)

The term structure of interest rates is driven by a few unobservable latent factors (short rate, etc.). Bond yields at different maturities are noisy linear observations of these factors. This is precisely a hidden-state estimation problem — the Kalman filter is a natural fit.

The paper shows how to set up the CIR (Cox-Ingersoll-Ross) multi-factor term-structure model in state-space form, apply an approximate nonlinear Kalman filter (the process noise covariance QtQ_t is state-dependent in CIR, making it technically nonlinear), and estimate model parameters via quasi-maximum-likelihood (QML) — maximizing the likelihood implied by the KF's Gaussian innovations even though the true CIR transition density is non-central chi-square.

SLAM analogy: latent factors ↔ robot state; observed yields ↔ sensor measurements; CIR transition ↔ motion model; yield equation ↔ observation model.


2. Key Contributions

  • State-space formulation of affine term structure: shows affine bond-pricing functions map directly to linear observation equations, making KF applicable
  • Gaussian approximation of CIR dynamics: the non-central chi-square transition is approximated by Gaussian (mean = conditional expectation, variance = conditional variance from CIR), enabling standard KF
  • Quasi-MLE via KF innovations: standard estimation procedure for latent-factor models when exact likelihood is unavailable
  • Multi-factor extension: jj independent CIR factors, with diagonal state-transition and covariance matrices

3. Method

3.1 Affine Term Structure

Instantaneous short rate rr follows an SDE:

dr=μ(r,t)dt+σ(r,t)dW(1)dr = \mu(r,t)\,dt + \sigma(r,t)\,dW \tag{1}

μ\mu: deterministic drift; σdW\sigma\,dW: diffusion; WW: Brownian motion. Zero-coupon bond price in an affine model:

P(t,T)=A(τ)exp(B(τ)X),τ=Tt(2)P(t,T) = A(\tau)\exp(-B(\tau)X), \quad \tau = T - t \tag{2}

XX: latent state factors; A(τ),B(τ)A(\tau), B(\tau): maturity-dependent functions; zero-coupon yield:

R(t,T)=lnP(t,T)τ=B(τ)XlnA(τ)τ(3)R(t,T) = -\frac{\ln P(t,T)}{\tau} = \frac{B(\tau)X - \ln A(\tau)}{\tau} \tag{3}

The yield is linear in XX — enabling a linear measurement equation for the KF.

3.2 CIR Dynamics

Cox-Ingersoll-Ross (1985) — square-root affine diffusion:

dr=k(θr)dt+σrdW(4)dr = k(\theta - r)\,dt + \sigma\sqrt{r}\,dW \tag{4}

kk: mean-reversion speed; θ\theta: long-run mean; σr\sigma\sqrt{r}: square-root volatility (keeps r0r \geq 0; volatility proportional to r\sqrt{r}).

Under risk-neutral / arbitrage-free measure (subtract market price of risk λr\lambda r from drift):

dr=(k(θr)λr)dt+σrdW(5)dr = \bigl(k(\theta-r) - \lambda r\bigr)\,dt + \sigma\sqrt{r}\,dW \tag{5}

Closed-form bond price P(t,T)=A(t,T)eB(t,T)rP(t,T) = A(t,T)e^{-B(t,T)r} with γ=(k+λ)2+2σ2\gamma = \sqrt{(k+\lambda)^2 + 2\sigma^2}.

3.3 State-Space Form

Transition (prediction) — Gaussian approximation of the CIR conditional density:

Xt=Φ(Ψ)Xt1+c(Ψ)+ηt(6)X_t = \Phi(\Psi)\,X_{t-1} + c(\Psi) + \eta_t \tag{6}

Φ=diag(ekjΔt)\Phi = \text{diag}(e^{-k_j\Delta t}) (diagonal for jj independent factors); cj=θj(1ekjΔt)c_j = \theta_j(1 - e^{-k_j\Delta t}); ηtN(0,Qt)\eta_t \sim \mathcal{N}(0, Q_t) with QtQ_t diagonal (factor-specific CIR conditional variance ξj\xi_j).

Measurementnn observed yields:

Rt=Z(Ψ)Xt+d(Ψ)+ϵt,ϵtN(0,H)(7)R_t = Z(\Psi)\,X_t + d(\Psi) + \epsilon_t, \quad \epsilon_t \sim \mathcal{N}(0, H) \tag{7}

RtRnR_t \in \mathbb{R}^n: yields at nn maturities; ZRn×jZ \in \mathbb{R}^{n\times j}: loading matrix (Zij=B(j)(τi)/τiZ_{ij} = B^{(j)}(\tau_i)/\tau_i, row ii = maturity τi\tau_i, column jj = factor jj); dRnd \in \mathbb{R}^n: constant (di=lnA(τi)/τid_i = -\ln A(\tau_i)/\tau_i); HH: diagonal measurement noise. Hyperparameter vector Ψ=(θj,kj,σj,λj,hi)\Psi = (\theta_j, k_j, \sigma_j, \lambda_j, h_i).

3.4 Kalman Filter Recursion

Prediction step:

X^tt1=ΦX^t1t1+c(8)\hat{X}_{t|t-1} = \Phi\,\hat{X}_{t-1|t-1} + c \tag{8} Ptt1=ΦPt1t1ΦT+Qt(9)P_{t|t-1} = \Phi\,P_{t-1|t-1}\,\Phi^T + Q_t \tag{9}

Measurement update (same five equations as any linear KF — see Gaussian Filters §2):

vt=RtZX^tt1d(innovation)(10)v_t = R_t - Z\hat{X}_{t|t-1} - d \quad \text{(innovation)} \tag{10} Ft=ZPtt1ZT+H(innovation covariance)(11)F_t = Z\,P_{t|t-1}\,Z^T + H \quad \text{(innovation covariance)} \tag{11} Kt=Ptt1ZTFt1(Kalman gain)(12)K_t = P_{t|t-1}\,Z^T\,F_t^{-1} \quad \text{(Kalman gain)} \tag{12} X^t=X^tt1+Ktvt,Pt=Ptt1KtZPtt1(13)\hat{X}_t = \hat{X}_{t|t-1} + K_t v_t, \qquad P_t = P_{t|t-1} - K_t Z\,P_{t|t-1} \tag{13}

3.5 Quasi-Maximum-Likelihood Estimation

The true CIR transition density is non-central chi-square — no closed-form likelihood. The KF-implied Gaussian approximation gives an innovation-based log-likelihood:

lnL=t[n2ln(2π)12lnFt12vtTFt1vt](14)\ln L = \sum_t \left[-\frac{n}{2}\ln(2\pi) - \frac{1}{2}\ln|F_t| - \frac{1}{2}v_t^T F_t^{-1} v_t\right] \tag{14}

Maximize over Ψ\Psiquasi-MLE (quasi because the KF Gaussian is an approximation of the true non-Gaussian density). QML is consistent and asymptotically normal under mild regularity conditions.


4. Experiments & Results

The paper estimates a two-factor CIR model on U.S. Treasury yields:

  • Data: weekly observations, 8 maturities (3-month to 10-year), 1970–1999 (approximately 1,500 weeks)
  • Parameters estimated: k1,k2,θ1,θ2,σ1,σ2,λ1,λ2k_1, k_2, \theta_1, \theta_2, \sigma_1, \sigma_2, \lambda_1, \lambda_2 (CIR dynamics) + h1,,h8h_1, \ldots, h_8 (measurement noise per maturity)

Key findings:

  • Two factors explain ~99% of yield variation (consistent with prior literature)
  • Mean-reversion speeds k1,k2k_1, k_2 estimated on the order of 0.1–0.5 per year
  • Measurement noise variances hih_i are small but nonzero — the model doesn't fit perfectly (consistent with the "approximately linear" bond pricing)
  • Model-implied yield curves match observed curves well in-sample; out-of-sample fit degrades for far-horizon yields

Statistical tests: the paper runs specification tests (likelihood-ratio, parameter stability) confirming the two-factor CIR is a reasonable but not perfect description of the data. Three or more factors further improve fit at a parsimony cost.


5. Ablation & Discussion

  • One-factor vs multi-factor: single-factor CIR (the classic 1985 model) fits short-end rates well but fails to capture the slope dynamics of the yield curve; multi-factor models are necessary
  • Gaussian approximation quality: the CIR conditional variance is relatively small at typical interest-rate levels — the Gaussian approximation is adequate, though exact MCMC-based estimation gives slightly different parameter estimates
  • Cross-section vs time-series: the KF approach exploits both dimensions simultaneously — unlike cross-section regression (which can't identify risk premia) or pure time-series (which can't use maturity structure)
  • Measurement noise necessity: without H0H \neq 0 the system is over-determined (more yields than factors), so some noise allocation is mathematically required and economically justified (bid-ask spreads, reporting errors)

6. Strengths / Limitations / Future Work

Strengths:

  • Principled state-space framework: the KF provides optimal linear estimates of latent factors
  • QML is computationally cheap (no MCMC) and well-understood asymptotically
  • Direct analogy to SLAM: demonstrates KF universality across domains

Limitations:

  • Gaussian approximation of CIR dynamics introduces bias in parameter estimates at extreme interest-rate levels (near zero or very high)
  • Linear yield equation is only exactly valid for affine models; non-affine (stochastic volatility) models require extended/unscented KF
  • The CIR model imposes positivity (r0r \geq 0) which the Gaussian KF does not enforce — near-zero rates can produce negative filter outputs

Extensions:

  • Affine jump-diffusion models (adds Poisson jumps to drift): still quasi-tractable with KF
  • Stochastic volatility models (Heston-type): require EKF or particle filter
  • The same KF framework applies to virtually any affine term-structure model (Vasicek, Hull-White, etc.)

References

Primary Chen R.-R., Scott L. (2003). Multi-Factor Cox-Ingersoll-Ross Models of the Term Structure: Estimates and Tests from a Kalman Filter Model. J. Real Estate Finance Econ., 27(2). DOI
CIR model Cox J.C., Ingersoll J.E., Ross S.A. (1985). A Theory of the Term Structure of Interest Rates. Econometrica, 53(2).
KF for term structure Geyer A.L.J., Pichler S. (1999). A State-Space Approach to Estimate and Test Multifactor CIR Models. J. Financial Research.
Affine term structure Duffie D., Kan R. (1996). A Yield-Factor Model of Interest Rates. Mathematical Finance.
KF framework See Gaussian Filters (prediction/update, innovation, inversion lemma)