Volume-Weighted Moving Average
A volume-weighted moving average multiplies each close by that bar's volume before averaging, so heavily traded bars pull the line further than quiet ones. Its distance from an ordinary moving average of the same period is the actual signal, because that gap says which bars carried the participation.
How it works
Every moving average on a chart weights bars by age. This one weights them by how much traded.
Multiply each close in the window by that bar’s volume, add those products up, and divide by the total volume in the window. A bar that traded ten times the average pulls the line ten times as hard as an ordinary bar at the same distance back.
So the line is the average price at which the period’s trading actually happened, rather than the average of the prices the period happened to close at. Those are different questions, and only one of them involves anyone’s money.
The reading is the gap, not the line
On its own the line tells you very little — it is a moving average, and it sits somewhere near price like all of them. Put a simple moving average of the same period on top and the distance between the two becomes readable.
Volume-weighted above simple means the higher-priced bars in the window were the busier ones. The advance had participation behind it. Volume-weighted below simple means the selling was where the volume was, whatever the closes did.
That is a genuinely independent piece of information, which is rare — most indicator pairs are two views of the same closes, as the confluence page sets out. This pair is price structure against participation, and those two can disagree.
A dead bar is almost ignored. Overnight drift, a holiday session, the middle of a lunch lull — all of it enters the average with a weight close to zero, which is the behaviour most people want and few realise they are missing.
A single enormous bar can dominate the whole window. On an earnings day or an index rebalance, one bar’s volume can exceed the rest of the period combined, and the line becomes mostly a statement about that one bar.
Where the volume number comes from, and why it matters
Spot forex has no central exchange, so there is no true volume figure. What the platform shows is tick volume — the number of price updates in the bar. That correlates with activity, and it is not size: a thousand one-lot updates and one thousand-lot trade look completely different to it.
So a volume-weighted average on forex is weighting by how often the price changed. It is not worthless — activity is real information — but it is not what the name implies, and anyone reasoning about “where the money traded” on a forex chart is reasoning about something the data does not contain.
Crypto has the mirror-image problem: too many venues. The volume on your chart is one exchange’s volume, and the same asset trades simultaneously across dozens. The weighting is real but partial, and the share it represents changes over time.
Equities and futures are the clean case. Consolidated tape volume for stocks and exchange volume for futures are actual traded quantities, and this indicator does what it claims there.
On long timeframes the two lines converge. Aggregate enough bars and volume differences average out, so a 200-period volume-weighted average and a 200-period simple one tell you almost the same thing. The tool earns its place on shorter horizons where individual bars still differ a lot in size.
In practice: what to do with it
The opening bar is usually the heaviest of the session, so on an intraday chart the line is disproportionately anchored to the open. After a gap that effect is stronger still, because the open is both the busiest bar and the one furthest from the rest of the window.
Do not hang a stop on it. The line moves with volume as well as price, so it can shift materially on a bar where price hardly moved. A stop level that reprices for reasons unrelated to your thesis is not a stop, it is a coin flip with extra steps.
And acting on every divergence costs 2% of a typical bar’s range in round-trip costs on this history. The gap between the two lines opens and closes constantly; treating each opening as a trade is a fast way to pay that fee many times for one idea.
What it is not
It is not the volume-weighted average price, VWAP. VWAP anchors at a session start and accumulates from there, so it is a fixed reference within the day. This is a rolling window that discards old bars, so it never has a starting point. Different tools, similar names, constantly confused.
It is not a volume indicator. It reports a price. Volume enters as a weight, and the output is still a level on the price axis — which is why it cannot replace reading the volume histogram itself.
It is not more predictive. It changes what the average is of. That is a better question, not a forecast.
And it is not comparable across instruments. Volume units differ — shares, contracts, ticks — so the size of the gap between the two lines means something different on each chart you put it on.
When it fails
In a range the two lines converge and stay converged. Heavy bars occur at both boundaries, so the volume weighting cancels out and the tool has nothing to report. Reading meaning into a gap of almost nothing is the main way people misuse it.
The second failure is one giant bar. A single session with ten times normal volume dominates the window for as many bars as the window is long, and the line spends that whole period describing one event rather than the period.
A third is trusting the volume figure without checking where it came from. Tick volume on forex, single-venue volume on crypto, and consolidated volume on equities are three different measurements wearing one label.
A fourth is using it on an illiquid instrument. When most bars have near-zero volume, a handful of bars carry the entire weight, and the line becomes jumpy in a way that looks like signal and is not.
And a fifth is expecting the divergence to resolve in a particular direction. The gap says which bars had participation. It does not say that price must move toward the volume-weighted line, and there is no mechanism that would make it do so.
The original data
The 576-bar shared history behind every chart on this site carries a volume series alongside price,
and the median bar range is 0.49 against a close range of 98.19 to 105.45 — recorded in
research/series-measurements.json. Those figures are what the 2% round-trip cost quoted throughout the
site is computed against, and they are the same numbers every page here uses.
The check worth running on your own instrument takes one afternoon: plot both averages at the same period and record the gap between them, in units of a median bar, over a year. If the gap is persistently smaller than a bar, the tool has nothing to add on that chart and you can take it off with confidence rather than by preference. That is a question you can answer with data instead of an opinion, which is more than most indicator decisions offer.
Related
VWAP is the session-anchored version, and the difference between the two is the single most common confusion in this corner of charting. Volume explains what the weighting input actually measures. And simple moving average is the line you have to plot alongside this one for it to say anything at all.
This is the one indicator I kept on the chart after clearing everything else off, and not because it predicts anything. It answers one question I could not answer by eye - did the buying happen on the bars that mattered - and it answers it without me having to squint at a volume histogram.
— Michael Whitman
This page is educational, not financial advice. Test every idea on your own charts before risking money.