◆Financial Derivatives — In Progress Please await announcements of new courses and upcoming batches. Course Updates →
The Mountain Path Academy

The Term Structure
of Interest Rates

Yield curve shapes, spot and forward rates, term structure theories and bootstrapping — from first principles to Excel.

By Prof. V. Ravichandran · Fixed Income Securities · CFA / FRM / MBA · 14 learning sections · 10-sheet Excel companion · Interactive calculator

THE MOUNTAIN PATH ACADEMY · FIXED INCOME
Term Structure at a Glance
One observation date · Multiple maturities · Three connected rate curves
3 CURVES
Spot discounts. Par sets the coupon. Forward connects future intervals.

An implied forward rate is fixed from today’s prices; it is not a guaranteed future spot rate.

1-year spot
4.0000%
D(1) = 0.961538
2-year spot
5.0252%
D(2) = 0.906593
3-year spot
5.8142%
D(3) = 0.844050
Year 2 forward
6.0606%
Year 1 → Year 2
Year 3 forward
7.4100%
Year 2 → Year 3
6% bond price
100.678
Three-year bond per 100 face
BUILD THE CURVE

Coupon-bond prices → discount factors → spot rates → implied forwards → bond valuation.

Annual coupons and annual effective compounding. Par yields: 4.00%, 5.00%, 5.75%.
THE TEACHING POINT

Interpret the slope through expectations, risk premia and maturity-specific demand.

Use the Excel companion to change inputs and observe the linked results.

Illustrative teaching data · Annual effective rates · Full precision retained in Excel

The term structure: one date, many maturities

Why does lending for ten years command a different rate from lending for one year? The term structure of interest rates describes the relationship, observed at a single point in time, between interest rates and maturity for comparable instruments. Its graphical representation is a yield curve.

For precise valuation, the fundamental curve is the zero-coupon or spot curve: each maturity has its own discount rate. A curve of coupon-bond yields to maturity is useful for quotation but is not identical to the spot curve.

A curve is a snapshot across maturities. A time series follows one maturity across different observation dates.

Four rates—and the discount factor

ConceptMeaningPrincipal use
Spot rate ytRate today for a single payment at time tDiscount an individual cash flow
Forward rate ft,TRate fixed today for the interval from t to TPrice future borrowing or lending
Yield to maturity zSingle IRR equating a bond’s cash flows to its priceQuote and compare bonds
Par yield cnCoupon rate making an n-year bond worth parDescribe hypothetical par instruments

All worked examples assume annual coupons, annual effective compounding, valuation on a coupon date and face value 100. Figures are illustrative, not live quotations.

D(t) = 1 / (1 + yt)t
Zero-coupon price = Face value × D(t)
Coupon-bond price = Σ CFtD(t)
Price = Σ CFt / (1 + z)t
cn = [1 − D(n)] / Σ D(t)

The par-yield formula above assumes annual payments at years 1 through n. YTM is a summary IRR; it does not supply a separate market discount rate for each coupon. Earning that YTM as a compound realised return requires holding to maturity, contractual payment and reinvesting coupons at that yield.

Reading the shapes of the yield curve

Maturity →Yield
Upward
Maturity →Yield
Inverted
Maturity →Yield
Flat
Maturity →Yield
Humped
ShapePatternPossible explanation
Upward slopingLong yields exceed short yieldsExpected rate increases, positive term premium, or both
InvertedShort yields exceed long yieldsExpected easing, strong demand for long bonds, or lower term premia
FlatSimilar yields across maturitiesStable expectations, or offsetting expectations and premia
HumpedMiddle maturities yield mostExpected tightening followed by easing, or maturity-specific supply and demand

Why curves take different shapes: four theories

TheoryCore ideaInterpretation and limitation
Pure expectationsIn its simple teaching form, forwards are unbiased expectations of future short rates; there is no term premium.Rising forwards suggest expected tightening. The assumption overlooks changing compensation for risk.
Liquidity preferenceInvestors prefer shorter commitments and require a positive premium for longer exposure.An upward slope can exist with stable expected short rates. A sufficiently large expected fall in short rates can still produce inversion.
Market segmentationSupply and demand within maturity buckets largely set their yields.Explains local humps and institutional demand. Strict separation understates substitution and relative-value trading.
Preferred habitatInvestors have preferred maturities but move elsewhere for adequate compensation.Combines maturity preferences with substitution. Habitat demand and required premia are difficult to estimate separately.

