WhitmanTrading

Volume Spread Analysis (VSA): One Signal Tested on 56 Symbols

Volume spread analysis (VSA) is a way of reading a price chart bar by bar, comparing each bar's volume with its spread (the distance from high to low) and where it closed. A big effort that produces a small move is read as a sign that someone on the other side is absorbing it.

Volume spread analysis, usually shortened to VSA, asks a narrow question of every candle: did the amount traded match the size of the move? It works on any chart that shows volume, and it borrows the effort-against-result comparison that the Wyckoff method describes. This page explains how a VSA reading is built, lists the signals traders name, and then runs one of them as a fixed rule across 56 US stocks and ETFs.

How it works

Every bar gets three readings. The first is volume, judged against the bars just before it rather than in absolute shares. The second is the spread, the distance from the bar’s high to its low. The third is the close: near the top of the bar, near the bottom, or in the middle.

The readings are then compared with each other. A wide up bar on heavy trading that closes near its high is effort and result agreeing. The interesting cases are the mismatches. Heavy trading on a bar that barely moves means a lot of shares changed hands without price getting anywhere, and VSA reads that as one side quietly taking the other side’s orders.

Context decides the label. The same narrow, busy bar is read as buying absorption after a fall and as selling into strength after a rise. That is why VSA traders look at where the bar sits in the recent trend and near which support or resistance before naming it.

Everything is relative. “High volume” and “narrow spread” only mean something against a baseline, and the choice of baseline changes which bars qualify. The volume analysis page shows how much the answer moves when the lookback period changes.

The main VSA signals

No demand. An up bar with a narrow spread on lighter trading than the bars before it. Buyers are not showing up, so the rise is read as weak.

No supply. The mirror image: a narrow down bar on light trading, read as sellers running out.

Stopping volume. A down bar with heavy trading that closes off its low, often after a fall. It is read as larger buyers absorbing the selling. This is the signal tested below, in a narrow-spread form that does not check where the bar closed.

Upthrust. A bar that pushes above a recent high and closes back near its low, often on heavy trading. The Wyckoff upthrust page covers the larger version of this shape.

Test. A dip into an area where heavy selling happened before, this time on light trading. If little traded there, sellers are assumed to be gone.

Climax. A very wide bar on extreme trading at the end of a long move. The exhaustion page explains why these are much easier to name after the fact than while they print.

A worked example

Meta Platforms on 30 July 2026 met the tested rule. The prior session had closed at $585.61, with a low of $582.22. On 30 July the stock opened at $526.00, well under that low, traded between $524.49 and $539.88, and closed at $539.03.

Step one, the volume. 42,271,500 shares traded. The average of the 20 sessions before it was 19,045,385. Dividing gives 2.22, so the day traded more than twice its usual amount.

Step two, the spread. The high minus the low is $539.88 minus $524.49, or $15.39. The average spread of the 20 sessions before it was $22.77. Dividing gives 0.68, under the 0.8 limit, so the bar was narrow.

Step three, the direction. The close of $539.03 was below the prior close of $585.61, a drop of 7.95%. All three conditions are met, so this is a signal day.

What followed. Five sessions later, on 6 August, Meta closed at $589.90, up 9.44% from the signal close. Ten sessions later, on 13 August, it closed at $594.97, up 10.38%.

This example was picked by a rule, not by its outcome: it is the most recent signal among Apple, Microsoft, Nvidia, Amazon, Alphabet, Meta and Tesla. It also shows a problem. The whole bar sat below the prior day’s low, so its spread was narrow partly because the move had already happened overnight. The rule cannot tell a gap from absorption.

The test, defined before the results

Most VSA descriptions leave the thresholds to the reader’s eye. To count anything, the stopping volume idea has to be pinned down. These settings were fixed before any result was computed.

The data is daily bars from Yahoo Finance for 52 US stocks and 4 sector ETFs, from 3 January 2000 (or the first listing date) to 25 September 2026. That is 356,825 bars, of which 354,733 were eligible. Prices are adjusted for splits but not for dividends, so every return here is a price return. Overlapping signals were all kept.

The original data

The signal is rare. It fired on 426 of the 354,733 eligible days, 0.12% of them, and on 5.8% of the 7,318 down days with at least twice their usual volume.

Group Days Higher after 5 sessions Higher after 10 sessions Median 10-session return
Every eligible day (base rate) 354,733 53.6% 54.8% 0.57%
All down days 171,056 54.4% 55.3% 0.64%
Down days, 2x volume, any spread 7,318 54.0% 54.0% 0.58%
Down days, 2x volume, wide spread (1.5x or more) 4,364 53.5% 53.7% 0.52%
Down days, 2x volume, narrow spread (the VSA test) 426 58.9% 55.4% 1.03%
Paired horizontal bars showing how often each group of days on 56 US symbols closed higher five and ten sessions later, with the VSA signal group ahead only at five sessions.
Share of days that closed higher 5 and 10 sessions later, by group, 56 US stocks and ETFs, 2000 to 2026. Source: Yahoo Finance daily bars (m40-vsa-narrow-spread-down-days-summary-2000-2026.csv).

