Skip to content
All library documents

Questions About the SOFR Short End of OptionMetrics Zero Curves

Article Quant Q&A · Author: DomB

Summary

The document examines how OptionMetrics constructs the short end of its implied risk-free term structure for SPX options data. It reports that the methodology uses SOFR overnight rates for the front end, represented by ten-day and thirty-day rates, while rates beyond thirty days are derived using option-market information such as box spreads. The author questions how one overnight benchmark could yield distinct short-maturity rates.

As evidence of the discrepancy, the document gives one date’s ten-day, thirty-day, and sixty-day curve values and compares them with recent historical SOFR levels and averages. It also says that checks using Term SOFR and several averaging and compounding choices did not reproduce the front-end values. The document poses the methodology question but supplies no answer or confirmed calculation. Its suggested averaging approach is explicitly tentative, and the single-date example cannot establish how the vendor’s curve is generally constructed.

Key ideas

  • The described methodology uses SOFR overnight rates for the ten-day and thirty-day front end.
  • The document reports different rates for those two short maturities on the example date.
  • The author’s historical averaging and compounding checks did not match the reported curve values.
  • The calculation method remains unresolved in the document, so the example is not a general validation.

Tags

Full text
# Derive zero-rate term structure from SOFR overnight rates (OptionMetrics v6.0)


# Derive zero-rate term structure from SOFR overnight rates (OptionMetrics v6.0)












I'm working on my master thesis on implied volatility surfaces and trying to validate SPX options data from IvyDB US (OptionMetrics), but I'm stuck understanding their zero-rate term structure methodology. In their documentation, they state:

> The implied risk-free rate curve is calculated as follows: Step 1. The SOFR overnight rates are used for the front end of our term structure. Step 2. For maturities greater than 30 days, [... (following common literature to derive it from box-spreads)]

Their "front end" consists of a 10-day and a 30-day rate. However, I just cannot understand how they calculated those rates. Here is an example, of one day's term structure.

| Date | Days | Rate (%) |
| 2022-04-05 | 10 ("front end") | 0.425401 |
| 2022-04-05 | 30 ("front end") | 0.507276 |
| 2022-04-05 | 60 | 0.625963 |

I understand that SOFR is a single daily rate & backward-looking (while the term structure requires market expectations). Nevertheless, their formulation reads to me like they did indeed use only the SOFR rates to derive their interest rates. But when looking at the SOFR data, in the 30 days before this date, the SOFR was between 0.05%-0.3% (30d average around 0.2%). Even in the 30 days after this date the SOFR was considerably lower (30d average around 0.28%) than both their 10d and 30d rates.

For completeness, I also checked Term SOFR, which also doesn't match. I've tried backward-looking averages, compound vs simple averaging, different time windows - nothing gets me close to their numbers.

I've searched their methodology documents but can't find any more specifics on their calculation. Has anyone worked with OptionMetrics data or understands their approach to constructing the "front end" of their curve from overnight rates alone?

My specific questions:

- How is OptionMetrics calculating these risk-free rates from SOFR overnight data? My understanding is that data before 30d is very noisy which is why an alternative to option-implied rates is used for this end.

- How can this generate a non-flat term structure (10d ≠ 30d) if all rates are derived from the same historical overnight data?

- Are there other/better ideas for the short end of the term structure? My naïve approach was (i) calculate annualized 30d-average SOFR, (ii) use daily version of (i) for continuous compounding over 10/30 days, (iii) annualize again, which results in 10/30d estimates very close to eachother (nowhere near the difference seen in OptionMetric's data).

Any insights would be greatly appreciated - this is driving me crazy!

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.