On Balance Volume (OBV)
The On Balance Volume (OBV) indicator was developed by Joseph Granville and is explained in his book Granville's New Strategy of Daily Stock Market Timing for Maximum Profit.
On Balance Volume attempts to measure the level of accumulation or distribution by comparing volume to price movements. Volume is added to the indicator if closing price moves up and subtracted if closing price moves down. No adjustment is made if closing price is unchanged.
Trading Signals
On Balance Volume should be used in conjunction with other indicators.
Ranging market
During a ranging market watch for a rising or falling On Balance Volume:
- Rising OBV warns of an upward breakout.
- Falling OBV warns of a downward breakout.
Trending Market
A rising On Balance Volume confirms an up-trend and a falling OBV confirms a down-trend.
- Bullish divergence between OBV and price warns of market bottoms.
- Bearish divergence between OBV and price warns of market tops.
Example
Intel Corporation plotted with On Balance Volume.
Mouse over chart captions to display trading signals.
- Price trades in a range during March before a bearish divergence occurs. The signal is fairly weak - price makes an equal high while On Balance Volume makes a lower high.
- The signal at [1] appears to have been incorrect - price rises to a higher peak - but a far stronger triple divergence (price makes a higher high while OBV makes a lower high) signals weakness.
- A further bearish divergence occurs - price makes an equal high and OBV makes a lower high. Shortly thereafter price falls sharply.
Setup
See Indicator Panel for directions on how to set up On Balance Volume. To alter the default settings - Edit Indicator Settings.
Formula
Steps in the On Balance Volume (OBV) calculation are as follows:
- If Close for the period is higher than the previous Close:
OBV = OBV [previous period] + Volume [current period] - If Close for the period is lower than the previous Close:
OBV = OBV [previous period] - Volume [current period] - If Close for the period is equal to the previous Close:
OBV = OBV [previous period]