16.3 Bond Yields and Return Calculations
Key Takeaways
- Gross realized return depends on coupons, reinvestment income, and ending price; net return subtracts financing—reinvestment rate assumptions drive multi-period results.
- Yield to maturity is the single flat rate that equates PV of cash flows to dirty price; it equals realized return only under specific hold-and-reinvest assumptions.
- Annuity and perpetuity formulas are building blocks for coupon streams; spot-based PV is preferred when the curve is not flat.
- YTM differs from same-maturity spot rates when the coupon is not zero; coupon size changes YTM relative to the spot curve (coupon effect).
- Periodic P&L decomposes into carry, roll-down, rate (curve) effects, and spread effects—each with explicit assumptions about the horizon path of the curve.
Bond Yields and Return Calculations
Prices come from discount factors; yields and returns summarize performance and richness. VRM–11 separates what you quote (YTM, spreads) from what you earn (realized return with reinvestment) and shows how desks decompose P&L into carry, roll-down, rate moves, and spread moves.
Gross Versus Net Realized Returns with Reinvestment
Over a horizon from 0 to H, a bondholder receives coupons, reinvests them, and marks or sells the remaining bond at H.
Gross realized return (horizon return) roughly satisfies
(1 + R_gross)^H = (Ending dirty value + future value of reinvested coupons) / Starting dirty price
Net realized return subtracts financing cost if the position is funded (repo interest, etc.): you earn the bond’s gross proceeds but pay to borrow the purchase proceeds.
The critical modeling choice is the reinvestment rate on interim coupons. If you assume coupons roll at the YTM, multi-year “YTM as expected return” stories close. If realized reinvestment rates differ, realized compound return diverges from initial YTM even if the bond does not default and you hold to maturity.
Worked hold-to-maturity with reinvestment
Two-year 5% annual coupon bond bought at par 100. YTM = 5%. Coupon year 1 = 5. If that coupon reinvests for one year at 5%, it grows to 5.25; year-2 coupon+principal = 105; terminal wealth = 110.25; annualized return = √(110.25/100) − 1 = 5.00%. If the coupon reinvests at only 3%, terminal wealth = 5×1.03 + 105 = 110.15; annualized return ≈ 4.95%—below YTM despite purchase at par and redemption at par.
| Return concept | Includes | Blind spot |
|---|---|---|
| YTM | Implied flat reinvestment + hold assumptions | Path of rates / reinvestment |
| Gross horizon return | Coupons, reinvestment, end price | Financing |
| Net horizon return | Above minus funding | Liquidity of repo |
| Spot-based expected return | DF-implied forwards | Risk premia / spread changes |
Spreads from Price and Curve
Given a benchmark curve (Treasury spots, swap DFs), a risky or off-the-run bond’s market dirty price implies a spread:
- Z-spread: constant spread s added to each spot/benchmark rate (or to each discount rate) so that Σ C_t / (1 + z_t + s)^t equals market price.
- Spread over benchmark YTM: y_bond − y_benchmark for similar maturity (rough, ignores curve shape).
- I-spread / asset-swap style measures: variants versus swaps.
If price falls with the benchmark curve unchanged, the fitted spread widens (cheaper / more credit or liquidity premium). Risk P&L attributes that move to spread rather than to parallel rates.
Mini spread intuition
Benchmark DF price of a corporate’s scheduled cash flows (ignoring default) = 102.0; market dirty = 100.5. You must add a positive z-spread to lower model PV to 100.5. Wider spread ↔ lower price relative to the curve.
YTM Interpretation and Calculation
Yield to maturity is the constant per-period rate y solving
Dirty price = Σ_k C_k / (1 + y/m)^(m t_k)
for the bond’s remaining cash flows (m = compounding frequency per year). Interpretation:
- YTM is a summary statistic of price given cash flows—not a forecast.
- If you hold to maturity, reinvest all coupons at y, and there is no default, your realized compound return equals y.
- If any of those fail, realized return ≠ y.
Worked YTM (annual)
Bond: 2 years, 6% coupon annual, dirty price 101.50, face 100. Solve 101.50 = 6/(1+y) + 106/(1+y)^2. Try y = 5.2%: 6/1.052 + 106/1.052^2 ≈ 5.703 + 95.780 ≈ 101.48. Slightly below the 101.50 market price, so the true yield is a shade under 5.2% ⇒ y ≈ 5.19%. (On the exam, interpolate between two trials.)
Annuity and Perpetuity
Useful closed forms when the curve is flat at rate r (annual):
- Level annuity paying A for N years: PV = A × [1 − (1+r)^(−N)] / r
- Perpetuity: PV = A / r
- Coupon bond = annuity of coupons + zero of principal: PV = C × annuity factor + Face × (1+r)^(−N)
These shortcuts speed intuition and check numerical Σ C DF when spots are flat. When the curve is not flat, return to pathwise discount factors.
Worked perpetuity / annuity
Perpetual 4% coupon on 100 face, flat yield 5%: PV = 4 / 0.05 = 80. A 10-year annuity of 4 per year at 5%: 4 × [1 − 1.05^(−10)] / 0.05 ≈ 4 × 7.7217 = 30.89; add principal zero 100/1.05^10 ≈ 61.39 → bond PV ≈ 92.28.
Spot Versus YTM and the Coupon Effect
A zero’s YTM is its spot rate (same maturity, same compounding). A coupon bond’s YTM is a complex average of the spots to each cash-flow date. Consequently:
- On an upward-sloping curve, a premium (high-coupon) bond’s YTM tends to lie below a comparable low-coupon bond’s YTM because more weight sits on nearer, lower spots—the coupon effect.
- Discount (low-coupon) bonds behave more like longer zeros and print higher YTMs on rising curves.
Never treat “the” 10y yield as unique without stating coupon and benchmark. Risk systems prefer full spot/DF pricing; YTM remains a communication device.
P&L Decomposition: Carry, Roll-Down, Rate, Spread
Over a short horizon Δt, desks often split expected and unexpected P&L:
- Carry: coupon income accrued minus financing cost (and sometimes minus expected loss for credit). Positive carry means the bond “earns” if prices do not move against you.
- Roll-down: mark-to-market gain/loss if the shape of the curve stays fixed in calendar time and the bond’s maturity shortens (slides down a fixed upward-sloping curve toward lower yields / higher prices, or the opposite on inverted curves).
- Rate (curve) P&L: change from actual movement in benchmark yields / DFs (parallel or key-rate).
- Spread P&L: change from movement in the bond’s spread to the benchmark.
Roughly:
ΔP ≈ Carry + Roll-down + Duration_effect(Δ curve) + Spread_effect(Δs) + Convexity / residuals
Carry roll-down assumptions
Carry + roll-down is an ex-ante expected return under an explicit scenario—most often:
- Unchanged curve as a function of maturity (roll along today’s curve), or
- Unchanged curve as a function of calendar dates (forwards realized—no roll-down “along” the spot curve in the same way),
- Stable spreads,
- Stated financing rate.
If the true future curve equals today’s forward curve, roll-down measured against a static spot curve can misstate expected P&L—forwards already embed the expected slide. GARP expects you to name the assumption: “static yield curve,” “realize forwards,” or “spreads unchanged.” Mixing them double-counts or omits expected price change.
Worked schematic
Buy a 5y bond with dirty 100, 6 months’ carry net of repo = +1.20 points, roll-down on static curve = +0.40, then yields rally 10 bp with DV01 ≈ 0.045 per bp per 100 face ⇒ rate P&L ≈ +0.45, and spread widens 5 bp with spread DV01 ≈ 0.042 ⇒ spread P&L ≈ −0.21. Total ≈ 1.20+0.40+0.45−0.21 = +1.84 points before residuals.
Exam discipline: quote YTM for communication; price with spots for truth; attribute P&L with explicit carry/roll-down hypotheses; never confuse YTM with a promised return when reinvestment or horizon price risk remains.
You buy a par bond with YTM = 4% and hold to maturity. Coupons are reinvested at 2%. Relative to the original YTM, realized compound return will be:
On an upward-sloping spot curve, compare a high-coupon bond and an otherwise similar low-coupon bond. The coupon effect typically implies:
Which P&L component is the mark-to-market change assuming the yield curve’s shape stays fixed and the bond simply shortens in maturity?
A bond’s cash-flow PV on the benchmark DF curve is 99.00 but it trades at 97.50. Fitting a constant z-spread will produce: