{"slug":"market-order-vs-limit-order","qid":"extended_hours","label":"Median quoted spread by session window: pre-market vs. regular vs. after-hours, July 8, 2026","post_title":"Market Order vs Limit Order, Measured","post_url":"/blog/market-order-vs-limit-order#q-extended_hours","columns":["session_window","spy_spread_cents","aapl_spread_cents","ko_spread_cents"],"rows":[{"session_window":"1. Pre-market (4:00-9:30)","spy_spread_cents":7,"aapl_spread_cents":32,"ko_spread_cents":28},{"session_window":"2. Regular (9:30-16:00)","spy_spread_cents":2,"aapl_spread_cents":3,"ko_spread_cents":1},{"session_window":"3. After-hours (16:00-20:00)","spy_spread_cents":6,"aapl_spread_cents":20,"ko_spread_cents":30}],"shape":"ranking","sql":"SELECT multiIf(et_min < 570, '1. Pre-market (4:00-9:30)', et_min < 960, '2. Regular (9:30-16:00)', '3. After-hours (16:00-20:00)') AS session_window,\n       round(quantileDeterministicIf(0.5)(spread_cents, det, ticker = 'SPY'), 1) AS spy_spread_cents,\n       round(quantileDeterministicIf(0.5)(spread_cents, det, ticker = 'AAPL'), 1) AS aapl_spread_cents,\n       round(quantileDeterministicIf(0.5)(spread_cents, det, ticker = 'KO'), 1) AS ko_spread_cents\nFROM (\n    SELECT ticker,\n           toHour(toTimeZone(sip_timestamp, 'America/New_York')) * 60 + toMinute(toTimeZone(sip_timestamp, 'America/New_York')) AS et_min,\n           toFloat64(ask_price - bid_price) * 100 AS spread_cents,\n           cityHash64(ticker, sip_timestamp) AS det\n    FROM global_markets.cache_stocks_quotes\n    WHERE ticker IN ('SPY', 'AAPL', 'KO')\n      AND sip_timestamp >= '2026-07-08 04:00:00' AND sip_timestamp < '2026-07-09 04:00:00'\n      AND bid_price > 0 AND ask_price > bid_price\n)\nWHERE et_min >= 240 AND et_min < 1200\nGROUP BY session_window\nHAVING countIf(ticker = 'SPY') > 0 AND countIf(ticker = 'AAPL') > 0 AND countIf(ticker = 'KO') > 0\nORDER BY session_window","computed_at":"2026-07-26T05:41:27.479594+00:00","elapsed":2.066441796}