{"slug":"what-time-do-options-stop-trading","qid":"who_prints_after_four","label":"Share of late session option volume printed after 4:00 p.m. ET, July 15, 2026","post_title":"What Time Do Options Stop Trading?","post_url":"/blog/what-time-do-options-stop-trading#q-who_prints_after_four","columns":["underlying","pct_after_4pm","last_print_et"],"rows":[{"underlying":"IWM","pct_after_4pm":61.62,"last_print_et":"16:14"},{"underlying":"SPY","pct_after_4pm":42.72,"last_print_et":"16:14"},{"underlying":"QQQ","pct_after_4pm":34.9,"last_print_et":"16:15"},{"underlying":"SPX","pct_after_4pm":25.06,"last_print_et":"16:29"},{"underlying":"AAPL","pct_after_4pm":0.04,"last_print_et":"16:00"},{"underlying":"MSFT","pct_after_4pm":0.03,"last_print_et":"16:00"},{"underlying":"NVDA","pct_after_4pm":0,"last_print_et":"16:00"}],"shape":"ranking","sql":"SELECT\n    underlying,\n    round(100 * late_contracts / window_contracts, 2) AS pct_after_4pm,\n    concat(toString(intDiv(last_minute, 60)), ':',\n           leftPad(toString(modulo(last_minute, 60)), 2, '0')) AS last_print_et\nFROM\n(\n    WITH\n        extract(ticker, '^O:([A-Z]+)')                AS root,\n        toTimeZone(sip_timestamp, 'America/New_York') AS et\n    SELECT\n        if(root = 'SPXW', 'SPX', root)                       AS underlying,\n        sum(size)                                            AS window_contracts,\n        sumIf(size, (toHour(et) * 60 + toMinute(et)) >= 960) AS late_contracts,\n        max(toHour(et) * 60 + toMinute(et))                  AS last_minute\n    FROM global_markets.options_trades\n    WHERE (ticker LIKE 'O:AAPL%' OR ticker LIKE 'O:MSFT%' OR ticker LIKE 'O:NVDA%'\n           OR ticker LIKE 'O:SPY%' OR ticker LIKE 'O:QQQ%' OR ticker LIKE 'O:IWM%'\n           OR ticker LIKE 'O:SPX%')\n      AND root IN ('AAPL', 'MSFT', 'NVDA', 'SPY', 'QQQ', 'IWM', 'SPX', 'SPXW')\n      AND sip_timestamp >= '2026-07-15 19:45:00'\n      AND sip_timestamp <  '2026-07-15 20:30:00'\n      AND (toHour(et) * 60 + toMinute(et)) BETWEEN 945 AND 990\n    GROUP BY underlying\n)\nORDER BY pct_after_4pm DESC","computed_at":"2026-08-16T14:08:28.677466+00:00","elapsed":0.0041869}