VWAP Trading Strategy Backtest: Does the QQQ Result Generalise?
The long side of a published VWAP rule rebuilt on QQQ, then tested after the study’s years, on 149 large US stocks and against trading costs.
The Test Bench › VWAP
How they work, how traders use them, and what our backtests found.
VWAP (volume-weighted average price) estimates the average price a stock has traded at, giving more weight to periods with higher volume. Anchored VWAP is the same calculation from a starting point you choose.
This page covers:
A session VWAP starts at the market open, 09:30 New York time for US stocks, and accumulates through the trading session, recalculated after every candle. Each candle’s typical price, the average of its high, low and close, is weighted by the candle’s volume, so a candle with heavy volume moves the line more than a quiet one. By the end of the session, VWAP is an estimate of the day’s average traded price.
An example with three invented 5-minute candles:
| Candle | High | Low | Close | Typical price | Volume |
|---|---|---|---|---|---|
| 09:30 | $101.00 | $99.00 | $100.00 | $100.00 | 3,000 |
| 09:35 | $102.00 | $100.00 | $101.50 | $101.17 | 1,000 |
| 09:40 | $101.50 | $100.50 | $101.00 | $101.00 | 2,000 |
After the third candle, VWAP is $100.53: the typical prices weighted by 6,000 shares. A plain average of the three typical prices would be $100.72. The first candle carried half of the volume, so it pulls VWAP towards its price.
Anchored VWAP uses the same calculation from a different starting point, the anchor. Common anchors are the market open, the start of the week or the month, an earnings report, and a significant high or low. It estimates the volume-weighted average traded price since that moment, and traders use it as a reference for where the market has traded since then.
When the price is above an Anchored VWAP, it is above that average traded-price level. Traders sometimes use the line as a rough proxy for the average price paid by participants since the anchor.
In GU Analyser, Anchored VWAP can be anchored at the market open, midnight, a time of day, or the start of each week or month, with bands a chosen number of standard deviations above and below it — how it is calculated. The VWAP indicator runs from the first candle loaded; for a VWAP that resets at each market open, use Anchored VWAP with a market-open anchor — VWAP in the indicator reference.
| Session VWAP | Anchored VWAP | |
|---|---|---|
| Starts | At each market open | At the anchor you choose |
| Restarts | Every day | Only when you move the anchor |
| Covers | One session | Any span: hours, days, weeks or months |
| Common use | Intraday reference and trend filter | Reference since an event, a week or a month |
There is no single VWAP strategy. Common uses include:
Being above VWAP is a condition a strategy can use. The entry, the exit, the timeframe and the trading costs decide whether a VWAP rule works, and each rule needs its own test.
VWAP is an indicator. A VWAP strategy adds rules for when to enter, when to exit, whether to trade long or short, which timeframe to use and how to handle costs, so two VWAP strategies can give very different results.
A widely discussed version comes from a 2023 study by Carlo Zarattini and Andrew Aziz, which tested it on QQQ, the Nasdaq-100 fund, with 1-minute candles from 2018 to 2023. While QQQ closes a candle above VWAP the portfolio is long; while it closes below, the portfolio is short; every position is closed by the end of the day.
From late 2023 the long-only rule returned +9.7% on QQQ against +105.9% for buying and holding, and over six months of 2026 it beat buying and holding on 46 of 149 large US stocks. With a cost of 0.02% on each buy and each sale, the account fell below its starting value on QQQ in both periods and on 127 of the 149 stocks. In the original study's years, 2018 to 2023, at near-zero cost, it returned +141.9% against +122.9%. With orders filled at the next candle's open, a check added after the results, it returned +111.2% over 2018 to 2023, behind buying and holding. These are historical results under stated assumptions, from a rebuild of the long side on 5-minute candles. See the full VWAP strategy backtest.
A rule that switches at every cross of VWAP can trade several times a day, so each trade’s cost is paid many times. In Study 011 the long-only rule’s lead over buying and holding QQQ from 2018 to 2023 disappeared at 0.0008% per buy and per sale, about 0.2 cents a share. See how trading costs changed the result.
A VWAP rule states each of these parts:
Each study specifies the rule, the data, the execution assumptions and the trading costs. The results show what happened in the tested sample, and each study states what the test cannot establish.
The long side of a published VWAP rule rebuilt on QQQ, then tested after the study’s years, on 149 large US stocks and against trading costs.
How much each trade can cost before the long-only VWAP rule falls behind buying and holding QQQ, and where spreads, fees and currency conversion sit against that.
Another intraday rule tested on 5-minute candles, on the same 149 stocks: the opening range breakout (ORB) studies.
VWAP, the volume-weighted average price, estimates the average price a stock has traded at during the session, giving more weight to prices where more shares traded. In its usual form it restarts at each market open.
For each candle, take the typical price, (high + low + close) ÷ 3, and multiply it by the candle’s volume. Add those products from the start of the session and divide by the total volume over the same candles. The line is recalculated after every candle.
The same calculation started from a chosen moment, the anchor: the market open, the start of a week or a month, a time of day, or an event such as an earnings report or a high or low in the price.
A session VWAP always starts at the market open and restarts every day. An Anchored VWAP starts wherever you place the anchor and keeps averaging from there, across as many days as you choose.
The session VWAP does: it restarts at each market open. An Anchored VWAP restarts only at its anchor. In GU Analyser the VWAP indicator runs from the first candle loaded; to create a VWAP that resets at each market open, use Anchored VWAP with a market-open anchor.
The latest price is above the session’s volume-weighted average traded price. Many intraday traders read that as a stronger-price or bullish condition. Being above VWAP does not by itself predict that the price will rise.
Neither on its own. VWAP is a reference level. Price above it is commonly read as a bullish condition and price below it as a bearish one, and a strategy decides what to do with that reading.
There is no single VWAP strategy. A widely discussed version, tested in a 2023 study on QQQ, holds the stock long while a candle closes above VWAP and sells short while a candle closes below it, closing everything by the end of the day.
The rule worked well in the original QQQ test period at near-zero trading cost and with idealised fills, but that advantage did not persist in the later QQQ period, appeared on only 46 of 149 tested stocks, and disappeared at 0.02% on each buy and sale.
No. Our tests did not reproduce the published advantage in the later QQQ period, on most of the tested stocks, or after the tested trading costs.
A rule that switches at every cross of VWAP can trade several times a day, so each trade’s cost is paid many times. In Study 011 the long-only rule’s lead over buying and holding QQQ disappeared at 0.0008% per buy and per sale.
There is no universally best VWAP timeframe. VWAP is commonly used with intraday candles such as 1-, 5- or 15-minute charts; shorter candles can produce earlier signals and more trades. With one daily candle per session, the session calculation reduces to that candle’s typical price, so traders looking for a multi-day volume-weighted reference can use Anchored VWAP instead.
Yes. In GU Analyser you add Anchored VWAP with your anchor, build the entry and exit rules on a visual canvas, add an end-of-day exit and a cost on each buy and sale, and backtest on 5-minute candles with your own data key, with no code.
Want to test your own VWAP strategy?
Choose an Anchored VWAP anchor, define the entry and exit rules, add an end-of-day exit and a cost on each buy and sale, and backtest the strategy on 5-minute candles.
Create a free account and build your own strategies → or read how Anchored VWAP is calculated →The method: how a backtest is built