CFA Level 1 Topic Breakdown

Macaulay vs Modified vs Effective Duration (CFA): Formulas and Worked Example

Macaulay = weighted-average time to cash flows. Modified = Macaulay / (1 + YTM/m), price sensitivity per 1% yield change. Effective = scenario-based, correct for callable bonds. Full worked 3-year bond example, conversion math, rules of thumb, and practice question.

Quick answer: Macaulay Duration is the weighted-average time to receive a bond's cash flows (in years). Modified Duration converts Macaulay to a price-sensitivity measure: Modified = Macaulay / (1 + YTM/m). Effective Duration uses bond-pricing shifts under rate scenarios and is the correct measure for bonds with embedded options. Price change approximation: ΔP/P ≈ −D_mod × Δy.

The three durations: a hierarchy

The three duration measures build on one another:

  1. Macaulay Duration — the foundation. A weighted-average time to cash flows, in years.
  2. Modified Duration — the practical price-sensitivity measure. Derived directly from Macaulay.
  3. Effective Duration — the generalisation that works for bonds with embedded options (callable, putable, mortgage-backed).

At Level 1 you need all three. At Level 2 and Level 3, Effective Duration dominates — in practice almost no serious portfolio manager uses Macaulay for anything other than conceptual framing.

Definitions table

Duration typeFormulaWhat it tells youLimitation
MacaulayΣ(t × PV(CFt)) / PriceWeighted-average time to cash flows in yearsNot a direct price-sensitivity measure; assumes fixed cash flows
ModifiedMacaulay / (1 + YTM/m)Approximate % price change per 1% change in yieldAssumes cash flows don't change with yield (fails for callable bonds)
Effective[P(−Δy) − P(+Δy)] / (2 × P₀ × Δy)% price change per 1% yield change, accounting for cash-flow changesRequires a term-structure model and scenario pricing — more complex
Dollar (DV01)Modified × Price × 0.0001Dollar price change per 1 basis pointDepends on price level — not comparable across bonds without adjustment
Key-rateSpot-rate shifts at specific maturitiesSensitivity to a non-parallel yield curve shiftOnly useful for curve-strategy portfolios

Worked example: Macaulay for a 3-year bond

Consider a 3-year bond with 6% annual coupon, USD 1,000 face value, 8% YTM, annual payments.

Step 1 — list cash flows:

Year tCash flowDiscount factor @ 8%PV of CFt × PV(CF)
1601 / 1.08 = 0.925955.5655.56
2601 / 1.08² = 0.857351.44102.88
31,0601 / 1.08³ = 0.7938841.462,524.37
Totals948.46 = Price2,682.81

Step 2 — compute Macaulay:

Macaulay = 2,682.81 / 948.46 = 2.828 years

Converting Macaulay to Modified Duration

Modified Duration = Macaulay / (1 + YTM/m)

For our bond with annual payments (m = 1):

Modified = 2.828 / (1 + 0.08/1) = 2.828 / 1.08 = 2.619

Interpretation: a 1-percentage-point rise in yield reduces the bond's price by approximately 2.619%.

Effective Duration and when to use it

For bonds with embedded options (callable, putable, mortgage-backed), Modified Duration fails because it assumes cash flows do not change with yields. In reality:

  • A callable bond is more likely to be called when yields fall — capping the price upside.
  • A putable bond is more likely to be put when yields rise — capping the price downside.
  • A mortgage-backed security sees prepayment speeds change with rates.

Effective Duration prices the bond under three scenarios — base yield, yield up Δy, yield down Δy — and measures the average price change:

Effective Duration = [P(−Δy) − P(+Δy)] / (2 × P₀ × Δy)

Effective Duration for a callable bond is lower than Modified Duration because the call option truncates the upside. For a non-callable straight bond, Effective and Modified Duration are approximately equal.

Price sensitivity approximation

%ΔP ≈ −D_mod × Δy

Or, more precisely including convexity:

%ΔP ≈ −D_mod × Δy + ½ × C × (Δy)²

