VSA - Volume Spread Analysis
It's so far the most complex indicator I've created. It follows strategy of Volume Spread Analysis according to definitions created by Tom Williams.
VSA is leading indicator, however signals occurs very often before major move happen - so please avoid to jump straight on into a position. Treat this as early warning defining most probable future direction.

How does it work?

Taking into account multiple factors (as spread, volume, opening, close, trend etc.), it identifies signals based on definitions coming from Volume Spread Analysis.

Input settings

  • Display Additional Signals - when active, on chart there are displayed additional signals "Buy/Sell" in white font color (color customisable through settings)
  • Minimum Volume for Analysis - threshold on volume setting up minimum value to be reached in order to perform VSA Analysis (counted per bar)
  • Use Predefined Volume Levels for M1 - Option to apply for calculation volume levels static ones, prepared for Nasdaq and Dax initially and based on timeframe M1
  • Calculation Type - type of calculation volume levels (in case when Predefined Volume above is set to "None"). Possible to be selected are: SMA, EMA or Session Average (described below)
  • Number of Entire Sessions a Calculate Average Line - number of sessions taken into account for calculation average volume line (will work if Calculation Type is set to "Session Average" in previous option
  • Session Type - predefined settings of time range for either EU or US Session (valid only in case of selection "Session Average" as Calculation Type earlier)
  • MA Length - period for calculation Moving Average applied to Volume (in case of using EMA or SMA in "Calculation Type" field earlier)
  • Volume Ratios - ratios of standard deviation in comparison to Volume Average for classification of Volume Levels
  • MA Period for Spread - period for calculation of spread (based on more accurate ATR)
  • Method of calculate VSA Volume - mode of calculation VSA Volume, Recommended is default one and in our backtesting seems to be more accurate with this mode selected, Alternative is known from older version of VSA Analyser and by some of traders is still preferred one
  • Display VSA volume on colored background - option to enable/disable colored background, based on Bullish/Bearish Volume
  • Display Effort/Result Analysis - option to display or hide colored squares at the bottom of the chart, after finding by script divergences accordingly to Effort&Result Laws (more described further in documentation)
  • Session Start/End - in case of selecting Session Average Volume mode earlier, here we have options to configure period of time that we want to treat as regular session in perspective of Volume. Settings depends on Timezone, Timeframe selected on chart and instrument. Function is still in test mode therefore in case of issues please don't hesitate to get in touch with me
  • ATR Period - Period for calculation ATR used to identify trend
  • ATR Multiplier - Multiply factor applied to ATR for identifying trend
  • Take Wicks into account - option either to identify trend taking wicks into account or only full candle body (between Open/Close)

VSA Signals display

Signals are displayed above (in case of Bearish signal - SOW aka Signal of Weakness) or below candles (in case of Bullish signal - SOS aka Signal of Strength).

Bull/Bear Volume

Coloured background (when set to be displayed in Settings), are classifying volume either as Bullish or Bearish accordingly to VSA methodology.
  • Bullish Volume - when price is increasing and volume is increasing OR price is decreasing and volume is decreasing
  • Bearish Volume - when price is decreasing and volume is increasing OR price is increasing and volume is decreasing

Effort & Result Analysis

Coloured squares (when set to be displayed in Settings) at the bottom of the chart are displaying major signals coming from analysis of Effort & Result.
  • Blue - effort is equal to result (E = R)
  • Green - no effort and big result (E = 0 and E < R)
  • Fuchsia - high effort and high result (E > 0 & R > 0)
  • Yellow - high effort and low result (E > R)
Blue signals are most commonly used as trend continuation signals. They also mean balance on the market.
Another signals are showing divergences, which can be treated as early warning signals. However very important in analysis of such signals is context - market situation (Accumulation/Distribution/Spring Up/Spring Down etc.), location (Support and Resistance zones, key levels like Week/Month High & Low etc.) and few other factors. This analysis shouldn't be traded separately.


SOS - Signals of Strength

  • SCL - Selling Climax
  • BGH - Bag Holding
  • S - Shakeout
  • STVL - Stopping Volume
  • BR - Bottom Reversal
  • NS - No Supply
  • TS - Test
  • SL - Shakeout Low (as a "Test)

SOW - Signals of Weakness

  • BCL - Buying Climax
  • EOR - End of Rising Market
  • SCI - Supply Coming In
  • U - Upthrust
  • TR - Top Reversal
  • UL - Upthrust on Low Volume (as a "Test")
  • NREF - No Result from Effort
  • ND - No Demand
Colours of signals have meaning:
  • Red - Major Distribution Signal (SOW)
  • Green - Major Accumulation Signal (SOS)
  • Orange - Signals of tests in Distribution schemes
  • Blue - Signals of tests in Accumulation schemes

Volume Support/Resistance Zones

Scanner also allows to enable functionality that automatically draws red for Resistance and green for Support zones, that are defined based on Volume action in marked particular areas of chart. They work the same way as standard S/R levels in technical analysis.


Script has defined alerts for all VSA definitions. We recommend to use mainly alerts "Strong SOS!" and "Strong SOW!" alerts as they're combining major signals to watch out.
Copy link
How does it work?
Input settings
VSA Signals display
Bull/Bear Volume
Effort & Result Analysis
Volume Support/Resistance Zones