STRASMORE/EXPLORE 2,767 QUERIES

monthly_curve

Answered against 22 years of US equities and 12 years of US options data and published with the query that produced it. This result is stored as of 2026-09-29, from off-the-run-vs-on-the-run-treasuries.

as of series 24×5read in context →
monthly_curve — 24 rows by 5 columns, computed from US exchange, SIP and OPRA data.
monthmonth_labelyield_2y_pctyield_10y_pctspread_2s10s_bps
2024-10-01Oct 20243.974.112.3
2024-11-01Nov 20244.264.369.8
2024-12-01Dec 20244.234.3916.6
2025-01-01Jan 20254.274.6335.7
2025-02-01Feb 20254.214.4524.1
2025-03-01Mar 20253.974.2831
2025-04-01Apr 20253.784.2850.1
2025-05-01May 20253.924.4250.4
2025-06-01Jun 20253.894.3849.4
2025-07-01Jul 20253.884.3951
2025-08-01Aug 20253.74.2656.1
2025-09-01Sep 20253.574.1255.2
2025-10-01Oct 20253.524.0654
2025-11-01Nov 20253.554.0954.4
2025-12-01Dec 20253.54.1464.2
2026-01-01Jan 20263.544.2167.7
2026-02-01Feb 20263.474.1365.4
2026-03-01Mar 20263.714.2553.1
2026-04-01Apr 20263.84.3252
2026-05-01May 202644.4848.9
2026-06-01Jun 20264.114.4735.8
2026-07-01Jul 20264.224.637.7
2026-08-01Aug 20264.224.6846.8
2026-09-01Sep 20264.614.9433.3
Rows × columns
24 × 5
Period covered
to
Computed
Completeness
No missing values
Source
US exchange, SIP and OPRA market data
Licence
Strasmore terms · free, no signup
Formats
JSON · CSV · the SQL below

What each column holds

Column definitions for monthly_curve, derived from the stored result.
ColumnTypeRangeNotes
month date 2024-10-01 to 2026-09-01
month_label text 24 distinct values (Apr 2025, Apr 2026, Aug 2025…)
yield_2y_pct number 3.47 to 4.61 percent
yield_10y_pct number 4.06 to 4.94 percent
spread_2s10s_bps number 9.8 to 67.7

Computed from Strasmore's warehouse of US exchange, SIP and OPRA market data. Equity prices are delayed; options greeks and implied volatility are end-of-day. This result is stored, not recomputed on load — it is exactly the numbers that were returned on , and the query below is what returned them.

Run it yourself

This is the exact query behind the result above. Change a ticker, a date or a column and run it against the warehouse — no account, no key. The no-signup tier is smaller than the one this page was computed on; a query that reaches past it comes back saying which plan runs it.

SELECT
    toString(toStartOfMonth(date))                AS month,
    formatDateTime(toStartOfMonth(date), '%b %Y') AS month_label,
    round(avg(toFloat64(yield_2_year)), 2)        AS yield_2y_pct,
    round(avg(toFloat64(yield_10_year)), 2)       AS yield_10y_pct,
    round((avg(toFloat64(yield_10_year)) - avg(toFloat64(yield_2_year))) * 100, 1) AS spread_2s10s_bps
FROM global_markets.treasury_yields
WHERE date >= toStartOfMonth(today() - 700)
  AND yield_2_year > 0
  AND yield_10_year > 0
GROUP BY month, month_label
ORDER BY month
⌘/Ctrl + Enter

Work with this data in your AI assistant

Opens ready to query, with this page's data. Free, no account.

More from this analysisoff-the-run-vs-on-the-run-treasuries
daily_moves series 24×4 → curve_today ranking 10×3 → tenor_steps ranking 2×3 → The 2s10s spread by month, full history series 604×5 → One SPY $600 LEAPS call's price over two years (expired Jan 16 2026) series 470×2 → The 5s30s spread month by month, with both legs series 241×4 → See all 2,767 queries →