At 10 sessions the signal showed no edge beyond the base rate. 55.4% of signal days closed higher, against 54.8% for every eligible day and 55.3% for all down days. The gap is 0.6 points, well inside the noise for 426 cases. The median return was higher, 1.03% against 0.57%, but the share of winners barely moved.

At 5 sessions there was a lead. 58.9% closed higher, 5.3 points above the 53.6% base rate. A simple standard error puts that about 2.2 errors from the base. The 426 signals fall on 363 distinct dates, and 100 of them share a date with another stock, but grouping the signals into weekly or monthly blocks still leaves the lead 2.1 to 2.2 errors out. It is still weak evidence: it is one of two horizons measured, most symbols gave only a few signals, and the lead was gone by 10 sessions.

The busy days with wide spreads did slightly worse than average, 53.7% higher after 10 sessions. So what separates the narrow bars is the spread condition, and that condition is also what makes the group small.

Split by period, the picture is mixed. From 2000 to 2012 the 243 signals closed higher after 10 sessions 56.8% of the time, against a 53.4% base. From 2013 to 2026 the 183 signals did worse than the base, 53.6% against 55.9%. The 5-session lead appeared in both halves, 59.3% against 52.3% and 58.5% against 54.6%.

Four pairs of bars comparing VSA signal days with all eligible days in 2000 to 2012 and 2013 to 2026, at five and ten sessions.
Share of signal days and of all eligible days that closed higher after 5 and 10 sessions, split into 2000 to 2012 and 2013 to 2026. Source: Yahoo Finance daily bars (m40-vsa-narrow-spread-down-days-signals-2000-2026.csv).

Per symbol, it was a coin flip. All 56 symbols had at least one signal, but 54 had fewer than 30, and the count ran from 1 to 33. On 10-session returns, 27 of the 56 beat their own base rate and 29 did not.

The full tables are published as the VSA test summary, every signal day with its prices as the VSA signal list, and the per-symbol results, so each count can be rechecked.

Demand for the topic is modest but real. In the 24,971-video corpus this site studies, counted once per video id, 26 titles name volume spread analysis, VSA, volume price analysis or VPA, from 19 channels, at a median of 18,415 views. That is about 1.7 times the corpus median of 10,684. The 11 that say VSA or volume spread analysis come from 7 channels and have a median of 123,331 views, led by one at 960,174. Only 4 titles pair the term with Wyckoff.

Why narrow busy bars are hard to read

A narrow spread can come from absorption or from a gap. In 98 of the 426 signals, 23.0%, the whole bar sat below the previous day’s low, as Meta’s did. Those gap days did about as well as the rest after 10 sessions, 56.1% against 55.2%, so they do not explain the result either way.

Volume on a daily bar has no direction. Every share bought was also sold. VSA infers who was in control from the close and the spread, and that inference is the part a fixed rule cannot check. The tape shows the actual prints, but a daily chart does not.

The baseline matters as much as the bar. A 20-session average is one reasonable choice. A longer one flags fewer days, and the relative volume page shows how a volume multiple tends to mark bigger moves in both directions rather than a direction.

When it fails

The first failure is reading one bar as a verdict. On this data a narrow, busy down day was followed by a higher close 10 sessions later about as often as any other day. The label alone added nothing a coin with the market’s usual upward lean did not already have.

The second is the threshold. Other settings, such as 1.5 times volume or 0.6 times spread, flag different days and will give different counts. This page tests one version fixed in advance. Trying many versions until one looks good is overfitting, and the result would not be a test.

The third is the sample. These are 56 names that still trade today, which leaves out companies that failed or were bought, a survivorship bias that flatters returns in general. Most symbols produced only a handful of signals.

The fourth is the missing context. Most VSA teaching says a signal only counts at the right place, after a fall and near support. This rule does not check location, so a trader who adds that filter is running a different rule and needs a separate test before any claim is made.

The fifth is the price series. Returns here exclude dividends, which trims each return slightly, and a daily bar cannot show whether the heavy trading came at the low or the close.

Wyckoff sets out the effort-against-result law that VSA applies one bar at a time, and the accumulation and distribution phases VSA signals are meant to sit inside. Volume analysis covers why a volume reading depends on its baseline.

Relative volume tests a volume multiple on its own across US stocks, and NR7 tests a different narrow-range rule, with no volume condition at all. The exhaustion page covers the climax bars that sit at the far end of the VSA vocabulary.

What I actually do

Read a VSA bar as a question, not an answer. Ask what the next two or three bars would have to do to confirm the absorption story, write that down, and do nothing until they do it.

— Michael Whitman

This page is educational, not financial advice. Test every idea on your own charts before risking money.