VWAP as a dynamic level
Lesson 11 · about 8 min
Every level so far has been a fixed price. VWAP is a level that moves, and it moves for a reason that connects directly to the trapped-trader idea: it is the average price at which everyone who traded today actually traded. Above it, the average buyer today is in profit. Below it, the average buyer today is losing.
The arithmetic
VWAP stands for volume-weighted average price. For each candle, take a representative price (usually (high + low + close) ÷ 3, or just the close for a rough version), multiply by that candle's volume, sum those products from the session open, and divide by the total volume so far.
VWAP = Σ(price × volume) ÷ Σ(volume)
| Candle | Typical price | Volume | Price × volume | Cumulative P×V | Cumulative volume | VWAP |
|---|---|---|---|---|---|---|
| 1 | 100.20 | 50,000 | 5,010,000 | 5,010,000 | 50,000 | 100.20 |
| 2 | 100.60 | 30,000 | 3,018,000 | 8,028,000 | 80,000 | 100.35 |
| 3 | 101.10 | 20,000 | 2,022,000 | 10,050,000 | 100,000 | 100.50 |
| 4 | 100.40 | 40,000 | 4,016,000 | 14,066,000 | 140,000 | 100.47 |
After four candles VWAP is 100.47. Note that candle 3 moved price to 101.10 on light volume and barely moved VWAP, while candle 4's heavier volume at 100.40 pulled it back. VWAP is dragged toward wherever the most shares changed hands.
Every charting platform calculates this for you. The point of doing it once by hand is to see that VWAP is not a trend indicator; it is a running record of the day's average fill.
|
+---+
| | |
+---+ +---+ . . . . . . . . . VWAP 100.47
| | | . . | . . . +---+
+---+ .|. .| . . | |###|
| . | .+---+ | +---+
+---+ | |
|
Why it is a level
Institutions that execute large orders are commonly judged against VWAP: a buy order filled below the day's VWAP is "good execution". That creates real behaviour:
- A large buyer who is behind their target will add when price dips to or below VWAP.
- A large seller who is behind will sell when price rallies to or above it.
- Intraday traders who know this treat VWAP as the day's fair value and fade moves away from it in a range day, or buy pullbacks to it in a trend day.
And in trapped-trader terms: if price is above VWAP, the average participant today is long and winning, so dips toward VWAP are met by people who want to add to a winning idea. If price falls through VWAP and stays below, the average participant is now losing, and rallies back to VWAP are met by people who want out flat. VWAP is a level whose trapped group is "the average trader today".
Key idea: VWAP is the day's average fill price. It is a dynamic level because the people who filled above or below it have a live reason to act when price returns to it.
Reading price against VWAP
| Situation | Read |
|---|---|
| Price above VWAP, VWAP sloping up | Buyers in control today; pullbacks to VWAP are the level |
| Price below VWAP, VWAP sloping down | Sellers in control; rallies to VWAP are the level |
| Price crossing VWAP repeatedly, VWAP flat | Range day; VWAP is the middle, not an edge |
| Price far above VWAP (more than one average range) | Extended; mean-reversion traders start to lean against it |
The third row is the one that catches beginners. On a range day, VWAP sits in the middle of the range and price crosses it a dozen times. Buying every touch from above and selling every touch from below produces a dozen small losses. VWAP is a level only when price is respecting it as one, which you can see from whether the previous touches produced a reaction.
Anchored VWAP
Standard VWAP resets at each session open. Anchored VWAP starts the calculation from any candle you choose: a major swing low, an earnings gap, the start of a trend. The interpretation is the same, with the anchor's group substituted for "today's traders": anchored from a swing low, it is the average price paid by everyone who bought since the low, and a return to it tests whether that group defends its average.
Anchored VWAP is useful for swing traders on daily charts, where session VWAP is meaningless. Anchor from the most recent major swing point (Lesson 1) and you have a dynamic level that tracks the current trend's average cost.
Where VWAP does not apply
- Forex spot has no centralized volume, so VWAP on a forex chart is calculated from one broker's tick counts and is unreliable. Futures on currencies do have real volume.
- On very thin instruments a few prints can swing VWAP around.
- On daily and weekly charts, session VWAP resets every candle and shows nothing; use anchored VWAP or skip it.
Combining VWAP with fixed levels
VWAP alone is a mediocre level. VWAP crossing through a prior day high, or sitting on top of a swing zone, is strong: two independent reasons for a reaction at one price. That is confluence, and Module 5 is built on it. For now, add VWAP to the intraday chart, watch how price treats it on trend days versus range days, and note the days when it lines up with a fixed level.
Try it: On any intraday chart with real volume, compute VWAP by hand for the first four candles of the session using the table format above and compare with the platform's VWAP line. Then, over five sessions, count how many times the first pullback to VWAP after the open produced a reaction of at least half an average range.
Recap
- VWAP = Σ(price × volume) ÷ Σ(volume) from the session open. It is the day's average fill, dragged toward heavy-volume prices.
- It is a level because institutions are judged against it and because the average trader today is winning or losing relative to it.
- Above a rising VWAP, dips to it are the level; below a falling VWAP, rallies to it are; on a range day it is the middle and not an edge.
- Anchored VWAP applies the same idea from any chosen candle and works on daily charts.
- VWAP is unreliable on spot forex and thin instruments; it is strongest where it coincides with a fixed level.
See it drawn
Original diagrams for the ideas on this page. Illustrative, not real market data.