Macaulay Duration — the weighted-average time you wait to receive each cash flow, weighted by the present value of that cash flow.
D_Macaulay = Sum [t=1..n] (t × PV(CF_t)) / Price
It is expressed in years (after dividing the period index by the payment frequency). A zero-coupon bond has Macaulay duration exactly equal to its maturity. A coupon bond has duration less than maturity because the coupons return some cash flow earlier.
Modified Duration — the percentage price change per 1 percentage point change in yield.
D_Modified = D_Macaulay / (1 + y/m)
If modified duration is 7.5, a 1% rise in YTM produces approximately a 7.5% drop in price. The negative sign is implicit (yields and prices move opposite).
Dollar Duration — modified duration multiplied by current price, expressed in dollars.
D_Dollar = D_Modified × Price × 0.01
That is the dollar change in price for a 1% yield change — useful for portfolio aggregation and for hedging via Treasury futures.
Convexity — the second derivative of price with respect to yield, normalized by price.
Convexity = Sum [t=1..n] (t × (t+1) × PV(CF_t)) / (Price × (1 + y/m)^2 × m^2)
The full duration + convexity price-change approximation:
%ΔP ≈ −D_Modified × Δy + ½ × Convexity × (Δy)^2
Convexity is always positive for vanilla (non-callable) bonds, which means the duration-only estimate understates the price gain when rates fall and overstates the price loss when rates rise. The bigger the rate move, the bigger the convexity correction.
Convexity-favorability of long-duration bonds. A 30-year zero has enormous convexity. That's why insurers and pension funds buy them: they get the convexity bonus that hedges against extreme rate moves.
What the tool does NOT model. Callable bond convexity goes negative when rates fall below the call price (the option is exercised, capping the upside). Mortgage-backed convexity is famously negative (prepayments accelerate when rates fall). For those instruments, OAS modeling is required, which is beyond a deterministic-cash-flow tool.