The Analyst's Path

Binomial interest rate tree

A binomial rate tree is a lattice of one-period interest rates. It is calibrated when it reprices the benchmark curve's own instruments exactly, so an option-free bond priced on the tree matches its value off the spot curve. If that check fails, nothing built on the tree can be trusted, such as the OAS or the option value. Calibration fixes the level of rates at each date. Volatility is a separate input you supply, and it is the largest source of model risk.

3 min readPart of Embedded Options, OAS & Structured ProductsOpen in course mode

Advertisement

A binomial rate tree is a lattice of one-period interest rates. From any node, the rate either moves up or down over the next period; the tree is recombining, so an up-then-down move lands on the same node as a down-then-up move, which keeps the node count linear rather than exponential. We use two structural conventions throughout, both standard:

Convention 1: lognormal spacing. Within a time step, adjacent node rates differ by a fixed multiplicative factor: r[t, i] = r[t, 0] × e^(2iσ), where i counts up-moves and σ is the assumed annualised rate volatility. This keeps rates positive and makes spacing proportional, matching the empirical fact that rates are more volatile in absolute terms when high. At σ = 15% with annual steps the ratio between adjacent nodes is e^(2×0.15) = 1.349859: checkable on any row.

Convention 2: 50/50 risk-neutral probabilities. Each branch has probability one-half. This is not a forecast; it is a modelling convention, and all the drift information lives in the calibrated level of each time step. (DV1.02 explains why risk-neutral valuation works; take it as given here.)

Advertisement

What does it mean to calibrate a rate tree?

Now the crucial part. A tree is worthless until it is calibrated, and "calibrated" has an exact, testable meaning: it must reprice the benchmark curve's own instruments perfectly. The procedure is recursive. r[0,0] is the one-year benchmark rate. To find t = 1, search for the single unknown r[1,0] (the other follows from the spacing) such that the two-year par bond rolled backward through the two-step tree returns exactly 100. Holding steps 0 and 1 fixed, search for r[2,0] so the three-year par bond prices at 100. And so on, one unknown, one constraint, per step.

The result is an arbitrage-free tree: it reproduces the entire benchmark discount curve, so any option-free bond priced on the tree gets the identical value it would get off the spot curve. That identity is your first and most important verification. In this module's US tree the straight 5.50% four-year note prices at 102.144691 on the tree and 102.144691 off the bootstrapped spot curve, a difference of 2 × 10⁻¹³. If that check fails, nothing downstream is trustworthy: not the OAS, not the effective duration, not the option value.

Does calibration pin down volatility?

What the tree does not pin down is σ. The par curve constrains the level of rates at every date and says nothing about their dispersion. Volatility is an input you supply (from swaption implied vols, a historical estimate, or a house convention) and it is the single largest source of model risk here. Section 4.4 prices that risk in basis points.

Advertisement

Part of the course

This page is part of Embedded Options, OAS & Structured Products (FI1.04), in Phase 12: Finance Plus, AI and the quant-code track. The module's flashcards and its quiz are in the app.