FRM Part I · FRM Exam Part I
Applying Duration, Convexity, and DV01: formula sheet
Key formulas
- Bond price (annual coupons)
- P = Σ C ÷ (1 + y)^t + F ÷ (1 + y)^T
- C is the coupon, F the face value, T the years to maturity, y the annual YTM. For semiannual coupons use C ÷ 2, y ÷ 2 and 2T periods.
- Zero-coupon bond price
- P = F ÷ (1 + y)^T
- Single cash flow, so the calculation is one step.
- Premium, par, discount
- Coupon rate > y → P > F; coupon rate = y → P = F; coupon rate < y → P < F
- Quick check on whether your answer is sensible.
- Duration approximation
- ΔP ÷ P ≈ −D_mod × Δy
- D_mod is modified duration. First-order, linear estimate.
- Duration plus convexity approximation
- ΔP ÷ P ≈ −D_mod × Δy + ½ × C × (Δy)²
- C is convexity. The convexity term is positive for option-free bonds, whether yields rise or fall.
- DV01 from modified duration
- DV01 = Modified duration × Price (or market value) × 0.0001
- Use the price that matches the position: per 100 face, per bond, or total market value including accrued interest if the question uses full price.
- DV01 from dollar duration
- DV01 = Dollar duration × 0.0001, where Dollar duration = Modified duration × Price
- Dollar duration is the price change per 100% change in yield, so scale by 0.0001 for 1 bp.
- DV01 from repricing (central difference)
- DV01 ≈ [P(y − 1 bp) − P(y + 1 bp)] ÷ 2
- Use a financial calculator or the question's given prices. This also works for bonds with options when you use effective duration logic.
- Modified duration
- Modified duration = Macaulay duration ÷ (1 + y/k)
- y is the annual yield and k is the number of compounding periods per year.
- Price change estimate
- ΔP ≈ −DV01 × (Δy in basis points)
- Valid for small yield changes. Add a convexity term for large moves.
- Portfolio DV01
- DV01(portfolio) = Σ DV01 of each position
- Long positions are positive and short positions are negative. Assumes a parallel yield shift.
- DV01 hedge ratio
- Number of hedge contracts = DV01(position) ÷ DV01 per hedge contract
- Take the opposite side of the position to neutralise the net DV01.
- Macaulay duration
- D_Mac = Σ [t × PV(CF_t)] ÷ P
- t is time in years, P is the bond price (sum of PVs). Weights sum to 1.
- Modified duration
- D_Mod = D_Mac ÷ (1 + y/m)
- y is the annual yield, m is compounding periods per year. Use the yield on the same compounding basis.
- Price change using modified duration
- ΔP ÷ P ≈ −D_Mod × Δy
- First-order approximation. Add convexity for large moves.
- Effective duration
- D_Eff = (P₋ − P₊) ÷ (2 × P₀ × Δy)
- P₋ is the price after yields fall by Δy, P₊ after yields rise by Δy, P₀ is the current price. Δy is in decimals.
- Zero-coupon bond
- D_Mac = T
- Modified duration is then T ÷ (1 + y/m).
- Par bond with annual coupon c and yield y = c
- D_Mac = (1 + y) ÷ y × [1 − 1 ÷ (1 + y)^T]
- A shortcut that holds for a par bond with annual coupons.
- Floating rate bond
- D ≈ time to next reset
- Priced near par at reset dates, so duration is small.
- Second-order price approximation (percentage)
- ΔP ÷ P ≈ −D × Δy + ½ × C × (Δy)²
- D is modified (or effective) duration, C is convexity, Δy is the yield change in decimals (100 bp = 0.01).
- Second-order price approximation (price change)
- ΔP ≈ −D × P × Δy + ½ × C × P × (Δy)²
- Use this when you need a currency amount. Multiply the percentage change by the starting price or position value.
- Convexity from cash flows (annual compounding)
- C = (1 ÷ P) × Σ [ t × (t + 1) × CFt ÷ (1 + y)^(t + 2) ]
- For m payments a year, use periods and the periodic yield y/m, then divide the result by m² to express convexity in years squared.
- Effective duration
- D_eff = (P₋ − P₊) ÷ (2 × P₀ × Δy)
- P₋ is the price after yield falls by Δy, P₊ after it rises by Δy.
- Effective convexity
- C_eff = (P₋ + P₊ − 2 × P₀) ÷ (P₀ × (Δy)²)
- Works for bonds with embedded options. A negative result signals negative convexity.
- Sign rule
- Convexity term = ½ × C × (Δy)² has the same sign as C
- Because (Δy)² is always positive, the convexity term is positive for positive C whether yields rise or fall.
- Portfolio duration
- D_P = Σ (w_i × D_i), where w_i = MV_i ÷ total MV
- Weights are market values (including accrued interest if given as dirty value). Use modified duration throughout, or effective duration for bonds with options.
- DV01 of a position
- DV01 ≈ D_mod × MV × 0.0001
- Gives the dollar loss for a 1 bp rise in yield. Also equals the price change per 1 bp if you reprice the bond.
- Portfolio DV01
- DV01_P = Σ DV01_i
- Valid for a parallel yield shift. Shorts carry negative DV01.
- DV01 hedge ratio
- N = DV01_P ÷ DV01_hedge per unit
- Take the opposite position to the portfolio. Long portfolio means short hedge.
- Duration-based futures hedge
- N = (D_T − D_P) × P ÷ (D_F × F)
- P is portfolio value, F is the futures contract price, D_T is the target duration. For a full hedge D_T = 0, so N = −D_P × P ÷ (D_F × F). A negative N means sell.
- Yield beta adjustment
- N_adjusted = N × β, where β = Δy_portfolio ÷ Δy_hedge
- Use when the portfolio yield and the hedge yield do not move one-for-one.
- Duration-convexity approximation
- ΔP ÷ P ≈ −D_mod × Δy + ½ × C × (Δy)²
- Portfolio convexity is also the market-value-weighted average of position convexities.
- Duration price approximation
- ΔP ÷ P ≈ −D × Δy
- D is modified (or effective) duration. Valid for small, parallel yield changes.
- DV01
- DV01 ≈ D × P × 0.0001
- The absolute price change in currency for a 1 bp yield move, i.e. −ΔP for a 1 bp rise. Quote DV01 as a positive number for a long bond position.
- Duration with convexity
- ΔP ÷ P ≈ −D × Δy + ½ × C × (Δy)²
- Adds a second-order term. Convexity helps for large moves but still assumes a parallel shift.
- Key rate duration
- KRD_i = −(1 ÷ P) × (ΔP_i ÷ Δy_i)
- ΔP_i is the price change when only key rate i moves by Δy_i. Other key rates stay fixed.
- KR01
- KR01_i = −(ΔP_i for a +1 bp rise in key rate i)
- Currency version of KRD, positive for a long bond because it is the loss from a rate rise. KR01_i ≈ KRD_i × P × 0.0001.
- Sum of key rate exposures
- Σ KRD_i ≈ effective duration; Σ KR01_i ≈ DV01
- Holds when the key rate shifts together make up a parallel shift.
- P&L from a non-parallel move
- ΔP ≈ −Σ (KR01_i × Δy_i), with Δy_i in bp
- Use the KR01 of each bucket with that bucket's own yield change, then add. KR01 is the loss per 1 bp rise, so the sign is flipped once.
Quick revision
- Bond price and yield move in opposite directions, and the price-yield curve is convex for plain bonds.
- Modified duration = Macaulay duration ÷ (1 + y/k), where k is the number of compounding periods per year.
- First-order estimate: ΔP/P ≈ −D_mod × Δy.
- DV01 ≈ D_mod × P × 0.0001, the dollar price change for a 1 bp yield move.
- With convexity: ΔP/P ≈ −D_mod × Δy + ½ × C × (Δy)².
- Convexity is positive for plain bonds, so duration alone underestimates the price after a yield change in either direction.
- Effective duration = (P₋ − P₊) ÷ (2 × P₀ × Δy), using prices from yield shifts up and down.
- Use effective duration for bonds with embedded options, since cash flows change with yield.
- Portfolio duration is the market-value-weighted average of the durations of its holdings (for a parallel yield shift).
- A DV01 hedge sets the position's DV01 plus the hedge's DV01 equal to zero, which protects only against small, parallel shifts.
- Callable bonds can show negative convexity when yields fall.
- Key rate durations measure sensitivity to shifts at specific maturities and capture non-parallel curve moves.
Common mistakes
- Using the annual yield with semiannual coupons without adjusting. Fix: Halve the yield and the coupon, and double N, whenever coupons are paid twice a year.
- Thinking the price-yield curve is a straight line. Fix: Remember duration is only the tangent. The real curve is convex, so the tangent underestimates the price.
- Forgetting the 0.0001 factor and reporting duration × price as DV01. Fix: Always divide dollar duration by 10,000 to reach DV01. Check that the answer is small relative to the position value.
- Using Macaulay duration instead of modified duration. Fix: Convert first: modified duration = Macaulay duration ÷ (1 + y/k). Use the right k for the compounding stated.
- Treating modified duration as equal to Macaulay duration Fix: Divide Macaulay by (1 + y/m). Modified is always smaller for positive yields.
- Using the wrong m in the divisor for semiannual bonds Fix: Match m to the yield quoting basis. Semiannual yield quotes use y/2.
- Plugging basis points straight into the formula, for example Δy = 100 instead of 0.01. Fix: Convert to decimals before you start. Write 100 bp = 0.01 next to the question.
- Forgetting the ½ in front of the convexity term. Fix: Write the full formula first: −D × Δy + ½ × C × (Δy)². Never write the convexity term without the ½.
- Weighting durations by face value or by number of bonds Fix: Always weight by market value. A bond trading at 90 has 90% of the weight its face value suggests.
- Adding durations instead of averaging them, or averaging DV01s Fix: Add DV01 (dollars). Average duration (years) with weights summing to 1.
Exam tips
- Questions often ask which bond is most sensitive. Use the rule: longest maturity, lowest coupon, lowest yield.
- Check the direction of the convexity adjustment. For option-free bonds it is always added.
- Read the compounding frequency in the question stem before touching the calculator.
- If a numeric answer is near par, test it with the premium and discount rule to catch input errors.
- Conceptual items may ask why duration under- or overstates the price. The answer is the curvature of the price-yield curve.
- Read the unit carefully. Options often include the same number scaled by 100, 10,000 or per-100-face versus total, so the unit decides the answer.
- Memorise DV01 = modified duration × value × 0.0001 and do the arithmetic as ÷ 10,000. It is fast and rarely wrong.
- Watch for Macaulay duration with a yield and compounding frequency. It signals that you need a conversion step first.