STRASMORE/EXPLORE 3,022 QUERIES

theta_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-10-04, from us-stock-options-for-israeli-investors.

as of ranking 6×3read in context →
theta_curve — 6 rows by 3 columns, computed from US exchange, SIP and OPRA data.
dte_bucketiv_pcttheta_decay_pct
2-516.715.36
6-10198.73
11-2019.24.48
21-4520.91.75
46-9020.50.84
91+23.30.34
Rows × columns
6 × 3
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 theta_curve, derived from the stored result.
ColumnTypeRangeNotes
dte_bucket text 6 distinct values (11-20, 2-5, 21-45…)
iv_pct number 16.7 to 23.3 percent
theta_decay_pct number 0.34 to 15.36 percent

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 (SELECT max(date) FROM global_markets.options_greeks) AS latest_day
SELECT
    multiIf(days_to_expiry <= 5,  '2-5',
            days_to_expiry <= 10, '6-10',
            days_to_expiry <= 20, '11-20',
            days_to_expiry <= 45, '21-45',
            days_to_expiry <= 90, '46-90',
            '91+')                                                    AS dte_bucket,
    round(avg(implied_volatility) * 100, 1)                           AS iv_pct,
    round(avg(toFloat64(theta) / toFloat64(option_close)) * -100, 2)  AS theta_decay_pct
FROM global_markets.options_greeks
WHERE date = latest_day
  AND underlying_symbol IN ('AAPL', 'MSFT', 'NVDA', 'AMZN', 'GOOGL', 'TSLA', 'SPY', 'QQQ', 'TEVA')
  AND iv_converged = 1
  AND volume > 0
  AND days_to_expiry BETWEEN 2 AND 365
  AND toFloat64(option_close) > 0.10
  AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.02
GROUP BY dte_bucket
HAVING count() >= 5
ORDER BY min(days_to_expiry)
⌘/Ctrl + Enter

Work with this data in your AI assistant

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