For small yield changes (under 50 bp), the duration-only approximation is adequate. For larger shifts, convexity becomes material. The convexity adjustment is always positive — duration alone understates price gains and overstates price losses.

Rules of thumb table

ChangeEffect on duration
Higher couponLower duration
Higher YTMLower duration
Longer maturityHigher duration (zero-coupon bonds: duration = maturity exactly)
Embedded call optionLower effective duration vs modified
Embedded put optionHigher effective duration in some cases vs modified
More frequent compoundingSlightly lower modified duration

Duration in portfolio management

Duration is the central input in two Level 2–3 portfolio applications:

1. Immunisation. To immunise a portfolio against parallel yield shifts for a specific liability, set portfolio duration equal to liability duration. The portfolio's price loss (if rates rise) is exactly offset by higher reinvestment income over the horizon.

2. Active positioning. If a manager expects rates to fall, she overweights long-duration bonds (which gain the most when rates drop). If she expects rates to rise, she underweights duration — moves to short-duration bonds, floating-rate notes, or cash.

Both strategies rely on Effective Duration when any bond in the portfolio has embedded options — Modified Duration gives the wrong signal for callable bonds, and nearly all corporate debt has at least some callability.

How this appears on the CFA exam

Duration is a Level 1 Fixed Income topic and expands at Level 2 (effective duration, key-rate duration, convexity) and Level 3 (duration management, immunisation).

The exam patterns:

  1. Direct calculation — given cash flows and YTM, compute Macaulay or Modified.
  2. Conversion — convert between the three duration measures.
  3. Comparison — which of two bonds has higher duration? (Apply the rules of thumb.)
  4. Price approximation — given modified duration and a yield shift, estimate the price change.
  5. Portfolio duration — compute as a weighted average of individual bond durations.
CFA exam tip: For callable bonds, always use Effective Duration — not Modified. This is one of the most-tested distinctions in CFA Level 2 Fixed Income. If a question gives you a callable bond and asks for 'duration', the answer is almost always 'effective duration' or a scenario-based calculation.

Practice question with worked solution

Question: A 5-year zero-coupon bond has a Macaulay duration of 5.00 years and a yield to maturity of 6% (annual compounding). Compute: (a) Modified Duration; (b) the approximate percentage price change if yields rise by 50 basis points.

Solution:

(a) Modified Duration = 5.00 / (1 + 0.06) = 5.00 / 1.06 = 4.717

(b) %ΔP ≈ −D_mod × Δy = −4.717 × 0.005 = −2.36%

The bond's price falls by approximately 2.36% for a 50 bp yield rise.

Frequently asked questions

Why is effective duration lower for callable bonds?

The call option caps the bond's upside: as yields fall and the bond's price would otherwise rise, the issuer calls the bond at par. The truncated upside reduces the measured price change per unit yield change, so effective duration is lower than modified duration for the same bond.

Can duration exceed maturity?

Rarely for straight bonds — only in some exotic structures (deep-discount bonds with long gaps between coupons, or specific inverse floaters). For a standard coupon bond, duration is always less than maturity. For a zero-coupon bond, duration equals maturity exactly.

What's convexity and why does it matter?

Convexity is the second derivative of price with respect to yield — it captures the curvature of the price-yield relationship. Convexity is positive for standard bonds and makes the duration-only price approximation conservative: duration alone understates price gains and overstates price losses on large yield moves.

What's the difference between Modified Duration and Dollar Duration?

Modified Duration is a percentage sensitivity (per unit of yield change). Dollar Duration is Modified Duration × Price — a dollar amount per unit of yield change. DV01 is Dollar Duration × 0.0001 — the dollar change per 1 basis point of yield.

Does duration work for floating-rate notes?

Modified Duration gives the wrong answer for FRNs because their coupons reset. The correct measure is the duration to the next reset date, which is typically very short — days or weeks for daily/weekly resetters, up to 3 months for standard quarterly FRNs.

How do I compute portfolio duration?

Weighted average of individual bond durations, where weights are market-value shares of each bond in the portfolio. The approximation holds for small, parallel yield shifts; for non-parallel shifts, key-rate duration is required.

Found this useful?