Demand Index - Metastock VersionThis script implements the Demand Index, a complex technical indicator originally developed by James Sibbet. This specific version is adapted from the classic MetaStock formula to ensure accuracy and consistency with the original methodology.
The Demand Index combines price and volume data to relate price pressure to volume intensity. It is often used as a leading indicator to predict price trends by assessing the balance between buying pressure (Demand) and selling pressure (Supply).
How It Works
The calculation involves several steps to normalize volume and price changes:
Weighted Close: It calculates a weighted close price giving extra weight to the closing price (High + Low + 2*Close) / 4.
Volatility & Volume Averages: It computes the Average True Range (ATR) proxy and an Exponential Moving Average (EMA) of the volume to establish a baseline.
Buying & Selling Pressure: The core logic compares the current weighted close to the previous one.
If prices rise, the volume is assigned to Buying Pressure.
If prices fall, the volume is assigned to Selling Pressure.
A decay factor (Constant) is applied based on volatility to smooth the reaction to extreme price moves.
The Index: The final oscillator is derived from the ratio of smoothed Buying Pressure to Selling Pressure.
How to Use It
The Demand Index oscillates around a zero line. Traders typically look for the following signals:
Divergence: This is the most common use.
Bullish Divergence: Prices are making new lows, but the Demand Index is making higher lows. This suggests selling pressure is waning and a reversal may be imminent.
Bearish Divergence: Prices are making new highs, but the Demand Index is making lower highs. This suggests buying pressure is drying up.
Zero Line Crossovers:
A cross above zero indicates that Buying Pressure has overtaken Selling Pressure (Bullish).
A cross below zero indicates that Selling Pressure has overtaken Buying Pressure (Bearish).
Trend Confirmation: In a strong trend, the Demand Index should generally move in the same direction as the price.
Settings
Length: The lookback period for the moving averages (Default is 19, consistent with the standard MetaStock setting).
Originality & Credits
This script is a direct translation of the mathematical formula used in MetaStock software. While the Demand Index concept belongs to James Sibbet, this specific Pine Script implementation is provided as open source for the community to study and utilize.
Disclaimer:
This script is for educational and informational purposes only. It DOES NOT constitute financial advice. Trading involves significant risk, and past performance is not indicative of future results. Always do your own research before making investment decisions.
Demandindex
Demand IndexLibrary "DemandIndex"
di()
The Demand Index is a complex technical indicator that uses price and volume to assess buying and selling pressure affecting a security.
James Sibbet established six rules for using Demand Index when the technical indicator was originally published. While traders may use variations of these rules, they serve as a great baseline for using the indicator in practice.
The six rules are as follows:
A divergence between the Demand Index and price is a bearish indication.
Prices often rally to new highs following an extreme peak in the Demand Index.
Higher prices with a low Demand Index often indicate a top in the market.
The Demand Index moving through the zero line suggests a change in trend.
The Demand Index remaining near the zero line indicates weak price movement that won’t last long.
A long-term divergence between the Demand Index and price predicts a major top or bottom.
Traders should use the Demand Index in conjunction with other technical indicators and chart patterns to maximize their odds of success.

