{
 "spec": "wiki-deeplink/1",
 "site": "fixed-income.wiki",
 "origin": "https://fixed-income.wiki",
 "reviewed": "2026-09-03",
 "transport": "query-string",
 "auth": "none",
 "execution": "client-side",
 "calculators": [
  {
   "id": "bond",
   "title": "Price, yield and accrued calculator",
   "url": "https://fixed-income.wiki/calc/",
   "description": "A fixed-rate bond priced from either a quoted price or a yield, on a stated day-count basis, returning the other side of that pair together with accrued interest, both prices, and the full set of risk measures.",
   "computes": [
    "accrued interest",
    "clean price",
    "dirty price",
    "yield to maturity",
    "Macaulay duration",
    "modified duration",
    "DV01",
    "convexity",
    "cash-flow schedule with discount factors",
    "invoice amount on a stated par value"
   ],
   "params": [
    {
     "name": "settle",
     "label": "Settlement date",
     "type": "date",
     "default": "2026-08-27"
    },
    {
     "name": "maturity",
     "label": "Maturity date",
     "type": "date",
     "default": "2034-11-15"
    },
    {
     "name": "coupon",
     "label": "Annual coupon rate, percent of par",
     "type": "number",
     "default": "4.500"
    },
    {
     "name": "freq",
     "label": "Coupon periods per year",
     "type": "number",
     "default": "2"
    },
    {
     "name": "basis",
     "label": "Day-count basis: actacticma, actactisda, 30360, 30e360, 30e360isda, act360, act365f, nl365",
     "type": "string",
     "default": "actacticma"
    },
    {
     "name": "price",
     "label": "Quoted price per 100 of par; leave blank to solve from yield",
     "type": "number",
     "default": "98.750"
    },
    {
     "name": "yield",
     "label": "Yield in percent, nominal at the coupon frequency; leave blank to solve from price",
     "type": "number",
     "default": ""
    },
    {
     "name": "par",
     "label": "Par amount for the invoice calculation",
     "type": "number",
     "default": "10000000"
    }
   ],
   "examples": [
    {
     "query": "settle=2026-08-27&maturity=2034-11-15&coupon=4.500&freq=2&basis=actacticma&price=98.750&par=10000000",
     "means": "the reference bond used throughout this corpus. Accrued 1.271739, full price 100.021739, yield 4.684070 percent, modified duration 6.706168, DV01 0.067076 per 100 of par, convexity 53.827761, invoice 10,002,173.91 on 10,000,000 par"
    },
    {
     "query": "settle=2026-08-27&maturity=2034-11-15&coupon=4.500&freq=2&basis=actacticma&yield=4.684070",
     "means": "the same bond priced from its yield instead, returning a quoted price of 98.750 and confirming the inversion"
    },
    {
     "query": "settle=2026-08-27&maturity=2034-11-15&coupon=4.500&freq=2&basis=30360&price=98.750&par=10000000",
     "means": "the same bond on a 30/360 Bond Basis accrual instead of ACT/ACT (ICMA). Accrued becomes 1.275000 against 1.271739, a difference of 326.09 on 10,000,000 par"
    },
    {
     "query": "settle=2026-08-27&maturity=2029-05-15&coupon=2.750&freq=2&basis=actacticma&price=95.000&par=10000000",
     "means": "the shorter hedge instrument used in the risk section: yield 4.730886 percent, modified duration 2.553631, DV01 0.024458 per 100 of par, convexity 7.940756"
    },
    {
     "query": "settle=2026-11-15&maturity=2034-11-15&coupon=4.500&freq=2&basis=actacticma&yield=4.500",
     "means": "the reference bond on a coupon date at a yield exactly equal to its coupon, which returns a quoted price of 100.000 and zero accrued, the boundary case that shows why the same yield off a coupon date gives a price slightly below par"
    }
   ]
  },
  {
   "id": "hedge",
   "title": "Duration hedge and curve calculator",
   "url": "https://fixed-income.wiki/calc/hedge/",
   "description": "Two bonds sized against each other on DV01, with an optional yield beta, showing the residual profit and loss across a range of parallel yield shifts and the key-rate decomposition that a single hedge ratio conceals.",
   "computes": [
    "DV01 of each leg",
    "DV01-neutral hedge ratio",
    "hedge par amount",
    "beta-adjusted hedge ratio",
    "net profit and loss across a shift range",
    "convexity residual",
    "key-rate durations of each leg",
    "portfolio duration and convexity"
   ],
   "params": [
    {
     "name": "settle",
     "label": "Settlement date for both legs",
     "type": "date",
     "default": "2026-08-27"
    },
    {
     "name": "target",
     "label": "Target bond as maturity:coupon:price, the leg being hedged",
     "type": "string",
     "default": "2034-11-15:4.500:98.750"
    },
    {
     "name": "hedge",
     "label": "Hedge bond as maturity:coupon:price",
     "type": "string",
     "default": "2029-05-15:2.750:95.000"
    },
    {
     "name": "par",
     "label": "Par amount of the target bond",
     "type": "number",
     "default": "10000000"
    },
    {
     "name": "beta",
     "label": "Yield beta of the hedge leg against the target leg",
     "type": "number",
     "default": "1.00"
    },
    {
     "name": "shifts",
     "label": "Comma-separated parallel yield shifts in basis points",
     "type": "string",
     "default": "-200,-100,-50,-25,25,50,100,200"
    },
    {
     "name": "keyrates",
     "label": "Comma-separated key-rate maturities in years",
     "type": "string",
     "default": "2,5,10"
    }
   ],
   "examples": [
    {
     "query": "settle=2026-08-27&target=2034-11-15:4.500:98.750&hedge=2029-05-15:2.750:95.000&par=10000000&beta=1.00",
     "means": "the hedge worked in the risk section. Ratio 2.742513, so 27,425,126 par of the shorter bond against 10,000,000 of the reference bond, matching DV01 at 6,707.63 per basis point"
    },
    {
     "query": "settle=2026-08-27&target=2034-11-15:4.500:98.750&hedge=2029-05-15:2.750:95.000&par=10000000&beta=0.90",
     "means": "the same pair with a yield beta of 0.90, raising the hedge to 30,472,362 par, an 11.1 percent larger position for a 0.10 change in an estimated parameter"
    },
    {
     "query": "settle=2026-08-27&target=2034-11-15:4.500:98.750&hedge=2029-05-15:2.750:95.000&par=10000000&shifts=-100,100",
     "means": "the convexity residual on a DV01-neutral pair: 17,166.84 on a 100 basis point rally and 15,848.64 on a 100 basis point selloff, positive in both directions"
    },
    {
     "query": "settle=2026-08-27&target=2034-11-15:4.500:98.750&hedge=2029-05-15:2.750:95.000&keyrates=2,5,10",
     "means": "the key-rate decomposition the single ratio hides. The target bond carries 56.7 percent of its duration at the 10-year key rate and 3.8 percent at the 2-year, while the hedge leg's profile is concentrated at the short end, so the pair is parallel-neutral and fully exposed to a change in slope"
    },
    {
     "query": "settle=2026-08-27&target=2034-11-15:4.500:98.750&hedge=2029-05-15:2.750:95.000&par=10000000&shifts=-25,25&keyrates=2,5,10",
     "means": "a small-shift check, where the residual is close to zero and the hedge behaves as designed, which is the regime the DV01 ratio is derived for"
    }
   ]
  }
 ]
}