Duration and Convexity Approximation Explorer
Duration measures a bond's sensitivity to yield changes: it tells you, approximately, what percentage of its price the bond gains or loses for each 1% move in yield. But duration assumes the price-yield relationship is linear — a straight-line approximation of a curved reality. Convexity corrects for that curvature, making the approximation significantly more accurate for larger yield shocks. Use the controls to see where the approximation is close and where it breaks down.
Duration & Convexity
Prices
Approximation Errors
Key Concepts
- Duration is the slope of the price-yield curve. Specifically, modified duration equals \(-\frac{1}{P}\frac{dP}{dy}\) — the percentage price change per unit change in yield. On the graph, it is the slope of the orange tangent line at the starting yield. A longer-duration bond has a steeper slope.
- Duration works well for small yield changes, but breaks down for large ones. Because the true price-yield relationship is curved, the linear approximation diverges as the yield shock grows. Try increasing the shock from 25 bps to 300 bps and watch the error widen.
- Convexity corrects for the curvature. The duration-plus-convexity approximation (green dashed) adds a second-order term: \(\tfrac{1}{2} \times \text{Convexity} \times (\Delta y)^2\). This captures the bend in the curve and dramatically reduces the error.
- Convexity is always beneficial for bondholders. Because the true curve bends away from the tangent line on both sides, the actual price is always above what the linear approximation predicts. A rise in yields costs less than duration implies; a fall in yields gains more. This asymmetry is priced: higher-convexity bonds tend to trade at higher prices (lower yields).
- Longer-duration bonds experience larger price changes for a given yield shock. Increase the maturity to 20 or 25 years and observe how the price response to the same shock becomes much larger.
Formulas used: Modified duration \(= D_{\rm mac} / (1 + y/m)\). Convexity \(= \frac{1}{P(1+y/m)^2}\sum_{k=1}^{n} \frac{k}{m}\!\left(\frac{k}{m}+\frac{1}{m}\right)\!\frac{CF_k}{(1+y/m)^k}\). Price approximations: \(\Delta P \approx -P \cdot D_{\rm mod} \cdot \Delta y\) (duration only) and \(\Delta P \approx -P \cdot D_{\rm mod} \cdot \Delta y + \tfrac{1}{2} P \cdot \text{Cvx} \cdot (\Delta y)^2\) (duration + convexity).