Spot Rates, Forward Rates & the Term Structure

The term structure assigns a spot rate \(s_t\) to every maturity \(t\); cash flows are valued by discounting each at its own spot rate, and the implied one-year forward rate f satisfies \((1+s_{t+1})^{t+1}=(1+s_t)^t(1+f)\).

By the end you'll be able to compute a forward rate from two spot rates, value a cash-flow stream off the spot curve, and explain why an upward-sloping curve pushes forwards above spots.

Predict: when the spot curve slopes upward, does the one-year forward rate sit above or below the spot rate? Raise a later spot rate (try s4) and check.

Drag the four spot rates \(s_1\)–\(s_4\) to reshape the yield curve (solid, accent color). The dashed segments show the implied one-year forward rates, computed from \((1+s_{t+1})^{t+1}=(1+s_t)^t(1+f)\). A sample cash flow of 100 at each maturity is valued below, each payment discounted at its own maturity's spot rate. Hover or focus any point for exact readouts.

PV of 100 at each of t=1..4, each discounted at its own spot rate: 100/1.03 + 100/1.04² + 100/1.05³ + 100/1.06⁴ = 355.14

The curve is upward-sloping, so every forward rate sits above the spot rate that starts its period.

Spot curve and implied one-year forwards — drag the sliders above
spot rate sₜ one-year forward fₜ

Interest rates aren't one number — they depend on how long money is committed. The spot curve records that dependence, and the no-arbitrage link between consecutive spot rates pins down the forward rate for the year in between.

Formal

The spot rate \(s_t\) is the annual effective yield on a zero-coupon investment paying 1 at time t, so its price today is \(P(t) = 1/(1+s_t)^t\). A stream of cash flows \(C_t\) is valued by discounting each flow at its own spot rate: \(\text{PV} = \sum_t C_t/(1+s_t)^t\) — the same discount-each-flow-by-its-own- factor rule you already know, just with a rate that varies by maturity instead of one flat rate. The one-period forward rate \(f\) is fixed by no-arbitrage: investing straight to time \(t+1\) must match investing to time \(t\) and then rolling over at the forward rate, so \((1+s_{t+1})^{t+1} = (1+s_t)^t(1+f)\).

Applied

Picture pricing a two-year bond's cash flows against the curve you see above: the coupon at year 1 gets discounted at \(s_1\), and the coupon-plus-redemption at year 2 gets discounted at \(s_2\) — never at one blended rate, unless the curve happens to be flat. The forward rate is the rate a bank would quote today for a one-year loan starting a year from now, locked in by the same no-arbitrage argument; it is today's break-even rate, not a forecast of where the spot rate will actually land.

Worked example

\(s_1 = 5.00\%\), \(s_2 = 6.00\%\). Forward: \((1.06)^2 = (1.05)(1+f)\), so \(1+f = 1.1236/1.05 = 1.070095\), giving \(f \approx\) 7.01%. Valuing 100 at \(t=1\) and 100 at \(t=2\): \(100/1.05 + 100/1.06^2 = 95.238 + 89.000 =\) 184.24, each payment discounted at its own maturity's spot rate.

Your turn

Same setup, later maturities: \(s_2 = 4.50\%\), \(s_3 = 7.00\%\). Find \(f_{2,3}\). \((1.07)^3 = (1.045)^2(1+f)\), so \(1.07^3 = 1.225043\) and \(1.045^2 = 1.092025\). \(1+f = 1.225043/1.092025 = 1.121809\). Now finish it: \(f =\) ____

Reveal the answer

\(f = 1.121809 - 1 = 0.121809 \approx\) 12.18% — well above both \(s_2\) and \(s_3\), because the curve keeps rising from year 2 to year 3. Set s2 near 4.5% and s3 near 7% on the sliders above and check the dashed segment's label.

More info — why an upward-sloping curve pushes forwards above spots

Rewrite the no-arbitrage identity as \((1+f) = (1+s_{t+1})^{t+1}/(1+s_t)^t\). \((1+s_{t+1})^{t+1}\) grows the longer maturity's rate over one extra year compared to \((1+s_t)^t\); if \(s_{t+1} > s_t\), the numerator is inflated by both a higher rate AND one more year of compounding, so the ratio — the forward factor — has to overshoot \(s_{t+1}\) to make up the difference. Symmetrically, an inverted curve (\(s_{t+1} < s_t\)) forces the forward rate below both spots, as you saw in the quiz below. See the Wikipedia forward-rate link in Dive deeper for the general derivation.

Check your understanding

Question 1 of 4

Given \(s_3 = 6.00\%\) and \(s_4 = 6.50\%\), find the one-year forward rate from year 3 to year 4, \(f_{3,4}\).

Question 2 of 4

The spot curve is completely flat: \(s_t\) is the same constant for every \(t\). What must the one-year forward rate \(f_{t,t+1}\) equal?

Question 3 of 4

The curve is inverted: \(s_1 = 6.00\%\) and \(s_2 = 5.00\%\). Relative to the two spot rates, where does \(f_{1,2}\) fall?

Question 4 of 4

A stream pays 100 at \(t=1\) and 100 at \(t=2\), with \(s_1 = 4.00\%\) and \(s_2 = 5.00\%\). Discounting each flow by its own factor, what is the present value?

Recap

  • The spot rate \(s_t\) is the yield on a zero-coupon investment maturing at t; \(P(t) = 1/(1+s_t)^t\).
  • Value a cash-flow stream off the curve by discounting each flow at its own spot rate: \(\text{PV} = \sum_t C_t/(1+s_t)^t\).
  • The one-year forward rate satisfies \((1+s_{t+1})^{t+1} = (1+s_t)^t(1+f)\), so \(f = (1+s_{t+1})^{t+1}/(1+s_t)^t - 1\).
  • An upward-sloping spot curve implies forwards above spots; an inverted curve implies forwards below spots. A flat curve makes forward equal spot.

Dive deeper

Sources

  • Spot Rates, Forward Rates, and the Term Structure