STRASMORE/EXPLORE 3,256 QUERIES

grid_intervals

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-09, from anatomy-of-an-option-contract.

as of table 4×5read in context →
grid_intervals — 4 rows by 5 columns, computed from US exchange, SIP and OPRA data.
band_labelstrikes_in_bandlow_strikehigh_strikeavg_interval
0-5%73253555
5-10%631037012
10-25%192604208.89
25-50%2317551015.23
Rows × columns
4 × 5
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 grid_intervals, derived from the stored result.
ColumnTypeRangeNotes
band_label text 4 distinct values (0-5%, 10-25%, 25-50%…)
strikes_in_band number 6 to 23
low_strike number 175 to 325 US dollars
high_strike number 355 to 510 US dollars
avg_interval number 5 to 15.23

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
    last_day AS
    (
        SELECT max(date) AS d
        FROM global_markets.options_greeks
        WHERE underlying_symbol = 'AAPL'
    ),
    chosen_expiry AS
    (
        SELECT expiration_date AS exp
        FROM global_markets.options_greeks
        WHERE underlying_symbol = 'AAPL'
          AND date = (SELECT d FROM last_day)
          AND days_to_expiry BETWEEN 20 AND 60
        GROUP BY expiration_date
        ORDER BY count() DESC, expiration_date
        LIMIT 1
    ),
    spot AS
    (
        SELECT max(toFloat64(underlying_close)) AS s
        FROM global_markets.options_greeks
        WHERE underlying_symbol = 'AAPL'
          AND date = (SELECT d FROM last_day)
          AND expiration_date = (SELECT exp FROM chosen_expiry)
    )
SELECT
    multiIf(
        abs(100 * (toFloat64(strike_price) / (SELECT s FROM spot) - 1)) < 5,  '0-5%',
        abs(100 * (toFloat64(strike_price) / (SELECT s FROM spot) - 1)) < 10, '5-10%',
        abs(100 * (toFloat64(strike_price) / (SELECT s FROM spot) - 1)) < 25, '10-25%',
        '25-50%')                                                                 AS band_label,
    uniqExact(strike_price)                                                       AS strikes_in_band,
    round(min(toFloat64(strike_price)), 2)                                        AS low_strike,
    round(max(toFloat64(strike_price)), 2)                                        AS high_strike,
    round((max(toFloat64(strike_price)) - min(toFloat64(strike_price))) / greatest(uniqExact(strike_price) - 1, 1), 2) AS avg_interval
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
  AND date = (SELECT d FROM last_day)
  AND expiration_date = (SELECT exp FROM chosen_expiry)
  AND abs(toFloat64(strike_price) / (SELECT s FROM spot) - 1) <= 0.5
GROUP BY band_label
ORDER BY min(abs(toFloat64(strike_price) / (SELECT s FROM spot) - 1)) ASC
⌘/Ctrl + Enter

Work with this data in your AI assistant

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