{"slug":"mutual-fund-exchange-vs-sell-and-buy","qid":"close_ramp","label":"close_ramp","post_title":"mutual-fund-exchange-vs-sell-and-buy","post_url":"/blog/mutual-fund-exchange-vs-sell-and-buy#q-close_ramp","columns":["et_time","avg_volume_millions"],"rows":[{"et_time":"15:30","avg_volume_millions":0.09},{"et_time":"15:31","avg_volume_millions":0.09},{"et_time":"15:32","avg_volume_millions":0.1},{"et_time":"15:33","avg_volume_millions":0.1},{"et_time":"15:34","avg_volume_millions":0.12},{"et_time":"15:35","avg_volume_millions":0.13},{"et_time":"15:36","avg_volume_millions":0.11},{"et_time":"15:37","avg_volume_millions":0.11},{"et_time":"15:38","avg_volume_millions":0.09},{"et_time":"15:39","avg_volume_millions":0.11},{"et_time":"15:40","avg_volume_millions":0.11},{"et_time":"15:41","avg_volume_millions":0.11},{"et_time":"15:42","avg_volume_millions":0.15},{"et_time":"15:43","avg_volume_millions":0.14},{"et_time":"15:44","avg_volume_millions":0.13},{"et_time":"15:45","avg_volume_millions":0.18},{"et_time":"15:46","avg_volume_millions":0.18},{"et_time":"15:47","avg_volume_millions":0.17},{"et_time":"15:48","avg_volume_millions":0.18},{"et_time":"15:49","avg_volume_millions":0.19},{"et_time":"15:50","avg_volume_millions":0.29},{"et_time":"15:51","avg_volume_millions":0.26},{"et_time":"15:52","avg_volume_millions":0.24},{"et_time":"15:53","avg_volume_millions":0.23},{"et_time":"15:54","avg_volume_millions":0.29},{"et_time":"15:55","avg_volume_millions":0.4},{"et_time":"15:56","avg_volume_millions":0.35},{"et_time":"15:57","avg_volume_millions":0.44},{"et_time":"15:58","avg_volume_millions":0.69},{"et_time":"15:59","avg_volume_millions":1.55}],"shape":"series","sql":"SELECT\n    formatDateTime(toTimeZone(window_start, 'America/New_York'), '%H:%i') AS et_time,\n    round(avg(toFloat64(volume)) / 1e6, 2)                                AS avg_volume_millions\nFROM global_markets.delayed_stocks_minute_aggs\nWHERE ticker = 'SPY'\n  AND window_start >= today() - 45\n  AND window_start <  today() - 2\n  AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60\n       + toMinute(toTimeZone(window_start, 'America/New_York'))) >= 930\n  AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60\n       + toMinute(toTimeZone(window_start, 'America/New_York'))) < 960\nGROUP BY et_time\nORDER BY et_time","computed_at":"2026-09-28T15:08:13.616087+00:00","elapsed":0.070353635}