A pension fund matching distant payments may prefer long bonds; a treasury desk managing near-term cash may prefer short instruments. Such preferences can influence yields alongside expectations.

Long-term yield ≈ average expected future short rates + term premium

This is an explanatory approximation, not the exact compounded no-arbitrage identity. The term premium is unobservable and model-estimated; in broader modern models it need not always be positive. Avoid adding an unexplained liquidity premium directly to a compounded accumulation factor.

Spot-to-forward rates: the no-arbitrage bridge

Compare investing to T directly with investing to t and simultaneously locking the remaining interval at a forward rate. With matched cash flows and consistent conventions, both strategies must have the same accumulation.

(1 + yT)T = (1 + yt)t × (1 + ft,T)T−t
ft,T = [(1 + yT)T / (1 + yt)t]1/(T−t) − 1
ft,T = [D(t) / D(T)]1/(T−t) − 1

No-arbitrage links today’s tradable prices. Equating a forward rate to an expected future realised rate requires an additional expectations assumption. Rolling into an unknown future spot rate is not a locked investment strategy.

Worked example: the one-year rate starting next year

Given y1 = 5.00% and y2 = 5.80%:

f1,2 = 1.058² / 1.05 − 1
= 1.119364 / 1.05 − 1
= 6.6061% ≈ 6.61%

Investing 100 for two years produces 111.9364. Investing for one year produces 105; lending that amount for the next year at the locked forward rate also produces 111.9364.

If an executable equivalent forward rate were 7%, an idealised arbitrage would borrow 100 for two years, invest for one year, and lock forward lending of 105 at 7%. At year two, 112.35 is received against 111.9364 owed: a surplus of 0.4136 before costs. This assumes frictionless access, matching credit exposure and no funding constraints.

Bootstrapping: recover spot rates from coupon bonds

Coupon-bond prices contain information about several payment dates. Bootstrapping strips away cash flows already valued using shorter discount factors, leaving the next unknown factor.

MaturityAnnual couponPriceFinal payment
1 year4.00100104.00
2 years5.00100105.00
3 years5.75100105.75

Step 1 · Solve the one-year factor

100 = 104D(1)
D(1) = 100/104 = 0.961538462
y1 = D(1)−1 − 1 = 4.0000%

Step 2 · Strip the first coupon from the two-year bond

100 = 5D(1) + 105D(2)
D(2) = [100 − 5(0.961538462)]/105
= 0.906593407
y2 = D(2)−1/2 − 1 = 5.025249%

Step 3 · Strip both earlier coupons from the three-year bond

100 = 5.75D(1) + 5.75D(2) + 105.75D(3)
100 = 5.528846154 + 5.212912088 + 105.75D(3)
D(3) = 89.258241758 / 105.75 = 0.844049567
y3 = D(3)−1/3 − 1 = 5.814215%

Retain full precision internally and round only displayed answers. These three securities reprice to 100 using the derived factors.

Practise it in Excel with Goal Seek

A practical way to bootstrap a real-looking curve: six government securities (two T-bills and four semi-annual G-secs). For each bond, price = PV of its cash flows; the earlier spot rates are already known, so Excel’s Goal Seek finds the one unknown rate. Each bond block tells you exactly which cell to set and which to change, and an answer key checks your six spot rates.

Par, spot and forward curves compared

MaturityPar yieldSpot rateOne-year intervalForward rate
1 year4.0000%4.0000%Today → Year 14.0000%*
2 years5.0000%5.0252%Year 1 → Year 26.0606%
3 years5.7500%5.8142%Year 2 → Year 37.4100%

*The first interval starts today, so its rate is the one-year spot rate.

f1,2 = D(1)/D(2) − 1 = 6.060606%
f2,3 = D(2)/D(3) − 1 = 7.409972%

In this example, the rising forward rates pull successive spot rates upward, while earlier low-rate coupons keep par yields below corresponding spot yields. This ordering is not a universal rule for every possible curve.

Apply the curve to price a different bond

Consider a three-year bond paying a 6% annual coupon with face value 100. Discount each payment at its own maturity factor:

YearCash flowDiscount factorPresent value
160.9615384625.769231
260.9065934075.439560
31060.84404956789.469254
Price = 6D(1) + 6D(2) + 106D(3) = 100.678045

The bond trades above par because its 6% coupon exceeds the three-year par coupon of 5.75%. Applying the three-year spot rate to every coupon would ignore the term structure.

Interactive forward-rate laboratory

Change annual effective spot rates and dates. The calculator derives the implied annual effective forward rate.

MONEY-MARKET FORWARDS

Implied forward rates from simple money-market quotations

Money-market deposit rates are often quoted as annualised simple-interest rates. For a deposit lasting d days on a basis B, the maturity value of 1 is 1 + R × d/B. This differs from the annual-effective accumulation (1 + y)t used earlier. Identify the instrument’s quotation and day-count convention before calculating.

Scope: These examples use hypothetical simple deposit rates with the same currency, credit basis, value date and compatible borrowing/lending assumptions. They do not treat a Treasury-bill bank-discount quotation or a compounded overnight benchmark as a simple deposit rate without conversion. Actual instrument conventions govern; a currency alone does not determine every product’s convention.

1. Define the three accrual fractions

SymbolMeaning
Rt, RTAnnualised simple spot deposit rates from today to t and T
αt, αTAccrual fractions from today to each maturity
αt,TAccrual fraction for the future interval t to T
Ft,TAnnualised simple forward rate for that interval

With one consistent Actual/B convention: αt = dt/B, αT = dT/B and αt,T = (dT − dt)/B. Use actual calendar-day counts between the applicable dates, rather than assuming every month has 30 days.

2. Derive the no-arbitrage forward rate

Invest directly from today to T, or invest to t and lock the reinvestment rate from t to T today. Equal final cash flows require:

1 + RTαT = (1 + Rtαt)(1 + Ft,Tαt,T)
Ft,T = {[(1 + RTαT)/(1 + Rtαt)] − 1}/αt,T
D(t) = 1/(1 + Rtαt)
Ft,T = [D(t)/D(T) − 1]/αt,T

The ratio determines the growth factor over the forward interval. Subtract 1 to obtain the interval return; divide by its accrual fraction to annualise it on a simple basis.

3. Worked example: 90 days to 180 days on Actual/360

InputValue
90-day simple spot rate5.00% p.a.
180-day simple spot rate5.80% p.a.
Day-count basisActual/360
Forward intervalDay 90 to Day 180: 90 days
Initial investment$10,000,000

This resembles a “3 × 6” forward illustration, but 90 and 180 days are explicit teaching assumptions. Actual 3-month and 6-month maturities need date and business-day adjustments.

Step A — Accrual fractions
αt = 90/360 = 0.25
αT = 180/360 = 0.50
αt,T = 90/360 = 0.25

Step B — Spot accumulation factors
A(t) = 1 + 0.05 × 0.25 = 1.0125
A(T) = 1 + 0.058 × 0.50 = 1.0290

Step C — Forward accumulation and interval return
A(T)/A(t) = 1.0290/1.0125 = 1.0162962963
Forward-period return = 1.0162962963 − 1 = 1.62962963%

Step D — Annualise on Actual/360
F = 0.0162962963/0.25
= 0.0651851852 = 6.51851852% p.a.
Interpretation: 6.5185% is an annualised simple quote. The return over this 90-day future interval is 1.6296%. It is today’s implied forward rate, not a guaranteed future deposit rate.

4. Reconcile both investment strategies

StepCalculationAmount
Direct investment to Day 180$10,000,000 × 1.029$10,290,000
Investment matures on Day 90$10,000,000 × 1.0125$10,125,000
Interest on that amount for the forward interval$10,125,000 × 6.51851852% × 90/360$165,000
Rolled investment at Day 180$10,125,000 + $165,000$10,290,000
Difference between strategies$10,290,000 − $10,290,000$0

The forward reinvestment principal here is $10,125,000, because it includes the first deposit’s interest. It is not the original $10,000,000. A forward loan with a separately specified notional has the same implied rate, but different dollar interest.

5. Actual/365: two different comparisons

A. Recompute while keeping the numerical spot quotations at 5.00% and 5.80%. Now both spot growth factors change:

αt = 90/365 = 0.2465753425
αT = 180/365 = 0.4931506849
αt,T = 90/365 = 0.2465753425
A(t) = 1 + 0.05 × 90/365 = 1.0123287671
A(T) = 1 + 0.058 × 180/365 = 1.0286027397
F = [(1.0286027397/1.0123287671) − 1] × 365/90
= 6.51962111% p.a. on Actual/365

B. Re-express the original Actual/360 forward on Actual/365 while preserving its cash flows. The forward-period return remains unchanged, so:

F365 × 90/365 = F360 × 90/360
F365 = F360 × 365/360
= 6.51851852% × 365/360
= 6.60905350% p.a.

These answers differ because comparison A changes the underlying spot accumulation factors; comparison B changes only the quotation basis. To preserve all the original spot cash flows as well, convert both spot quotes by the same 365/360 factor before recomputing.

6. Additional illustration in rupees: 91 to 182 days

Assume simple spot rates of 6.50% for 91 days and 7.00% for 182 days, both on Actual/365. These are hypothetical rates, not current Indian market quotations.

A(91) = 1 + 0.065 × 91/365 = 1.0162054795
A(182) = 1 + 0.070 × 182/365 = 1.0349041096
F91,182 = [(1.0349041096/1.0162054795) − 1] × 365/91
= 7.38039713% p.a.

₹1 crore invested to Day 91 → ₹10,162,054.79
Forward-period interest → ₹186,986.30
Rolled amount on Day 182 → ₹10,349,041.10
Direct investment: ₹10,000,000 × 1.0349041096 → ₹10,349,041.10

7. Try it in Excel

The whole calculation is one line:

Forward = [ (1 + Rlong × tlong) ÷ (1 + Rshort × tshort) − 1 ] × basis ÷ forward days

Here t = days ÷ basis (360 or 365). If you prefer months, use t = months ÷ 12 and finish with × 12 ÷ forward months.

ExampleInputsPlug inForward
Act/3605.00% for 90 days, 5.80% for 180 days[(1 + 0.058 × 180/360) ÷ (1 + 0.05 × 90/360) − 1] × 360/906.5185%
Months5.00% for 3 months, 5.80% for 6 months[(1 + 0.058 × 6/12) ÷ (1 + 0.05 × 3/12) − 1] × 12/36.5185%
Act/365 (₹)6.50% for 91 days, 7.00% for 182 days[(1 + 0.07 × 182/365) ÷ (1 + 0.065 × 91/365) − 1] × 365/917.3804%

A full money-market curve. Apply the same formula to each pair of neighbouring tenors (Act/365, illustrative rates):

TenorDaysSimple rateGrowth 1 + R × d/365Forward periodForward daysImplied forward
1M305.00%1.004110Today → 1M305.0000%
3M915.20%1.0129641M → 3M615.2767%
6M1825.50%1.0274253M → 6M915.7258%
9M2735.70%1.0426336M → 9M915.9372%
12M3655.90%1.0590009M → 12M926.2280%

Example, 3M → 6M: (1.027425 ÷ 1.012964 − 1) × 365/91 = 5.7258%. Because the curve slopes upward, each forward sits above the deposit rate for the longer tenor.

In Excel: the Companion’s Money Market sheet has exactly these inputs (short rate, short days, long rate, long days, basis) and one formula: =((1+C13*C14/C15)/(1+C11*C12/C15)-1)*C15/C17, where C17 = long days − short days. Below it, the same sheet builds this five-tenor curve with its implied forwards and a chart; change any rate or day count to see the forwards move.

8. Common errors to avoid

  • Using the annual-compounding formula directly on simple deposit quotations.
  • Confusing the annualised forward quote with the return for the forward interval.
  • Subtracting spot rates or omitting the shorter deposit’s accumulation factor.
  • Mixing Actual/360 and Actual/365 without preserving or deliberately changing the underlying cash flows.
  • Treating a bank-discount yield as an investment yield. For discount quote d, price is Face × (1 − dα); the corresponding simple investment yield is d/(1 − dα).
  • Assuming implied forwards forecast future spot rates without a risk-premium assumption.

Method reference: CME Group, Eurodollar Futures: Foundational Concepts (2018), implied-forward arithmetic. This historical source supports the calculation method, not the use of a discontinued benchmark for new business.

Curve movements and practical applications

