{"slug":"when-do-0dte-options-trade","qid":"by_underlying","label":"Same-day options volume by underlying: the ten heaviest names, July 10, 2026","post_title":"When Do 0DTE Options Trade? By the Hour","post_url":"/blog/when-do-0dte-options-trade#q-by_underlying","columns":["underlying","same_day_contracts_m","pct_of_all_0dte","same_day_pct_of_name","pct_traded_before_noon"],"rows":[{"underlying":"SPY","same_day_contracts_m":8.01,"pct_of_all_0dte":25.5,"same_day_pct_of_name":72.1,"pct_traded_before_noon":54.4},{"underlying":"QQQ","same_day_contracts_m":4.54,"pct_of_all_0dte":14.5,"same_day_pct_of_name":75.5,"pct_traded_before_noon":51.1},{"underlying":"SPXW","same_day_contracts_m":2.78,"pct_of_all_0dte":8.9,"same_day_pct_of_name":72.9,"pct_traded_before_noon":51.5},{"underlying":"NVDA","same_day_contracts_m":2.74,"pct_of_all_0dte":8.7,"same_day_pct_of_name":54.5,"pct_traded_before_noon":56.3},{"underlying":"TSLA","same_day_contracts_m":2.28,"pct_of_all_0dte":7.3,"same_day_pct_of_name":67.7,"pct_traded_before_noon":50.6},{"underlying":"IWM","same_day_contracts_m":0.9,"pct_of_all_0dte":2.8,"same_day_pct_of_name":65.4,"pct_traded_before_noon":67.4},{"underlying":"AAPL","same_day_contracts_m":0.76,"pct_of_all_0dte":2.4,"same_day_pct_of_name":56.5,"pct_traded_before_noon":56.4},{"underlying":"META","same_day_contracts_m":0.7,"pct_of_all_0dte":2.2,"same_day_pct_of_name":47.6,"pct_traded_before_noon":55.3},{"underlying":"MU","same_day_contracts_m":0.47,"pct_of_all_0dte":1.5,"same_day_pct_of_name":51,"pct_traded_before_noon":44.5},{"underlying":"AMZN","same_day_contracts_m":0.38,"pct_of_all_0dte":1.2,"same_day_pct_of_name":46.9,"pct_traded_before_noon":60.4}],"shape":"table","sql":"WITH by_name AS (\n    SELECT substring(ticker, 3, length(ticker) - 17) AS underlying,\n           sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260710') AS same_day_size,\n           sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260710'\n                       AND toHour(toTimeZone(sip_timestamp, 'America/New_York')) < 12) AS morning_size,\n           sum(size) AS all_size\n    FROM global_markets.options_trades\n    WHERE sip_timestamp >= toDateTime64('2026-07-10 13:30:00', 9)\n      AND sip_timestamp < toDateTime64('2026-07-10 20:00:00', 9)\n      AND ticker NOT LIKE 'O:SPCX%'\n    GROUP BY underlying\n)\nSELECT underlying,\n       round(same_day_size / 1e6, 2) AS same_day_contracts_m,\n       round(100.0 * same_day_size / sum(same_day_size) OVER (), 1) AS pct_of_all_0dte,\n       round(100.0 * same_day_size / all_size, 1) AS same_day_pct_of_name,\n       round(100.0 * morning_size / same_day_size, 1) AS pct_traded_before_noon\nFROM by_name\nORDER BY same_day_size DESC\nLIMIT 10","computed_at":"2026-08-13T14:43:38.816982+00:00","elapsed":0.003012367}