17 — Treasury Futures and DV01 Hedging¶
Free learning pack¶
- CME Group — Treasury futures basics
resources/fixed_income.mdreference/fixed_income/treasury_futures_hedging.md
Do not search for more material until these are insufficient.
PREDICT¶
A futures contract's DV01 is approximated from its cheapest-to-deliver (CTD) bond's DV01 divided by the conversion factor. If the conversion factor is less than 1, is the futures DV01 larger or smaller than the CTD bond's own DV01?
Formula¶
futures_dv01_per_contract = ctd_dv01_per_contract / conversion_factor
ctd_dv01_per_contract = 145.0 # $ per bp, for $100,000 face value per contract
conversion_factor = 0.92
# MANUAL FIRST:
# compute the futures DV01 per contract.
futures_dv01 = None
print(futures_dv01)
PREDICT (hedge)¶
A portfolio has a DV01 of +$120,000 (it loses money if yields rise). Using the futures DV01 above, should the PM buy or sell futures contracts to hedge, and roughly how many?
Formula (hedge ratio)¶
units = hedge_ratio(target_dv01, hedge_instrument_dv01)
Negative units = short (sell) the hedge instrument.
portfolio_dv01 = 120_000
# MANUAL FIRST:
# compute the number of futures contracts needed to hedge portfolio_dv01,
# using futures_dv01 from the previous cell. Round to the nearest contract
# and state whether that means buying or selling.
contracts = None
print(contracts)
Experiment¶
Suppose the cheapest-to-deliver bond changes to one with a different DV01
and conversion factor mid-quarter. Recompute the hedge and compare — this
is exactly the limitation named in reference/fixed_income/treasury_futures_hedging.md.
Reference¶
reference/fixed_income/treasury_futures_hedging.md
Promote¶
Use src/pm/fixed_income/futures.py::futures_dv01_per_contract and
src/pm/fixed_income/duration.py::hedge_ratio only after your own
implementation.
Test¶
pytest tests/test_fixed_income.py
ORAL CHECK¶
Explain to a PM why a futures-based DV01 hedge can drift out of hedge even if nobody trades anything, purely from rate moves.
Try /tutor fixed-income treasury futures for an adaptive walkthrough.