{"slug":"rest-polling-vs-websocket-market-data","qid":"event_clustering","label":"AAPL trades per second, fifteen minute buckets through the session","post_title":"REST Polling vs WebSockets for Market Data","post_url":"/blog/rest-polling-vs-websocket-market-data#q-event_clustering","columns":["et_time","trades_per_second"],"rows":[{"et_time":"09:30","trades_per_second":65.2},{"et_time":"09:45","trades_per_second":35.9},{"et_time":"10:00","trades_per_second":42.9},{"et_time":"10:15","trades_per_second":38.9},{"et_time":"10:30","trades_per_second":43.3},{"et_time":"10:45","trades_per_second":39.7},{"et_time":"11:00","trades_per_second":38.2},{"et_time":"11:15","trades_per_second":36},{"et_time":"11:30","trades_per_second":34},{"et_time":"11:45","trades_per_second":33.9},{"et_time":"12:00","trades_per_second":33},{"et_time":"12:15","trades_per_second":18.1},{"et_time":"12:30","trades_per_second":18.4},{"et_time":"12:45","trades_per_second":17.6},{"et_time":"13:00","trades_per_second":13.4},{"et_time":"13:15","trades_per_second":11.7},{"et_time":"13:30","trades_per_second":13.1},{"et_time":"13:45","trades_per_second":15.2},{"et_time":"14:00","trades_per_second":14.8},{"et_time":"14:15","trades_per_second":14.5},{"et_time":"14:30","trades_per_second":14.8},{"et_time":"14:45","trades_per_second":15.4},{"et_time":"15:00","trades_per_second":14.8},{"et_time":"15:15","trades_per_second":19},{"et_time":"15:30","trades_per_second":23.4},{"et_time":"15:45","trades_per_second":71.3}],"shape":"series","sql":"SELECT\n    formatDateTime(toStartOfFifteenMinutes(toTimeZone(window_start, 'America/New_York')), '%H:%i') AS et_time,\n    round(sum(transactions) / 900.0, 1)                                                           AS trades_per_second\nFROM global_markets.delayed_stocks_minute_aggs\nWHERE ticker = 'AAPL'\n  AND window_start >= '2026-09-15 13:30:00'\n  AND window_start <  '2026-09-15 20:00:00'\nGROUP BY et_time\nORDER BY et_time","computed_at":"2026-10-09T15:25:31.316314+00:00","elapsed":0.001963696}