{"slug":"level-1-vs-level-2-market-data","qid":"top_of_book","label":"Level 1 top of book: quoted spread across a full session (AAPL, June 17 2026)","post_title":"Level 1 vs Level 2 vs Level 3 Market Data","post_url":"/blog/level-1-vs-level-2-market-data#q-top_of_book","columns":["et_time","spread_cents","spread_bps"],"rows":[{"et_time":"04:00","spread_cents":37.38,"spread_bps":12.51},{"et_time":"04:30","spread_cents":59.15,"spread_bps":19.8},{"et_time":"05:00","spread_cents":27.63,"spread_bps":9.25},{"et_time":"05:30","spread_cents":31.91,"spread_bps":10.68},{"et_time":"06:00","spread_cents":21.55,"spread_bps":7.21},{"et_time":"06:30","spread_cents":21.17,"spread_bps":7.09},{"et_time":"07:00","spread_cents":16.95,"spread_bps":5.67},{"et_time":"07:30","spread_cents":21.5,"spread_bps":7.19},{"et_time":"08:00","spread_cents":18.1,"spread_bps":6.06},{"et_time":"08:30","spread_cents":12.79,"spread_bps":4.28},{"et_time":"09:00","spread_cents":19.73,"spread_bps":6.57},{"et_time":"09:30","spread_cents":5.45,"spread_bps":1.81},{"et_time":"10:00","spread_cents":3.65,"spread_bps":1.22},{"et_time":"10:30","spread_cents":3.96,"spread_bps":1.32},{"et_time":"11:00","spread_cents":3.32,"spread_bps":1.11},{"et_time":"11:30","spread_cents":2.72,"spread_bps":0.91},{"et_time":"12:00","spread_cents":2.67,"spread_bps":0.89},{"et_time":"12:30","spread_cents":2.16,"spread_bps":0.73},{"et_time":"13:00","spread_cents":2.42,"spread_bps":0.82},{"et_time":"13:30","spread_cents":2.16,"spread_bps":0.73},{"et_time":"14:00","spread_cents":3.48,"spread_bps":1.18},{"et_time":"14:30","spread_cents":3.1,"spread_bps":1.05},{"et_time":"15:00","spread_cents":3.13,"spread_bps":1.06},{"et_time":"15:30","spread_cents":2.89,"spread_bps":0.98},{"et_time":"16:00","spread_cents":19.89,"spread_bps":6.72},{"et_time":"16:30","spread_cents":25.67,"spread_bps":8.67},{"et_time":"17:00","spread_cents":47.97,"spread_bps":16.11},{"et_time":"17:30","spread_cents":15.85,"spread_bps":5.33},{"et_time":"18:00","spread_cents":14.03,"spread_bps":4.72},{"et_time":"18:30","spread_cents":19.49,"spread_bps":6.55},{"et_time":"19:00","spread_cents":21.16,"spread_bps":7.12},{"et_time":"19:30","spread_cents":16.85,"spread_bps":5.67}],"shape":"series","sql":"SELECT\n    formatDateTime(\n        toStartOfInterval(toTimeZone(sip_timestamp, 'America/New_York'), INTERVAL 30 MINUTE),\n        '%H:%i'\n    )                                                                      AS et_time,\n    round(avg(toFloat64(ask_price) - toFloat64(bid_price)) * 100, 2)       AS spread_cents,\n    round(avg((toFloat64(ask_price) - toFloat64(bid_price))\n              / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2)) * 10000, 2) AS spread_bps\nFROM global_markets.cache_stocks_quotes\nWHERE ticker = 'AAPL'\n  AND sip_timestamp >= '2026-06-17 08:00:00'\n  AND sip_timestamp <  '2026-06-18 00:00:00'\n  AND bid_price > 0\n  AND ask_price > bid_price\n  AND (toFloat64(ask_price) - toFloat64(bid_price)) / toFloat64(bid_price) < 0.05\nGROUP BY et_time\nORDER BY et_time","computed_at":"2026-08-07T15:34:40.872839+00:00","elapsed":0.012674381}