ADX and DI

Still on the topic moving averages, indices and oscillators, in this article we will present the ADX index and the DI.

The DI divides into DI + and DI-, which respectively measure the strength of the positive trend and the strength of the negative trend.

Operatively they can be used as the intersection of two averages, ie when the DI + crosses, from top to bottom, the DI-, is a down-trend signal. If instead the DI + crosses the DI- from the bottom upwards, this is an up-trend signal.

Care must be taken that as with simple averages this index is not very reactive.

The ADX index, instead, which is calculated starting from DI + and DI-, shows us the strength of the trend.
This is the real addition compared to the use of moving averages, as it tells us if the current trend (bearish or bullish) is really well defined, or if alternatively we are in a phase of lateralization where instead the prices move in Horizon.

With the use of simple averages, in fact, one could have a cross that would indicate a change in trend, while instead it could be in a horizontal phase at the end of which the trend resumes in the same direction. The ADX is therefore particularly useful to use in conjunction with moving averages.

Operationally, the ADX has the following interpretations:

  • 0-25: Absent or weak trend;
  • 25-50: Strong trend;
  • 50-75: Very strong trend;
  • 75-100: Extremely strong trend;

The input parameter of the ADX and DI is the period, and the recommended one is 14.

It is calculated as follows (source wikipedia):

The calculation of + DI and -DI requires the closing, maximum and minimum price of each period (typically daily). The algorithm for calculating the two terms includes:

  • UpMove = Today’s maximum – Yesterday’s maximum
  • DownMove = Minimum of yesterday – Today’s minimum

If UpMove> DownMove and UpMove> 0, then + DM = UpMove, otherwise + DM = 0;

if instead DownMove> UpMove and DownMove> 0, then -DM = DownMove, otherwise -DM = 0

After setting the number of periods for the calculation (Wilder originally used 14 days), + DI and -DI are:

  • + DI = 100 times the exponential moving average of + DM divided by the average true range
  • -DI = 100 times the exponential moving average of -DM divided by the average true range

The moving average is calculated on the number of selected periods. ” Average true range ” means an exponential moving average of true ranges .

The algorithm for the calculation of the ADX is:

  • ADX = 100 times the exponential moving average of the absolute value of [(+ DI) – (-DI)] divided by [(+ DI) + (-DI)]

In image 1 we can see an example of ADX and DI on the BTC chart:

Image 1 : TradingView – ADX and DI on BTC – Timeframe 1D – November 2017 – April 2018

As we can see on March 4, 2018 there is a cross between DI- (in red) and DI + (in green) that would normally indicate a trend inversion (from the previous down to an up trend). However, the ADX (in black) was below 25k indicating a lateral phase of the market, in fact immediately after the trend has remained down.
With the use of medium suns we would not have noticed that we were in a lateralization phase.


  1. Achille Fornasini, “Mercati finanziari: scelta e gestione di operazioni speculative – I metodi e i sistemi della moderna Analisi Tecnica a supporto delle decisioni operative”, 1th edizione del 1996, ETAS
  2. Wikipedia
Condividi su: