STRASMORE/EXPLORE 2,469 QUERIES

osi_anatomy

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-22, from eurex-option-codes-odax-odap-oesx.

as of table 8×6read in context →
osi_anatomy — 8 rows by 6 columns, computed from US exchange, SIP and OPRA data.
contract_coderootexpiry_fieldcall_putstrike_fieldcontracts_traded
O:SPY260618C00750000SPY260618C00750000128199
O:SPY260618C00760000SPY260618C0076000088539
O:SPY260618C00755000SPY260618C0075500079928
O:SPY260618P00740000SPY260618P0074000074895
O:SPY260618P00745000SPY260618P0074500073805
O:SPY260618C00751000SPY260618C0075100072531
O:SPY260618P00730000SPY260618P0073000067968
O:SPY260618C00752000SPY260618C0075200061391
Rows × columns
8 × 6
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 osi_anatomy, derived from the stored result.
ColumnTypeRangeNotes
contract_code text 8 distinct values
root text 1 distinct value (SPY)
expiry_field text 1 distinct value (260618)
call_put text 2 distinct values (C, P)
strike_field text 8 distinct values (00730000, 00740000, 00745000…)
contracts_traded number 61,391 to 128,199 count

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
    ticker                                    AS contract_code,
    underlying_symbol                         AS root,
    formatDateTime(expiration_date, '%y%m%d') AS expiry_field,
    upper(substring(option_type, 1, 1))       AS call_put,
    right(concat('00000000', toString(toUInt64(round(toFloat64(strike_price) * 1000)))), 8) AS strike_field,
    sum(volume)                               AS contracts_traded
FROM global_markets.options_greeks
WHERE underlying_symbol = 'SPY'
  AND date = '2026-06-17'
  AND volume > 0
GROUP BY ticker, underlying_symbol, expiration_date, option_type, strike_price
ORDER BY contracts_traded DESC
LIMIT 8
⌘/Ctrl + Enter
More from this analysiseurex-option-codes-odax-odap-oesx
expiry_shelf ranking 5×2 expiry_ladder ranking 5×3 contract_notional ranking 5×3 The 2s10s spread, every print of the half table 124×2 The 2s10s spread, every print of the half table 124×2 Every half-year since 1976: the 2y and 10y change, the twist between them, and the half's lowest 2s10s print table 100×7 See all 2,469 queries →