Average Directional Index (ADX): Definition and Formula

The ADX is a non-directional indicator, meaning it does not indicate whether a trend is bullish (upward) or bearish (downward). Instead, it quantifies the strength of the trend on a scale typically ranging from 0 to 100. A higher ADX value suggests a stronger trend, while a lower value indicates a weaker trend or a range-bound market. The ADX is often used in conjunction with two other indicators— the Positive Directional Indicator (+DI) and the Negative Directional Indicator (-DI)—which together form the Directional Movement System. These companion indicators help identify the direction of the trend, while the ADX measures its intensity.

The ADX is particularly valuable because it filters out market noise and helps traders avoid false signals in choppy or sideways markets. For example, a stock might experience minor price fluctuations, but if the ADX remains low, it suggests that these movements lack the momentum to constitute a meaningful trend. Conversely, a high ADX reading during a price breakout signals that the move has strong backing and could be worth trading.

Wilder originally designed the ADX for daily price charts of commodities, but its adaptability has made it popular across various timeframes and asset classes. Traders use it to confirm trends, identify potential reversals, and determine whether to enter or exit positions based on trend strength.

Components of the ADX

To fully understand the ADX, it’s essential to break down its components within the Directional Movement System:

  1. Positive Directional Movement (+DM): This measures the upward movement in price. It is calculated by comparing the current high price to the previous high. If the current high exceeds the previous high, the difference is recorded as +DM; otherwise, it is zero.
  2. Negative Directional Movement (-DM): This measures downward movement in price. It compares the current low price to the previous low. If the current low is below the previous low, the difference is recorded as -DM; otherwise, it is zero.
  3. True Range (TR): This is a measure of price volatility and is the greatest of the following:
    • Current high minus current low
    • Absolute value of the current high minus the previous close
    • Absolute value of the current low minus the previous close
  4. Positive Directional Indicator (+DI): This is derived by dividing the smoothed +DM by the smoothed TR and multiplying by 100. It reflects the strength of upward price movement.
  5. Negative Directional Indicator (-DI): This is calculated by dividing the smoothed -DM by the smoothed TR and multiplying by 100. It reflects the strength of downward price movement.
  6. Average Directional Index (ADX): The ADX is a smoothed average of the difference between +DI and -DI, adjusted to reflect trend strength.

The interplay between +DI and -DI provides directional context, while the ADX quantifies the trend’s robustness. For instance, if +DI crosses above -DI, it suggests a bullish trend, and if -DI crosses above +DI, it indicates a bearish trend. The ADX then tells traders whether that trend is strong enough to act upon.

The ADX Formula

The calculation of the ADX involves several steps, which can seem complex at first but are straightforward once broken down. Wilder recommended using a 14-period timeframe for smoothing the data, though traders can adjust this based on their preferences. Below is the step-by-step process:

  1. Calculate the True Range (TR):
    • TR = Max[(High – Low), |High – Previous Close|, |Low – Previous Close|]
  2. Calculate the Directional Movement (+DM and -DM):
    • +DM = Current High – Previous High (if positive and greater than -DM; otherwise, 0)
    • -DM = Previous Low – Current Low (if positive and greater than +DM; otherwise, 0)
  3. Smooth the TR, +DM, and -DM:
    • For the first 14 periods, sum the values:
      • TR14 = Sum of first 14 TR values
      • +DM14 = Sum of first 14 +DM values
      • -DM14 = Sum of first 14 -DM values
    • For subsequent periods, use the smoothing formula:
      • TR14 = (Previous TR14 × 13 + Current TR) / 14
      • +DM14 = (Previous +DM14 × 13 + Current +DM) / 14
      • -DM14 = (Previous -DM14 × 13 + Current -DM) / 14
  4. Calculate the Directional Indicators (+DI and -DI):
    • +DI = (+DM14 / TR14) × 100
    • -DI = (-DM14 / TR14) × 100
  5. Calculate the Directional Movement Index (DX):
    • DX = |(+DI – -DI)| / (+DI + -DI) × 100
    • The absolute value ensures the DX is always positive.
  6. Smooth the DX to Obtain the ADX:
    • For the first 14 periods, ADX is not calculated (only DX is available).
    • On the 15th period, ADX = Average of the first 14 DX values.
    • For subsequent periods:
      • ADX = (Previous ADX × 13 + Current DX) / 14

This smoothing process reduces noise and provides a more reliable measure of trend strength over time.

Interpreting ADX Values

