VWAP: what it says, the math behind it, and what 12 years of NQ data show
The formula, the bands and the anchors, why institutions trade around it, and six tests on real NQ data across the New York, London and Asia sessions. Some popular VWAP ideas hold up. Most do not.
VWAP is on almost every intraday chart. People call it the institutional line, the fair price, a magnet. Most of those claims are repeated far more often than they are tested.
This article does both. First what VWAP actually is: the formula, the bands, the anchors, and the execution theory that explains why large traders care about it. Then six tests on real data: 4,271,264 one-minute bars of NQ futures, from December 2013 to May 2026. That is 3,087 trading days, split into the Asia, London and New York sessions.
What VWAP is
VWAP is the volume-weighted average price: the average price paid per contract since a starting point, where every price counts as much as the volume that traded there. A price where 5,000 contracts traded pulls the average 100 times harder than a price where 50 traded.
That gives VWAP a plain meaning. If price is above the session VWAP, the average contract bought since the open is in profit. If it is below, the average buyer is underwater. It is a cost benchmark. It describes what has already happened. On its own it does not say what happens next.
The formula
For trades (or bars) i = 1 … n since the anchor, with price P and volume V:
VWAP = Σ ( P(i) × V(i) ) / Σ V(i)With bars instead of single trades, P is usually the typical price, (High + Low + Close) / 3, because the exact prices inside the bar are not known. Platforms differ here: some use the close, some use tick data. That alone is enough for two charts to show slightly different VWAPs.
A small example. 100 contracts at 20,000, 300 at 20,010 and 100 at 20,040. The simple average of the three prices is 20,016.7. The VWAP is (100×20,000 + 300×20,010 + 100×20,040) / 500 = 20,014. The price where most volume traded pulls the average toward itself.
In continuous time, which is how the academic papers write it, with S the price and v the rate of trading volume:
VWAP(T) = ∫₀ᵀ S(t) v(t) dt / ∫₀ᵀ v(t) dtThe bands
VWAP bands measure how spread out the traded prices are around the VWAP, again weighted by volume:
σ² = Σ V(i) × ( P(i) − VWAP )² / Σ V(i)
= Σ V(i)P(i)² / Σ V(i) − VWAP²
Bands: VWAP ± 1σ, VWAP ± 2σThe second line is the useful one in code: keep three running sums (ΣV, ΣPV and ΣP²V) and you can update the VWAP and the bands on every bar without looking back.
One warning before the tests. σ here is the spread of all volume since the anchor, not the volatility of the next move. The bands are not a probability forecast, and as test 4 shows, prices do not sit inside them the way a normal distribution would suggest.
Anchors: where the average starts
Every VWAP has a starting point, and the starting point changes everything. On futures, which trade almost 24 hours, there are several reasonable choices:
- Globex day VWAP, from 18:00 New York time. Includes Asia, London and New York.
- New York (RTH) VWAP, from 09:30 New York time. The one most US equity-index traders mean.
- London VWAP, from 08:00 London time, the European open.
- Anchored VWAP, from any event you choose: a swing high, a news release, the start of a trend. It answers one question: what is the average price paid since that moment?
- Rolling VWAP, over the last N bars. It never resets, which makes it more like a moving average.
None of them is "the" VWAP. They are different questions. Always know which one you are looking at.
Why institutions care: VWAP as an optimal execution strategy
VWAP became a standard because of execution, not prediction. A fund that needs to buy 2,000 contracts cannot do it in one click without moving the price against itself. The question is how to split the order over the day, and VWAP is the yardstick its traders are judged by: did you get a better average price than the market did?
Takashi Kato's paper "VWAP Execution as an Optimal Strategy" (SSRN 2487241; JSIAM Letters, 2015) shows why that yardstick is more than a habit. It builds on the Almgren–Chriss model, the standard model of optimal execution, and adds trading volume to it. The key assumption is that the temporary price impact of your trading depends on how fast you trade relative to the market's volume:
temporary impact = η × α(t) / v(t)
α(t) = your trading speed, v(t) = market volumeTrading 10 contracts a minute costs little when 2,000 trade every minute and a lot when 50 do. From that, the paper shows:
- If you knew the whole day's volume in advance, the cheapest way to execute (for a risk-neutral trader) is to trade in exact proportion to the market's volume: α(t) = Φ × v(t) / V(T). That is the VWAP strategy, and your average price then equals the market VWAP.
- You cannot know future volume, so the practical version follows the expected volume profile. The optimal static schedule uses u(t) = 1 / E[1 / v(t)], a harmonic mean of volume. That is close to what desks do: they trade along the historical intraday volume curve.
- If volume were constant, the same optimum becomes TWAP: trade evenly through time.
- A trader who also fears price risk (risk-averse) should trade faster early in the window, then follow volume. The more risk-averse, the more front-loaded.
The practical meaning for a retail trader: a lot of large orders are worked along the volume curve and graded against VWAP. That is a real reason the line matters. It is not evidence that price is pulled toward it, and the tests below check that directly.
The data and the method
- Market: NQ (Nasdaq-100 E-mini futures), continuous contract, one-minute bars with real exchange volume.
- Period: 12 December 2013 to 5 May 2026. 3,087 full trading days, weekends and short days removed.
- Sessions: Asia from 18:00 New York time to the London open; London from 08:00 London time to 09:30 New York; New York from 09:30 to 16:00. Daylight saving time is handled separately for London and New York.
- Scale: distances are measured in ATR, the 14-day average of the daily true range, using only earlier days. That keeps 2014 and 2025 comparable.
- Nothing below was optimized. Every rule was written once, before the results were seen.
EUR/USD is not in these tests. Spot FX has no central exchange, so there is no true volume. A VWAP on spot EUR/USD is built from the broker's tick count, and it differs between brokers. The 6E futures contract has real volume and could be tested the same way.
Where the volume is
VWAP is only as meaningful as the volume behind it, so the first question is when NQ actually trades. Averaged over all days, the New York session (09:30–16:00) holds 78.2% of the full day's volume. London to the New York open holds 12.3%, Asia 6.4%, and the hour after 16:00 3.1%.
Inside the New York session the shape is a U. The first 30 minutes alone hold 17.1% of the session's volume. 12:00 to 14:00, two whole hours, holds 20.4%. The last 30 minutes hold 9.9%.
Two consequences. A Globex-day VWAP is mostly decided in New York: by the close, about four fifths of its weight comes from the New York session. And an Asia or overnight VWAP is built on thin volume, so a few large prints can move it a lot.
Over a full New York session, VWAP and the plain time average (TWAP) are close: the median gap is 0.03 ATR, and on 90% of days it is under 0.085 ATR. On NQ, VWAP is not a secret price far from where the market spent its time.
Test 1: is VWAP a magnet?
The most common claim: price returns to VWAP. A raw "how often does price touch VWAP" number cannot answer this, because any level near the price gets touched often. The test needs a control.
At 10:30 New York time, take the New York VWAP and freeze it as a level. Then create a control level: the same distance from price, on the other side. If VWAP pulls price, it should be touched by 16:00 more often than the control.
- Frozen VWAP touched: 74.1% of 3,073 days.
- Control level touched: 76.1%.
- Days where only VWAP was touched: 668. Only the control: 730. The difference is not statistically significant (z = −1.66), and it points the wrong way for the magnet idea.
- By era: 2014–2019, 76.0% against 76.2%. 2020–2026, 72.3% against 76.1%.
The moving VWAP, the live line, was touched on 87.1% of days. That looks like proof of a magnet, and it is the number people quote. But the line moves toward the price: every minute of trading at the current price drags the average there. The price does not need to come back for the line to arrive.
Test 2: above VWAP means long?
The second claim: if price is above VWAP, buyers are in control, so look for longs. At 10:30, split the days by side of the New York VWAP and measure the move from 10:30 to 16:00 in ATR.
- Above VWAP (1,676 days): average +0.012 ATR to the close, 56.8% of days up. t = 1.09.
- Below VWAP (1,397 days): average +0.004 ATR, 53.1% up. t = 0.29.
- Price closed on the same side of VWAP as at 10:30 on 57.8% of days.
- Far from VWAP (0.3 ATR or more): above, −0.035 ATR (87 days). Below, +0.016 ATR (124 days).
Neither side has a reliable edge. Both are slightly positive because NQ went up over these 12 years. Being above VWAP describes the morning. It does not predict the afternoon.
Test 3: London VWAP into the New York open
Many intraday traders mark the London session VWAP and watch where New York opens against it. Split the days by whether the 09:30 open is above or below the London VWAP (08:00 London to 09:30 New York), and measure the New York session from open to close.
- Open above London VWAP (1,630 days): +0.019 ATR, 55.2% up, t = 1.39.
- Open below (1,443 days): +0.003 ATR, 53.8% up, t = 0.17.
- The full overnight VWAP (18:00 to 09:30) gives almost the same: +0.019 against +0.003.
- Far from London VWAP (0.25 ATR or more): above, −0.048 ATR and 45.9% up. Below, +0.076 ATR and 59.5% up. Only 74 days on each side.
The far cases hint that very stretched opens tend to give some back. With 74 days and t-values under 1, that is a hypothesis to test properly, not a finding.
Test 4: the bands
If the bands described a normal distribution, price would spend about 68% of the time inside ±1σ and 95% inside ±2σ. From 10:30 to 16:00, NQ one-minute closes were inside ±1σ 47.0% of the time and inside ±2σ 91.3% of the time. The bands describe where the session's volume traded, not where the price will be.
Then the classic band trade: the first one-minute close beyond ±2σ after 10:30. That happened on 2,603 days.
- The next 30 minutes in the direction of the break: +0.005 ATR, 50.6% of the time. A coin flip (t = 1.7).
- Price came back to the VWAP later that day on 68.7% of these days.
- It reached the 3σ band on 22.9%.
- From the break to the close: +0.004 ATR in the direction of the break.
So "fade the 2σ band back to VWAP" and "buy the 2σ breakout" both fail as standalone rules on NQ. A return to VWAP happens often, but the move away first can be large, and on average the two cancel out.
Test 5: yesterday's VWAP
Yesterday's New York VWAP is where yesterday's volume averaged out. Some traders treat it as a level for today. Same method as test 1: when today opens within 1 ATR of yesterday's VWAP (2,916 days), compare touches of yesterday's VWAP with touches of a control level at the same distance on the other side of the open.
- Yesterday's VWAP touched during the session: 57.0%.
- Control level: 54.1%.
- Only VWAP: 796 days. Only the control: 711. z = 2.19.
This is the only test where VWAP beat its control, by about 3 percentage points. It is small, and one significant result among several tests can be luck. But it makes sense: a price where a lot of contracts changed hands yesterday can still matter today. Worth studying further. It is not a strategy.
Test 6: a naive VWAP strategy
Last, the simplest VWAP strategy there is. After 10:00, take the first one-minute close that crosses the New York VWAP and trade in that direction until 16:00. Costs: 0.75 points per round turn (commission plus one tick of slippage on each side).
- 2,759 trades.
- Average before costs: −0.10 points. After costs: −0.85 points.
- Winners: 48.1%. Profit factor after costs: 0.975.
- The opposite trade (fade the cross): −0.65 points after costs, profit factor 0.981.
No edge in either direction. Year by year is the instructive part. The same zero-edge rule made about +1,800 points in 2020 and lost about 1,850 in 2022 and 1,930 in 2025. Someone who backtested only 2020 would have "found" a strategy.
So how do you work with VWAP?
The tests do not say VWAP is useless. They say it is a measure, not a signal. Ways to use it that the data supports:
- As context. Above or below VWAP, and by how much, describes who is in control of the session so far. Use it to describe the day, not to predict it.
- Measure distance in ATR or in σ, not in points. 30 points meant something very different in 2014 and in 2025. See the NATR article.
- Use the slope. The change in VWAP over the last N minutes, divided by ATR, is a velocity measure for the session (see the article on moving-average velocity). A flat VWAP points to rotation, a steep one to a trend.
- Respect the time of day. A VWAP at 09:45 rests on a few minutes of volume and moves easily. By 11:00 about 38% of the session's volume is in, and every new minute moves the line less.
- Grade your own fills. Was your average entry better than the session VWAP? Over hundreds of trades, that is a fair measure of execution.
- Combine, then test. A VWAP condition can be one part of a rule, next to time, volatility and structure. Then test it with a control, like the ones above, before trusting it.
Common mistakes
- Not knowing the anchor. A Globex VWAP and a New York VWAP are different lines, especially before 10:30.
- Comparing VWAPs across platforms that use different prices (close against typical price) or different session times.
- Reading the bands as probabilities. They are not normal, as test 4 shows.
- Trusting the "magnet" without a control. The moving line arrives at the price on its own.
- Testing on one year. Test 6 shows how a zero-edge rule can look great in one year.
- VWAP on spot FX treated as real volume. It is the broker's tick count.
The bottom line
VWAP is the most honest number on an intraday chart: what the session actually paid, on average. The execution theory explains why big orders are measured against it. Twelve years of NQ data show that most of the popular trading claims about it, the magnet, "above means long" and the band fades, do not hold up against a simple control. Yesterday's VWAP is the one place where there is a small effect worth a closer look.
Use it to understand the session, test any rule built on it with a control, and be suspicious of anything that only works in one year.
Sources and notes
- Kato, T. "VWAP Execution as an Optimal Strategy." SSRN 2487241 (2014, revised 2017); JSIAM Letters 7 (2015), 33–36.
- Almgren, R. and Chriss, N. "Optimal execution of portfolio transactions." Journal of Risk (2000).
- Madhavan, A. "VWAP Strategies." Trading (2002).
- Berkowitz, S., Logue, D. and Noser, E. "The Total Cost of Transactions on the NYSE." Journal of Finance (1988). The early paper that used VWAP as a cost benchmark.
- Data: NQ continuous futures, one-minute bars, December 2013 to May 2026. These are historical statistics, not a recommendation to trade. Past behaviour does not guarantee future results.
— Alon