Reconstructing Historical Treasury Benchmarks from Auction Records
Summary
The note outlines a way to identify historical Treasury benchmark securities without relying on a proprietary terminal. Start with records of Treasury auctions, then assign each issue a rounded original term by measuring the time from issuance to maturity in years and rounding to the nearest integer. This groups securities into approximate maturity buckets such as the original terms used for benchmark comparisons.
For each trading date and term bucket, select the issue with the most recent auction date as the benchmark member. The method uses auction history and a consistent selection rule to build a daily historical series. It is a rough procedure: the note does not specify a data provider, address missing or revised records, or discuss benchmark conventions that may differ from this latest-auction rule. It also gives no validation against Bloomberg or other benchmark datasets.
Key ideas
- Historical Treasury issues can be grouped by their rounded original term to maturity.
- Calculate original term from the difference between maturity and issue dates.
- For a given trading day and term bucket, use the most recently auctioned issue.
- The proposed rule is an outline and does not establish equivalence with terminal benchmarks.
Tags
Full text
# Bond Benchmarks Not relying on Bloomberg
# Bond Benchmarks Not relying on Bloomberg
I have previously hit this forum for some guidance on getting benchmark curve members (link below). I have managed to get this working with Bloomberg, but I was wondering, is there any way to reliably get this info across the curve without relying on Bloomberg?
I have thought to scrape this information directly from the Treasury (for ex) but are there any other resources online for this?
Cheers!
Bloomberg: Get Historical Benchmarks
## Answer by Helin (score 2)
https://quant.stackexchange.com/a/69294
Here's a rough outline of what you can do:
- You can retrieve all the historical Treasury auctions via this url.
- To make things easier, I recommend that you compute a `rounded_term` for each auctioned issue, which can be calculated as $(\text{maturityDate} - \text{issueDate}) / 365$, rounded to the nearest integer. This is simply the original term to maturity in years.
- Then on each trading day, you simply query for all issues for the `rounded_term` of interest, sort them by `auctionDate`, and use the most recently auctioned issue.Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.