Module 4 · Lesson 2 of 12 · Volume and indicators · About 7 minutes
What Is VWAP? Session vs Anchored VWAP Explained
On this page
- What you will learn
- What is VWAP?
- How is VWAP calculated?
- What is session VWAP?
- What is anchored VWAP?
- VWAP diagram
- What does VWAP measure?
- Why do large firms benchmark to VWAP?
- What are the limits of VWAP?
- What are VWAP bands?
- What this does not tell you about VWAP
- Method in Practice
- Check yourself
- Reflect on your own process
- Sources
Before you read: Trading Volume Explained: Volume vs Open Interest
What you will learn
- What VWAP is and how it is calculated, in words and in a simple formula.
- The difference between session VWAP and anchored VWAP.
- What VWAP measures, why large firms use it as a benchmark, and what it cannot tell you.
What is VWAP?
If one price traded ten times as much as another, should both count equally in an average?
VWAP is the average price paid for every unit traded since a starting point, where each price counts in proportion to how much traded there.
A simple average treats every price the same. VWAP gives more weight to prices where more business happened. If 1,000 contracts trade at one price and 10 contracts trade at another, the first price matters 100 times as much.
How is VWAP calculated?
What would you need to record, trade by trade, to calculate it yourself?
In words: add up price times volume for every trade (or every bar) since the start, then divide by the total volume since the start.
In simple form:
VWAP = sum(price x volume) / sum(volume)
A small worked example, constructed for teaching:
| Bar | Price | Volume | Price x volume |
|---|---|---|---|
| 1 | 100 | 300 | 30,000 |
| 2 | 102 | 100 | 10,200 |
| 3 | 101 | 600 | 60,600 |
| Total | 1,000 | 100,800 |
VWAP = 100,800 / 1,000 = 100.80. The simple average of the three prices would be 101.00. VWAP sits below the simple average, pulled toward 100 and 101, because most of the volume traded at those two prices.
Charting platforms usually work from bars, not individual trades, so they need one price per bar. Many use the typical price, the average of the bar’s high, low and close; TradingView’s built-in VWAP, for example, uses it as the default source. That is a convention and an approximation: the exact benchmark definition uses the price and size of every trade. Platforms that calculate from every trade, or that use a different price per bar, can show slightly different VWAP values.
What is session VWAP?
When should a running average start over?
Session VWAP starts fresh at the beginning of each trading session and accumulates until the session ends. Then it resets. On an intraday chart you see a line that begins at the first bar of the session and then becomes smoother as the day goes on.
For futures that trade nearly around the clock, the “session” can be defined in more than one way: the full electronic session, or just the regular daytime session. Two traders looking at “VWAP” on the same market may be looking at different lines. Always check which session your platform uses.
Futures are leveraged products: one contract controls a large notional value for a comparatively small deposit. Leverage can cause losses larger than the amount invested.
Try it on a chart
- This 5-minute chart has VWAP added. Find where the line starts again each session.
- Compare where price sits against the VWAP line through one day.
Charts and quotes are TradingView's data, not ours, and may be delayed.
What is anchored VWAP?
What changes if you choose the starting point yourself?
Anchored VWAP uses the same formula but starts from a point you choose: a swing high, a swing low, the start of the week, or the minute a scheduled report was released. It answers the question: “What has the average participant paid since this moment?”
Anchored VWAP does not reset at the end of the session. It keeps accumulating from the anchor until you remove it. Some traders anchor from points they consider significant so they can see whether price is above or below the average traded price since then.
VWAP diagram
Illustrative diagram constructed for teaching. Not real market data.
The diagram shows a constructed price path with a session VWAP that starts jumpy and smooths out, and an anchored VWAP starting from a marked swing low. It is constructed for teaching and is not real data.
What does VWAP measure?
When price is above the line, what can you honestly say?
VWAP measures one thing, built on trading volume: the volume-weighted average price since the start point. From that, you can describe:
- Whether price is currently above or below the average traded price since the start.
- How far price has moved from that average.
- Whether the line is rising, falling, or flat, which reflects where volume has been trading.
When price is above session VWAP, it means the latest price is higher than the volume-weighted average of the day so far. That is a description of position, not a forecast.
Why do large firms benchmark to VWAP?
If you had to buy a very large position over a day, how would anyone judge whether you did it well?
Large institutions such as pension funds, mutual funds and banks often need to buy or sell big positions across a whole day. If they bought all at once, they could push the price against themselves.
One common way to judge how well an order was carried out is to compare the average price achieved with VWAP over the same period. If a firm bought below the day’s VWAP, the trade is often described as being executed at a better-than-average price for that day. Brokers offer VWAP algorithms that try to spread an order across the day in proportion to expected volume, so the result lands close to VWAP.
This is why VWAP is widely watched: it is a common yardstick for execution quality. Being widely watched does not make it predictive. A benchmark tells you how a trade was carried out, not where price goes next.
What are the limits of VWAP?
When is the line least stable, and why?
- Early-session instability. In the first minutes of a session, VWAP is computed from very little volume, so it can jump around. Later in the day each new bar moves it less.
- Resets. Session VWAP starts again every session, so it says nothing about where yesterday’s volume traded unless you anchor it.
- Choice of start. Anchored VWAP depends entirely on where you anchor it. Different anchors give different lines.
- Data differences. Session definitions, bar-price approximations and contract-month handling in futures all change the value.
- Lag. VWAP describes the past. It moves after price moves.
What are VWAP bands?
If bands are not boundaries, what do they describe?
Some platforms draw bands above and below VWAP, often computed from the standard deviation of price around VWAP. They describe how spread out trading has been around the average. Like VWAP itself, they describe the past and are not targets or boundaries price must respect. For VWAP inside a full session description, see session replay.
What this does not tell you about VWAP
- VWAP does not tell you whether price will return to it or move away from it.
- Price above VWAP is not a “buy” and price below is not a “sell”. It is a description of where the latest price sits.
- VWAP does not show who traded or why.
- An institutional benchmark is about execution quality, not market direction.
Method in Practice: context, not a trigger
Fictional example. John, Harbor Index futures, the prices, times, costs and results are all invented for teaching. This shows how a written plan can be built and tested. It is not a recommendation, and nothing here says how often this idea works.
Try it on a real chart. Look at the chart in this lesson, then test this idea yourself on past sessions with bar replay. Keep your own count, including the days with no trade.
The idea. The lesson says price above VWAP isn't a "buy" and below isn't a "sell". It's a description of where price sits. So in John's plan, VWAP never triggers an entry or an exit. It only decides whether his long plan is switched on. The trigger is a separate level he marked before the open.
John's plan
- Setup
- the last six 5-minute closes are all above session VWAP (the plan is on)
- Enter if
- price pulls back to the prior session's high, 100.50, then a 5-minute bar closes back above it. Buy.
- Wrong if
- a 5-minute bar closes below 100.35
- Manage
- take half at 100.90, the rest at 101.30 or by 14:30
- Risk
- $150 maximum, costs included
Three outcomes
-
Worked: the level held → +$86
-
Failed: VWAP context was on, and the level still broke → −$80, inside the limit
-
No trade: price was mostly below VWAP, so the plan was off → $0
Show the full replays
| Item | Plan |
|---|---|
| Context | Session VWAP from 08:30 CT. Plan on when the last six 5-minute closes are above VWAP |
| Entry condition | Price trades at or below 100.50, then a 5-minute bar closes above 100.50 while the plan is on. Buy 2 at market after that close |
| Wrong if | A 5-minute bar closes below 100.35. Exit at market after that close |
| Management | Take profit on half at 100.90 (limit) and move the exit for the rest to the entry price (stop). Rest at 101.30 (limit). Time limit 14:30 CT |
| Risk cap and size | $150. Exiting just under 100.35 is planned to cost about $35 per contract, so 2 contracts |
| Not trading if | Before 09:00 CT (VWAP too young), a scheduled major release within the hour, or no setup by 12:00 CT |
Replay A: worked
| Time (CT) | What happened | John |
|---|---|---|
| 09:00–09:30 | Six closes above VWAP (VWAP 100.30) | Plan on |
| 09:40–09:45 | Dips to 100.46, closes 100.57 | Condition met: buys 2 at market, filled 100.62 |
| 09:45–10:50 | Trades 100.90 at 10:50 | Sells 1 at 100.90 (limit). Exit for the other moves to 100.62 |
| 10:50–13:05 | Never back to 100.62, trades 101.30 at 13:05 | Sells the last 1 at 101.30 (limit) |
Result after costs: +0.28 point = +$28, +0.68 point = +$68, commissions −$10. Net +$86. Journal: "VWAP said the plan was on. The level did the triggering."
Replay B: failed
| Time (CT) | What happened | John |
|---|---|---|
| 09:15–09:45 | Six closes above VWAP (VWAP 100.25) | Plan on |
| 09:55–10:00 | Dips to 100.44, closes 100.55 | Buys 2 at market, filled 100.60 |
| 10:00–10:15 | Falls, closes 100.30 | Wrong-if met: sells 2 at market, filled 100.25 |
| 10:15–15:00 | Trades below VWAP for the rest of the day | Done for the idea |
Result after costs: 2 × −0.35 point = −$70, commissions −$10. Net −$80. Journal: "Context on, trade wrong. Being above VWAP described the morning. It didn't protect the trade."
Replay C: no trade
| Time (CT) | What happened | John |
|---|---|---|
| 09:00–10:30 | Mostly below VWAP (VWAP 100.80; price 100.40–100.70) | Plan off |
| 10:35–10:40 | Dips to 100.45, closes 100.58, back above 100.50 | Plan off: no trade |
| 10:40–12:00 | Rises to 101.00 | Watches only |
Result: $0. Journal: "Price went up without me. The plan was off, and the weekly review counts days like this too."
Test it yourself
- Write your context rule as a count (here, six closes in a row), not a feeling.
- Replay every visit to the level, with the context on and off, and compare.
- Check where your platform starts VWAP and which price it uses (this lesson's typical-price note).
Where it breaks
- VWAP doesn't make price return to it or move away from it.
- Context can be on and the trade can still fail (the failed replay).
- Early in the session, VWAP moves a lot because little volume is behind it.
Calculators: position sizerisk/rewardexpectancy
Reflection question: In your plan, does VWAP describe the context, or is it secretly the trigger?
Check yourself
Reflect on these; there is no score.
- Why does VWAP move a lot in the first few minutes of the session and much less in the afternoon? Hint: how much total volume is in the denominator at each point.
- Two traders disagree about where VWAP is on the same futures market. Name two reasons they might both be right. Hint: session definition and bar-price approximation.
- What question does an anchored VWAP from a swing low answer? Hint: average price paid since that moment.
- Why does “large firms watch VWAP” not mean “VWAP predicts price”? Hint: what a benchmark is used for.
Reflect on your own process
- Which session definition and price source does your platform's VWAP use, and have you written that down in your notes?
- When your journal mentions VWAP, does it describe where price sat, or does it slip into a reason for acting?
- How would you check a VWAP value yourself if two charts disagreed?
- In your plan, does VWAP describe the context, or is it secretly the trigger?