STRASMORE/EXPLORE 3,256 QUERIES

NVDA beta against SPY, re-estimated monthly over a rolling twelve-month window

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-26, from Implied Volatility vs Beta: What Each Tells You.

as of series 48×4read in context →
NVDA beta against SPY, re-estimated monthly over a rolling twelve-month window — 48 rows by 4 columns, computed from US exchange, SIP and OPRA data.
monthmonth_labelrolling_beta_1yr_squared
2022-09Sep 20222.320.65
2022-10Oct 20222.260.64
2022-11Nov 20222.210.65
2022-12Dec 20222.220.71
2023-01Jan 20232.190.71
2023-02Feb 20232.190.7
2023-03Mar 20232.170.65
2023-04Apr 20232.080.63
2023-05May 20232.040.62
2023-06Jun 20232.060.51
2023-07Jul 20232.050.47
2023-08Aug 20232.080.46
2023-09Sep 20232.030.43
2023-10Oct 20232.110.43
2023-11Nov 20232.180.4
2023-12Dec 20232.050.33
2024-01Jan 202420.3
2024-02Feb 20241.950.28
2024-03Mar 20242.020.29
2024-04Apr 20242.220.29
2024-05May 20242.360.31
2024-06Jun 20242.160.32
2024-07Jul 20242.280.32
2024-08Aug 20242.450.35
2024-09Sep 20242.530.39
2024-10Oct 20242.680.42
2024-11Nov 20242.730.42
2024-12Dec 20242.760.42
2025-01Jan 20252.660.41
2025-02Feb 20252.870.42
2025-03Mar 20252.820.43
2025-04Apr 20252.690.44
2025-05May 20252.10.49
2025-06Jun 20252.090.53
2025-07Jul 20252.060.54
2025-08Aug 20251.980.54
2025-09Sep 20251.90.53
2025-10Oct 20251.850.52
2025-11Nov 20251.830.53
2025-12Dec 20251.840.53
2026-01Jan 20261.870.54
2026-02Feb 20261.760.59
2026-03Mar 20261.730.58
2026-04Apr 20261.70.61
2026-05May 20261.740.41
2026-06Jun 20261.780.4
2026-07Jul 20261.850.43
2026-08Aug 20261.870.44
Rows × columns
48 × 4
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 NVDA beta against SPY, re-estimated monthly over a rolling twelve-month window, derived from the stored result.
ColumnTypeRangeNotes
month text 48 distinct values (2022-09, 2022-10, 2022-11…)
month_label text 48 distinct values (Apr 2023, Apr 2024, Apr 2025…)
rolling_beta_1y number 1.7 to 2.87
r_squared number 0.28 to 0.71

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.

WITH
    px AS
    (
        SELECT
            ticker,
            date,
            toFloat64(close) AS close_px
        FROM global_markets.stocks_daily_aggs
        WHERE ticker IN ('SPY','NVDA')
          AND date >= '2021-08-01'
          AND date <= '2026-08-21'
    ),
    daily_ret AS
    (
        SELECT
            ticker,
            date,
            close_px / lagInFrame(close_px) OVER (PARTITION BY ticker ORDER BY date ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) - 1 AS ret
        FROM px
    ),
    paired AS
    (
        SELECT
            s.date AS d,
            s.ret  AS stock_ret,
            i.ret  AS index_ret
        FROM daily_ret AS s
        INNER JOIN
        (
            SELECT date, ret FROM daily_ret WHERE ticker = 'SPY' AND isFinite(ret)
        ) AS i ON i.date = s.date
        WHERE s.ticker = 'NVDA' AND isFinite(s.ret)
    ),
    anchors AS
    (
        SELECT DISTINCT toStartOfMonth(d) AS anchor
        FROM paired
        WHERE d >= '2022-09-01'
    )
SELECT
    formatDateTime(a.anchor, '%Y-%m')                                    AS month,
    formatDateTime(a.anchor, '%b %Y')                                    AS month_label,
    round(covarSamp(p.stock_ret, p.index_ret) / varSamp(p.index_ret), 2) AS rolling_beta_1y,
    round(pow(corr(p.stock_ret, p.index_ret), 2), 2)                     AS r_squared
FROM anchors AS a, paired AS p
WHERE p.d < a.anchor
  AND p.d >= subtractYears(a.anchor, 1)
GROUP BY a.anchor
ORDER BY a.anchor
⌘/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 analysisImplied Volatility vs Beta: What Each Tells You
Near-the-money implied volatility, 20 to 45 days to expiry, three weeks to Aug 21 2026 table 11×5 → Average absolute daily move on sessions when SPY moved less than 0.25 percent ranking 10×4 → Beta and R-squared against SPY: daily returns versus weekly, twelve months to Aug 21 2026 table 10×5 → ZM at-the-money 30-day implied volatility, recent sessions series 81×4 → AAPL realized volatility: 20-session against 60-session lookback series 72×3 → TSLA at-the-money implied volatility by session: trailing 90 days series 64×2 → See all 3,256 queries →