The ADX scale ranges from 0 to 100, though values above 60 are rare. Here’s how traders typically interpret the readings:

  • 0-25: Weak or no trend. The market is likely range-bound or consolidating. Trading strategies like trend-following may underperform here, while range-bound strategies (e.g., buying at support and selling at resistance) could be more effective.
  • 25-50: Moderate to strong trend. This is the sweet spot for trend-following traders, as it indicates a trend with enough momentum to potentially sustain itself.
  • 50-75: Very strong trend. These levels are less common but signal a highly directional market, often seen during significant breakouts or sustained moves.
  • 75-100: Extremely strong trend. Such readings are rare and may indicate an overextended market, potentially nearing a reversal.

Additionally, the slope of the ADX line matters. A rising ADX suggests increasing trend strength, while a declining ADX indicates weakening momentum, even if the value remains high.

Practical Applications of ADX in Trading

The ADX is a versatile tool that can be applied in various trading scenarios:

  1. Trend Confirmation:
    • Traders often wait for the ADX to rise above 25 before entering a trend-following position. For example, if +DI crosses above -DI and the ADX climbs above 25, it could signal a strong bullish trend worth buying into.
  2. Filtering False Breakouts:
    • In volatile markets, price breakouts can occur without follow-through. A low ADX (e.g., below 20) during a breakout suggests it lacks strength and may reverse, helping traders avoid premature entries.
  3. Exit Signals:
    • A declining ADX after a prolonged trend might indicate fading momentum, prompting traders to take profits or tighten stop-losses. For instance, if the ADX drops below 25 after peaking at 50, the trend could be losing steam.
  4. Combining with Other Indicators:
    • The ADX pairs well with tools like moving averages, RSI, or Bollinger Bands. For example, a trader might use a 50-day moving average to determine direction and the ADX to confirm the trend’s strength before acting.

Advantages and Limitations

Advantages:

  • Trend Focus: The ADX excels at identifying trend strength, helping traders avoid whipsaws in sideways markets.
  • Flexibility: It works across asset classes and timeframes, from intraday forex trading to long-term stock analysis.
  • Simplicity: Once understood, its readings are easy to interpret and apply.

Limitations:

  • Lagging Nature: As a smoothed indicator, the ADX reacts after a trend has begun, potentially causing traders to miss early moves.
  • No Direction: It doesn’t indicate trend direction, requiring +DI and -DI for context.
  • False Signals in Choppy Markets: Even with a low ADX, sudden price spikes can mislead traders if not paired with other tools.

Example Calculation

Let’s walk through a simplified example using hypothetical daily price data for a stock over three days:

  • Day 1: High = 50, Low = 48, Close = 49
  • Day 2: High = 52, Low = 47, Close = 51
  • Day 3: High = 53, Low = 49, Close = 52
  1. True Range:
    • Day 1: TR = 50 – 48 = 2
    • Day 2: TR = Max[(52 – 47), |52 – 49|, |47 – 49|] = Max[5, 3, 2] = 5
    • Day 3: TR = Max[(53 – 49), |53 – 51|, |49 – 51|] = Max[4, 2, 2] = 4
  2. Directional Movement:
    • Day 2: +DM = 52 – 50 = 2, -DM = 48 – 47 = 1 (since +DM > -DM, -DM = 0)
    • Day 3: +DM = 53 – 52 = 1, -DM = 49 – 47 = 0
  3. Smoothing (assuming 3 periods for simplicity):
    • TR3 = (2 + 5 + 4) / 3 = 3.67
    • +DM3 = (0 + 2 + 1) / 3 = 1
    • -DM3 = (0 + 0 + 0) / 3 = 0
  4. Directional Indicators:
    • +DI = (1 / 3.67) × 100 ≈ 27.25
    • -DI = (0 / 3.67) × 100 = 0
  5. DX and ADX:
    • DX = |(27.25 – 0)| / (27.25 + 0) × 100 = 100
    • ADX would require more periods for smoothing, but this shows a strong upward trend.

This simplified example illustrates the process, though real-world calculations typically use 14 periods.

Conclusion

The Average Directional Index (ADX) is a powerful tool for traders seeking to navigate trending and non-trending markets alike. By focusing on trend strength rather than direction, it provides a unique perspective that complements other technical indicators. Its formula, while intricate, is rooted in logical steps that measure price movement and volatility, offering a reliable gauge of momentum. Whether used to confirm breakouts, filter noise, or signal exits, the ADX remains a timeless addition to the trader’s toolkit, adaptable to modern markets as it was when Wilder first introduced it over four decades ago.