Quant Memo
Core

Discount Factors and Curve Interpolation

A discount factor answers one question: how much is one dollar paid on a specific future date worth today. Curves only give you discount factors at a handful of maturities, so every date in between has to be interpolated — and the interpolation choice can move a bond's price.

Prerequisites: The Time Value of Money, Yield Curve Basics

Suppose you're owed $1,000 in exactly 4 years and 7 months. What is that promise worth today? You need a single number — a discount factor — that shrinks any future dollar down to its present value. The trouble is that the market only quotes clean prices at a handful of anchor maturities (say, 1, 2, 5, 10, 30 years), so almost every cash flow you actually need to value lands between the points you have data for.

Think of it like a road trip where you only have GPS coordinates every 50 miles. You know exactly where you are at each checkpoint, but to answer "where was I at mile 37?" you have to draw a line — straight, curved, smooth — connecting the checkpoints you do have. The line you draw is a modeling choice, and different reasonable choices give different answers.

A discount factor curve is built from a sparse set of market quotes and a dense set of assumptions about what happens between them. The interpolation method is not a technicality — it changes the price and hedge of every bond that falls between two anchor points.

The discount factor

The discount factor DF(t)DF(t) for time tt converts a future dollar into today's dollars:

DF(t)=1(1+r(t))tDF(t) = \frac{1}{(1 + r(t))^{t}}

Here r(t)r(t) is the annualized zero-coupon rate for maturity tt, and tt is time in years. In words: a dollar received tt years from now is worth DF(t)DF(t) dollars today, and DF(t)DF(t) falls as either the rate or the horizon rises — money further away, or discounted harder, is worth less now.

The market gives you DF(t)DF(t) (equivalently r(t)r(t)) at a short list of maturities. Everything else needs interpolation.

Two interpolation choices, two different answers

Linear on rates: draw a straight line between known zero rates and use that. Simple, but it produces a forward rate curve — the rate implied between two points — that jumps abruptly at every anchor date, which is unrealistic and creates artificial kinks in forward-starting instruments.

Log-linear on discount factors: interpolate the logarithm of DF(t)DF(t) linearly instead. This is equivalent to assuming a constant (piecewise-flat) forward rate between anchors, which is smoother in the quantity that actually matters for pricing — the forward rate — and is the market-standard default.

maturity (years) discount factor 2y anchor 10y anchor log-linear (curved) linear on rates (straight)
Between the same two market anchors, linear-on-rates and log-linear interpolation trace visibly different paths — and price any bond maturing in between differently.

Worked example: pricing a bond between anchors

The curve has DF(2)=0.9231DF(2) = 0.9231 and DF(10)=0.6139DF(10) = 0.6139. You need DF(6)DF(6), the midpoint, to value a coupon paid in 6 years.

Log-linear: interpolate lnDF\ln DF linearly. ln(0.9231)=0.0800\ln(0.9231) = -0.0800, ln(0.6139)=0.4881\ln(0.6139) = -0.4881. Halfway: 0.0800+0.5×(0.4881(0.0800))=0.2841-0.0800 + 0.5 \times (-0.4881 - (-0.0800)) = -0.2841. Then DF(6)=e0.2841=0.7527DF(6) = e^{-0.2841} = 0.7527.

Linear on rates: back out zero rates, r(2)=(1/0.9231)1/21=4.05%r(2) = (1/0.9231)^{1/2} - 1 = 4.05\% and r(10)=(1/0.6139)1/101=5.00%r(10) = (1/0.6139)^{1/10} - 1 = 5.00\%. Halfway rate is 4.53%4.53\%, giving DF(6)=1/(1.0453)6=0.7628DF(6) = 1/(1.0453)^6 = 0.7628.

The two methods disagree by about 1 point in the discount factor — on a $10 million cash flow, that is roughly $100,000 of present value on one coupon alone, purely from a modeling choice.

What this means in practice

Every derivatives desk, swap curve, and bond pricer runs on an interpolated discount curve, and the choice of interpolator is a deliberate, documented decision — not an afterthought. Log-linear on discount factors (equivalently, piecewise-flat forwards) is the industry default because it keeps forward rates well-behaved, but exotic desks sometimes use cubic splines for extra smoothness in the forward curve, trading away some local stability for global smoothness.

The classic mistake is interpolating the discount factor itself (or the price) linearly rather than the rate or its logarithm. Discount factors are exponentially decaying, not straight lines, so naive linear interpolation on DF(t)DF(t) directly systematically overstates present value between anchors — a small, silent, and completely avoidable pricing error.

Key terms

  • Discount factor DF(t)DF(t) — the present value of one dollar paid at time tt.
  • Zero rate r(t)r(t) — the annualized rate implied by DF(t)DF(t) for a single maturity.
  • Forward rate — the rate implied between two points on the curve, sensitive to the interpolation method.
  • Anchor point — a maturity where the market actually quotes a rate or price.

Related concepts

Practice in interviews

Further reading

  • Hull, Options, Futures, and Other Derivatives (ch. 4)
  • Hagan & West, Interpolation Methods for Curve Construction (2006)
ShareTwitterLinkedIn