{"slug":"twap-vs-vwap-vs-pov-orders","qid":"lunch_pov","label":"lunch_pov","post_title":"twap-vs-vwap-vs-pov-orders","post_url":"/blog/twap-vs-vwap-vs-pov-orders#q-lunch_pov","columns":["et_time","aapl_volume_millions","pov_child_fill_k_shares","share_of_total_pct"],"rows":[{"et_time":"09:30","aapl_volume_millions":3.82,"pov_child_fill_k_shares":382,"share_of_total_pct":12.4},{"et_time":"10:00","aapl_volume_millions":2.8,"pov_child_fill_k_shares":280,"share_of_total_pct":9.1},{"et_time":"10:30","aapl_volume_millions":2.5,"pov_child_fill_k_shares":250,"share_of_total_pct":8.1},{"et_time":"11:00","aapl_volume_millions":2.35,"pov_child_fill_k_shares":235,"share_of_total_pct":7.6},{"et_time":"11:30","aapl_volume_millions":1.96,"pov_child_fill_k_shares":196,"share_of_total_pct":6.3},{"et_time":"12:00","aapl_volume_millions":1.62,"pov_child_fill_k_shares":162,"share_of_total_pct":5.2},{"et_time":"12:30","aapl_volume_millions":1.37,"pov_child_fill_k_shares":137,"share_of_total_pct":4.4},{"et_time":"13:00","aapl_volume_millions":1.22,"pov_child_fill_k_shares":122,"share_of_total_pct":3.9},{"et_time":"13:30","aapl_volume_millions":1.6,"pov_child_fill_k_shares":160,"share_of_total_pct":5.2},{"et_time":"14:00","aapl_volume_millions":1.51,"pov_child_fill_k_shares":151,"share_of_total_pct":4.9},{"et_time":"14:30","aapl_volume_millions":2.73,"pov_child_fill_k_shares":273,"share_of_total_pct":8.8},{"et_time":"15:00","aapl_volume_millions":1.93,"pov_child_fill_k_shares":193,"share_of_total_pct":6.2},{"et_time":"15:30","aapl_volume_millions":5.49,"pov_child_fill_k_shares":549,"share_of_total_pct":17.8}],"shape":"series","sql":"WITH bars AS\n(\n    SELECT\n        toTimeZone(window_start, 'America/New_York')  AS et,\n        toHour(et) * 60 + toMinute(et)                AS minute_of_day,\n        toFloat64(volume)                             AS shares\n    FROM global_markets.delayed_stocks_minute_aggs\n    WHERE ticker = 'AAPL'\n      AND window_start >= toDateTime('2026-08-12 00:00:00', 'America/New_York')\n      AND window_start <  toDateTime('2026-08-13 00:00:00', 'America/New_York')\n),\nbuckets AS\n(\n    SELECT\n        formatDateTime(toStartOfInterval(et, INTERVAL 30 MINUTE), '%H:%i', 'America/New_York') AS et_time,\n        sum(shares)                                                                            AS bucket_shares\n    FROM bars\n    WHERE minute_of_day >= 570\n      AND minute_of_day <  960\n    GROUP BY et_time\n)\nSELECT\n    b.et_time                                        AS et_time,\n    round(b.bucket_shares / 1e6, 2)                  AS aapl_volume_millions,\n    toUInt32(round(b.bucket_shares * 0.10 / 1e3))    AS pov_child_fill_k_shares,\n    round(100 * b.bucket_shares / t.day_shares, 1)   AS share_of_total_pct\nFROM buckets AS b\nCROSS JOIN\n(\n    SELECT sum(bucket_shares) AS day_shares\n    FROM buckets\n) AS t\nORDER BY et_time","computed_at":"2026-09-17T15:50:27.267182+00:00","elapsed":0.003864793}