Estimating The Volume Curve For VWAP
How a VWAP algorithm predicts the shape of a stock's trading volume through the day, and why getting that curve wrong is the main way VWAP execution misses its benchmark.
Prerequisites: The Intraday Volume Profile, Choosing an Execution Benchmark
A VWAP algorithm's entire job is to trade in proportion to how the market itself trades, so its own average price lands close to the volume-weighted average price for the day. That's impossible without first knowing, before the day even starts, roughly how volume will be distributed across the trading session — because the algorithm has to commit to a schedule of child orders hours before it can observe how the day actually unfolds.
Why volume isn't spread evenly
Trading volume is not flat across the day; it follows a well-known U-shape — heavy at the open as overnight news gets absorbed, quiet through the middle of the day, and heavy again near the close as index funds and end-of-day rebalancing concentrate activity. A volume curve is an estimate of what fraction of the day's total volume falls in each time bucket. The standard approach averages the historical share of volume each bucket has carried over the past 20–60 trading days, then adjusts it for known one-off effects — a scheduled earnings release, an index rebalance date, a shortened holiday session — that pull volume away from the typical pattern.
The algorithm then slices the parent order to match that predicted curve: if the curve says the first 30 minutes typically carries 12% of the day's volume, the algorithm targets executing roughly 12% of the order in that window.
Worked example: building and using a simple curve
Historical data for a stock shows this average share of daily volume by hour: 18% (open), 10%, 8%, 7%, 7%, 8%, 10%, 32% (close) — a pronounced U-shape. A trader needs to execute 160,000 shares matching VWAP. The schedule allocates 28,800 shares to the first hour, 12,800 to each quiet middle hour, and 51,200 to the final hour. Now suppose actual close-hour volume comes in unusually light because expected index flow got pushed to the next day — realized volume that hour is only half the historical average. An algorithm that rigidly stuck to the static plan would represent a much larger share of actual volume than intended, causing more impact than planned; an adaptive algorithm instead recomputes the remaining schedule against realized volume as the day progresses.
What this means in practice
Volume curve error is the main source of VWAP tracking error: if the predicted curve doesn't match how the day unfolds, the schedule trades too much or too little at the wrong times, and realized average price drifts from true VWAP even though the algorithm's logic was never wrong. This is why most production VWAP algorithms are adaptive — they continuously compare realized cumulative volume against the predicted curve and adjust in real time (see static versus adaptive execution schedules).
A VWAP algorithm's schedule is only as good as its estimate of the day's volume curve — the U-shaped pattern of heavy open, quiet middle, heavy close — and mismatches between predicted and realized volume are the primary reason VWAP execution misses its own benchmark.
Treat the historical volume curve as a forecast, not a fact — always check the calendar first for earnings, index rebalances, options expiry, or holidays that will visibly reshape that day's curve away from the historical average.
Related concepts
Practice in interviews
Further reading
- Kissell, The Science of Algorithmic Trading and Portfolio Management, ch. 5