The Analyst's Path

DV01 and PVBP

DV01 and PVBP are two names for the same number: the currency amount a position's value moves for a one-basis-point move in yield. You get it by multiplying modified duration by the position's market value and then by 0.0001. Modified duration is a percentage sensitivity, perfect for comparing bonds of different sizes, useless for sizing an actual position. DV01 is the number a trading desk uses to size a position or a hedge.

3 min readPart of Duration, Convexity & Interest-Rate RiskOpen in course mode

Advertisement

Modified duration is a percentage sensitivity, perfect for comparing bonds of different sizes, useless for sizing an actual position. Scale it into currency:

Money duration = Modified duration × Market value of the position

PVBP (price value of a basis point) / DV01 (dollar value of an '01')
    = Money duration × 0.0001

PVBP is the number a trading desk actually lives by: the currency amount (rupees, dollars, whatever the book is denominated in) that a position's value moves for a one-basis-point move in yield. It is never a percentage. "The bond's duration is 5.2, so its DV01 is 5.2%" is not a rounding error; it is a category error, and Practice P16 makes you catch and fix it. Worked Example 1 computes a real PVBP for a ₹10 crore G-Sec position; Worked Example 2 computes one for a $50 million UST position and uses it directly to size a hedge.

{
  "skill": "Building and independently cross-checking a duration/PVBP calculation before it sizes a real hedge",
  "use": "Have a code-capable assistant write a small function that builds a bond's full cash-flow table and computes Macaulay duration, modified duration, money duration, and PVBP from coupon, yield, maturity, frequency, and face value — then run it and check every row of the cash-flow table by hand against this module's method.",
  "tools": ["Code-capable chat assistants — Claude, ChatGPT, Gemini, with code execution", "Notebook environments — Jupyter or Colab with an AI pair-programmer", "Spreadsheet AI add-ins that draft PV/duration formulas"],
  "prompt": "Write a Python function bond_risk(coupon_rate, ytm, years, freq, face) that returns price, Macaulay duration, modified duration, and analytical convexity using the standard cash-flow-weighted formulas. Show me the full period-by-period cash-flow table — period, cash flow, present value, PV weight — so I can check every row by hand.",
  "verify": "This is one of the highest AI-over-trust zones in the whole program (see the opener above): a wrong duration or DV01 silently mis-sizes a real hedge, and a fluent, confidently wrong figure is exactly what multi-step compounding arithmetic produces from a model. There is no filing to trace a computed number to — the primary-source check here is (1) an independent second method (rebuild the same bond's duration via bump-and-reprice effective duration and confirm it lands close to the closed-form modified duration), and (2) the named market convention (FIMMDA/CCIL/FBIL day count and compounding for a G-Sec, the UST auction convention for a Treasury) — confirm the code used the convention you intended, not a default the model assumed.",
  "diy": "You must already be able to build the cash-flow table and compute Macaulay/modified duration for a plain bond by hand (the two sections above) before you delegate the arithmetic — otherwise you cannot tell a sign error, a compounding-frequency slip (annual vs semi-annual), or a units mistake (percent vs currency, Practice P16) from a correct answer, and in this domain that mistake costs real money, not an embarrassing citation.",
  "market": "IN"
}

Advertisement

Part of the course

This page is part of Duration, Convexity & Interest-Rate Risk (FI1.02), in Phase 12: Finance Plus, AI and the quant-code track. The module's flashcards and its quiz are in the app.