Build a bond ladder using current US Treasury par curve yields. Specify portfolio size, number of rungs, maturity range, and an optional reinvestment rate to see per-rung metrics and aggregated cash flows.

Inputs

  • Portfolio Size ($) — total amount to invest across all rungs
  • Number of Rungs — how many bonds in the ladder (2–20)
  • Min Maturity / Max Maturity — shortest and longest rung
  • Reinvestment Rate (%) — assumed flat rate for reinvesting coupons and maturing principal
  • click GO to compute

Charts

  • Par Curve with Rungs — the interpolated par curve with each rung marked
  • Cash Flow Schedule — stacked bar chart of semiannual coupon and principal flows

Results

  • Summary card — portfolio-level aggregates: WAM, Avg Yield, Modified Duration, DV01, Convexity, Annual Income, Annualized Return

  • Ladder table — one row per rung with the following columns:

    • Rung — sequence number (1 through N)
    • Maturity — time to maturity, linearly spaced from min to max and rounded to the nearest month
    • Coupon (%) — par yield at that maturity, interpolated from the live curve
    • Face Value — equal dollar allocation (portfolio size / number of rungs)
    • Annual Income — face value multiplied by coupon rate
    • Duration — modified duration of the rung (par bond, semiannual compounding)
  • Cash flow table — semiannual period-by-period breakdown of all coupon and principal payments aggregated across rungs (collapsible)

Use Cases

  • construct a maturity-diversified Treasury portfolio with predictable cash flows
  • compare income and duration across different ladder configurations
  • estimate total return under a static reinvestment assumption
  • understand how rung spacing affects portfolio WAM and interest rate risk

Assumptions

  • all bonds purchased at par (coupon rate = par yield)
  • semiannual coupon payments per US Treasury convention
  • reinvestment model is static — coupons and principal compound at the flat reinvestment rate, not reinvested into new ladder rungs
  • yields interpolated via PCHIP from the live par curve

Per-ladder pages (e.g. /ladder/10-year) show pre-computed results for common ladder configurations at current yields.