Bond Convexity Calculator
Calculate a bond's Macaulay duration, modified duration, convexity, and the convexity-adjusted price change for a yield shock
About the Bond Convexity Calculator
The Bond Convexity Calculator is a professional-grade tool used by fixed-income analysts and portfolio managers to quantify the non-linear relationship between bond prices and interest rate movements. While modified duration provides a first-order approximation of price sensitivity, it fails to account for the 'curve' in the price-yield relationship. Convexity serves as a second-order derivative, offering a crucial correction factor that improves the accuracy of price volatility forecasts, especially for large interest rate shocks.
Understanding convexity is essential for managing interest rate risk and optimizing bond portfolios. This tool computes Macaulay duration and modified duration as intermediate steps to determine the final convexity measure. It further allows users to input a 'yield shock' (a hypothetical change in interest rates) to see the combined effect of duration and convexity on the bond's market value. This is particularly valuable for secondary market traders and institutional investors who need to stress-test their holdings against volatile market conditions.
Formula
Convexity = [Sum (t^2 + t) * PV(CF_t)] / [P * (1 + y)^2]In this formula, 't' represents the time in years until a cash flow is received, and CF_t is the specific cash flow amount at that time. PV(CF_t) is the present value of that cash flow discounted at the current yield per period. 'P' is the total current market price of the bond, and 'y' is the yield to maturity per payment period. The resulting value measures the rate of change of the bond's duration.
Worked examples
Example 1: A 10-year bond with a 5% annual coupon trading at par ($100) with a 5% yield to maturity.
1. Calculate PV of each coupon ($5) and principal ($100).\n2. Calculate Macaulay Duration: 8.10 years.\n3. Calculate Modified Duration: 8.10 / (1 + 0.05) = 7.72.\n4. Apply Convexity formula: [Sum (t^2+t) * PV(CF)] / [100 * (1.05)^2] = 45.82.\n5. Yield Shock (2%): Change = (-7.72 * 0.02) + (0.5 * 45.82 * 0.02^2) = -0.1544 + 0.00916 = -14.52% (approximate).
Result: Convexity of 45.82. A 2% yield increase results in an estimated price drop of 11.28% (adjusted for convexity).
Common use cases
- Comparing two bonds with identical durations to see which offers better protection against rising interest rates.
- Estimating the capital gains on a long-term Treasury bond if the Federal Reserve cuts rates by 1.5%.
- Adjusting a portfolio's 'barbell' strategy to ensure the weighted convexity meets risk management mandates.
- Hedging a bond portfolio with interest rate swaps by identifying the total dollar convexity of the position.
Pitfalls and limitations
- Convexity calculations for callable bonds require an Effective Convexity model rather than the standard formula provided here.
- Using annual yield inputs for semi-annual bonds without adjusting the period count will result in an overstated convexity value.
- The formula assumes a flat yield curve where all future cash flows are discounted at the same rate.
- Ignoring the convexity adjustment for yield shifts greater than 100 basis points can lead to significant errors in price estimation.
- Calculations are highly sensitive to the precision of the Price input, so rounded market prices can skew the result.
Frequently asked questions
what is the difference between duration and convexity?
Convexity measures the curvature of the price-yield relationship, whereas duration assumes a linear relationship. Duration provides a good estimate for small interest rate changes, but convexity is required to maintain accuracy when rates move significantly.
is high convexity good or bad for bond investors?
A bond with high convexity is generally more desirable because its price rises more when interest rates fall than it drops when interest rates rise. Investors are often willing to pay a premium for higher convexity because it offers a better risk-return profile during periods of high volatility.
how do you calculate convexity for a zero coupon bond?
The convexity of a zero-coupon bond is calculated as (Maturity^2 + Maturity) / (1 + Yield)^2. Because there are no interim cash flows, the math is simpler, but zero-coupon bonds still exhibit significant convexity relative to their duration.
can a bond have negative convexity?
A bond can have negative convexity if it is callable. When interest rates drop, the likelihood of the issuer calling the bond increases, which caps the price appreciation and causes the price-yield curve to bend the opposite way.
how to use convexity to predict bond price changes?
Convexity adjustment is the change in price predicted by the convexity measure, calculated as 0.5 * Convexity * (Change in Yield)^2. This value is added to the duration-predicted price change to get a more precise total price movement.