MovementWhat changes?Risk implication
Parallel shiftAll maturities change by the same basis pointsDuration and convexity provide useful approximations
SteepeningLong-minus-short spread increasesA duration-matched portfolio can still experience a curve loss
FlatteningLong-minus-short spread decreasesExposure depends on which maturities move
Twist or curvature changeDifferent sections move differentlyKey-rate sensitivities help locate exposure

Example: short and long yields of 5% and 6% imply a 100 bp spread. If they move to 4.5% and 5.8%, the spread widens to 130 bp: a bull steepening. Both yields fell, but the short yield fell more.

Banks: the curve influences asset and liability repricing, net interest income and economic value of equity. “Borrow short, lend long” is only a starting description; deposit behaviour, hedges and repricing dates matter.

Investors: curves support cash-flow valuation, liability matching, relative-value analysis and bullet/barbell/ladder decisions. Higher long yields do not by themselves make long bonds more attractive: duration, horizon and reinvestment risk also matter.

Derivatives: discount factors and forwards underpin FRA and swap pricing. In collateralised markets, discounting and reference-rate projection may use different curves; the single-curve examples here establish the foundations.

Excel implementation and quotation conventions

Excel Companion: build and explore the term structure

A formatted, formula-driven workbook with ten sheets: Overview, Bootstrap, Bootstrap Steps, Non-Par Case, Forward Lab, Bond Value, Money Market, Worked Examples, Practice Q&A and Concept Q&A. It adds four extra worked examples (a 5-year par bootstrap, the coupon effect, pure expectations and rate conventions), ten practice questions with instant ✓/✗ checking, and ten concept questions with model answers. The Money Market sheet adds simple-interest forwards with editable day counts and a cash-flow reconciliation.

Yellow cells with blue numbers are inputs. Change coupon rates, market prices or spot rates and follow the results through to bond valuation.

Bootstrapping in plain words

The whole idea in one line: each bond's price = coupons you can already value + one final payment you cannot. Subtract the part you know, then divide by the final payment. That gives the next discount factor.

Year 1Year 2Year 3 1-yr bond 104 → D(1)? 2-yr bond 5 × D(1) ✓ 105 → D(2)? 3-yr bond 5.75 × D(1) ✓ 5.75 × D(2) ✓ 105.75 → D(3)? known solve
Each new bond brings exactly one new unknown. Everything to its left was solved in the row above.
Bond① Price② Subtract what you know③ Divide by final paymentDiscount factor
1-year100nothing to subtract100 ÷ 104D(1) = 0.961538
2-year1005 × 0.961538 = 4.807692(100 − 4.807692) ÷ 105D(2) = 0.906593
3-year1005.75 × (0.961538 + 0.906593) = 10.741758(100 − 10.741758) ÷ 105.75D(3) = 0.844050

Then two short conversions turn discount factors into rates:

To getRule in wordsYear 1Year 2Year 3
Spot rateUndo the discounting: D−1/t − 14.0000%5.0252%5.8142%
1-year forwardEarlier D ÷ later D, minus 14.0000%6.0606%7.4100%

Reading the workbook formula. In the Bootstrap sheet, cell F9 holds =(D9-E9*SUM(F$8:F8))/($C$13+E9). In words:

( Price − Coupon × sum of the discount factors already found ) ÷ ( Face value + Coupon )

The anchored range SUM(F$8:F8) grows as you copy the formula down. In row 10 it becomes SUM(F$8:F9), so the 3-year bond automatically subtracts both earlier coupons. That is the only trick in the sheet. The same steps are worked by hand in section 7.

In the workbook: the Bootstrap Steps sheet lays out exactly the columns in the tables above (price, known part, what is left, final payment, discount factor, then spot and forward rates), one plain step per cell, with check columns showing it matches the Bootstrap sheet.

Prices need not be 100. The same three steps work for bonds priced above or below par: use the market price in step ①. For example, at prices of 100.50, 99.80 and 101.20 the discount factors become 0.966346, 0.904460 and 0.855252, and the spot rates 3.4826%, 5.1491% and 5.3502%. A bond above par has a spot rate below its coupon, and a bond below par the reverse. The Companion’s Non-Par Case sheet works this example step by step.

Show the exact workbook cells and formulas (for tracing the Bootstrap and Bond Value sheets)

The worksheet excerpts below use the same sheet names, cell addresses and formulas as the downloadable workbook. Values shown are the base-case results.

Bootstrap — inputs and curve calculations
BCDEFGH
7YearsCoupon rateMarket priceCoupon amountDiscount factorSpot rate1Y forward
814.0000%100.0000004.000000=$C$13*C80.961538462=D8/($C$13+E8)4.0000%=F8^(-1/B8)-14.0000%=G8
925.0000%100.0000005.000000=$C$13*C90.906593407=(D9-E9*SUM(F$8:F8))/($C$13+E9)5.0252%=F9^(-1/B9)-16.0606%=F8/F9-1
1035.7500%100.0000005.750000=$C$13*C100.844049567=(D10-E10*SUM(F$8:F9))/($C$13+E10)5.8142%=F10^(-1/B10)-17.4100%=F9/F10-1

Face-value input: Bootstrap!C13 = 100. Columns B–E supply maturity, coupon rate, market price and coupon amount. Discount factors are in F8:F10; spot rates in G8:G10; one-year forwards in H9:H10. H8 equals the one-year spot rate because that interval starts today.

Bond Value — cash flows and present values
BCDEFG
12YearCouponPrincipalCash flowDiscount factorPresent value
1316.000000=$E$8*$E$90.000000=06.000000=C13+D130.961538462=Bootstrap!F85.769231=E13*F13
1426.000000=$E$8*$E$90.000000=06.000000=C14+D140.906593407=Bootstrap!F95.439560=E14*F14
1536.000000=$E$8*$E$9100.000000=$E$8106.000000=C15+D150.844049567=Bootstrap!F1089.469254=E15*F15

Bond inputs: 'Bond Value'!E8 = 100 (face value) and 'Bond Value'!E9 = 6% (annual coupon). The price in 'Bond Value'!G18 is =SUM(G13:G15), giving 100.678045.

Reprice the original bonds

Workbook cellExact formulaBase-case value
Bootstrap!D20=($C$13+E8)*F8100.000000
Bootstrap!D21=E9*SUM(F$8:F9)+$C$13*F9100.000000
Bootstrap!D22=E10*SUM(F$8:F10)+$C$13*F10100.000000

Repricing differences are in Bootstrap!E20:E22 and equal zero in the base case. The workbook’s percentage formats apply to G8:H10.

Match the quotation convention before calculating

m payments per year: D(t) = (1 + jt/m)−mt
Continuous compounding: D(t) = e−r(t)t
Continuous forward: fct,T = [r(T)T − r(t)t]/(T−t)
Simple money-market forward: F = [D(t)/D(T) − 1]/δ

Here j is a nominal annual rate, r a continuously compounded zero rate, and δ the applicable accrual fraction. Real-market bootstrapping also requires settlement dates, accrued interest, coupon schedules, day counts and interpolation between available instruments. Treasury securities in actual markets need not pay annual coupons.

Check your understanding and explore further

Does default-free mean a bond cannot lose market value?

No. A default-free bond can decline in price when market discount rates rise. Its nominal promised payment and its current market price are different concepts.

Is an implied forward rate a guaranteed future spot rate?

No. It is a rate derived from today’s prices for a future interval. Future realised spot rates remain uncertain.

Can liquidity preference coexist with an inverted curve?

Yes. Expected short-rate declines can outweigh a positive maturity premium.

Why are the par and spot rates equal at one year in this case?

The one-year bond has only one payment date, so its coupon and principal are discounted using the same one-year factor.

How can you validate a bootstrapped curve?

Reprice every input instrument from its cash flows using the derived discount factors. Residuals should be zero apart from rounding or a deliberately fitted estimation error.

Continue: Mastering Spot Rates vs Forward Rates →
Explore the Barbell Strategy of Bonds →
Return to Fixed Income Securities →

References and teaching basis

Adapted and expanded from the supplied notes, with numerical calculations independently recomputed. Additional reference: Moorad Choudhry, An Introduction to Banking Liquidity Risk and Asset-Liability Management, Chapter 3, “The Yield Curve”, especially printed pp. 71–79.

Search concepts: term structure · yield curve · spot rate · zero curve · forward rate · par yield · expectations theory · liquidity preference · market segmentation · preferred habitat · bootstrapping · discount factor · ALM.