Duration Desk

Bond duration & convexity calculator

Price, yield to maturity, Macaulay and modified duration, convexity and DV01, with every cash flow shown so you can check the work.

Bond

%
yrs
%
Quoted as an annual rate, compounded with the coupon frequency.

Rate shock

bp

Price–yield curve

Actual priceDuration estimate (tangent)

Worked solution

The same steps you would write on an exam, with this bond's numbers filled in.

    Cash flow table

    How the numbers fit together

    Macaulay duration

    The weighted-average time until you receive the bond's cash flows, in years. Each payment's weight is its share of the bond's present value.

    Dmac = Σ tk · PVk / P

    Modified duration

    The approximate percentage change in price for a one-unit change in yield. A modified duration of 4.2 means roughly a 4.2% price drop if yields rise by 1 percentage point.

    Dmod = Dmac / (1 + y/m)

    Convexity

    The curvature that duration misses. Adding it makes the estimate hug the real price curve, which matters for big moves and long bonds.

    C = Σ PVk · k(k+1) / [ (1 + y/m)² · m² · P ]
    ΔP / P ≈ −Dmod · Δy + ½ · C · (Δy)²

    DV01

    The change in price for a one basis point move: Dmod × P × 0.0001.

    Why is the yield divided by the number of payments?

    Bond yields are quoted as annual rates. A semi-annual bond discounts each half-year cash flow at y/2, so the modified duration divides by (1 + y/2), not (1 + y). Using the annual rate here is the most common exam mistake.

    Why is convexity divided by m²?

    The sum Σ PV·k(k+1) is measured in periods squared. Dividing by m² converts it to years squared, so it can be used with an annual change in yield.

    What is the duration of a zero-coupon bond?

    Its Macaulay duration equals its maturity, because there is only one cash flow. Try the 10-year zero preset above.

    Is this the same as effective duration?

    For a plain bond with no embedded options, effective duration is essentially the modified duration shown here. Callable and putable bonds need an option-adjusted model, which this calculator does not cover.

    Does it handle accrued interest?

    No. The calculator assumes you are on a coupon date, so every period is whole and the price shown is the full price.