Negative Volume Index

The Negative Volume Index was introduced (in Stock Market Logic) by Norman Fosback and is often used in conjunction with Positive Volume Index to identify bull markets. The two indicators are based on the assumption that the smart money dominates trading on quiet days and that the uninformed crowd dominates trading on active days.

Negative Volume Index is based on days when volume is down from the previous day. Positive Volume Index is based on days when volume is up on the previous day.

Negative Volume Index Trading Signals

Fosback maintains that there is a 95% probability of a bull market when Negative Volume Index is above its 1 year moving average. The probability drops to 50% when NVI is below the moving average.

  • Negative Volume Index crossing to above its one year moving average confirms the approach of a bull market.

Use Indicator Smoothing to eliminate whipsaws.


Wal-Mart Stores Inc. plotted with   Negative Volume Index,   9-day exponential moving average and   255 day exponential moving average (of NVI).

Wal-Mart Stores Negative Volume Index and EMA

Mouse over chart captions to display trading signals.

Use the 9-day moving average crossing the 255-day MA to signal the start of a bull-trend: The Negative Volume Index itself has too many whipsaws.

  1. The 9-day moving average crosses to above the 255-day MA, indicating an up-trend [+].
  2. The trend is well on its way before the next signal [+].
  3. A whipsaw occurs during a strong down-trend. The signal [?] is incorrect.
  4. The fast MA crosses to above the slow MA [+] but the ensuing trend is not very strong.
  5. Another signal [+] but the rally is even weaker.


See Indicator Panel for directions on how to set up an indicator.

The default setting for the Negative Volume Index (exponential moving average) is 255 days. To alter the default settings - Edit Indicator Settings.

Negative Volume Index Formula

  1. Take yesterday's Negative Volume Index
  2. If today's volume is lower than yesterday, add:
               { ( Close [today] - Close [yesterday] ) / Close [yesterday] } * NVI [yesterday]
  3. Otherwise, add zero.