Indicator Formula

Technical Details — Average Directional Index (ADX)
Section titled “Technical Details — Average Directional Index (ADX)”Overview
Section titled “Overview”The ADX is derived from the Directional Movement System. It measures trend strength by smoothing the ratio of directional movement to true range.
Key Concepts:
- +DM/-DM: Directional movement (expanding highs vs expanding lows)
- +DI/-DI: Directional indicators (normalized by ATR)
- DX: Directional Index (ratio of directional difference)
- ADX: Smoothed DX (the final trend strength value)
Mathematical Derivation
Step 1 — Calculate Directional Movement
Section titled “Step 1 — Calculate Directional Movement”Purpose: Determine if highs or lows are expanding.
$$+DM = High[t] - High[t-1] \text{ (if positive and > -DM, else 0)}$$ $$-DM = Low[t-1] - Low[t] \text{ (if positive and > +DM, else 0)}$$
What This Measures: Which direction price is expanding
Step 2 — Calculate DI Lines
Section titled “Step 2 — Calculate DI Lines”Purpose: Normalize directional movement by ATR.
$$+DI = \frac{RMA(+DM, n)}{ATR(n)} \times 100$$ $$-DI = \frac{RMA(-DM, n)}{ATR(n)} \times 100$$
Where:
- $$n$$ = DI period
What This Measures: Directional strength as percentage of range
Step 3 — Calculate ADX
Section titled “Step 3 — Calculate ADX”Purpose: Smooth the directional index.
$$DX = \frac{|+DI - -DI|}{+DI + -DI} \times 100$$ $$ADX = RMA(DX, m)$$
Where:
- $$m$$ = ADX smoothing period
What This Measures: Smoothed trend strength
Compact Formula Summary
$$+DI = RMA(+DM, n) / ATR(n) \times 100$$ $$-DI = RMA(-DM, n) / ATR(n) \times 100$$ $$DX = |+DI - -DI| / (+DI + -DI) \times 100$$ $$ADX = RMA(DX, m)$$
Complete Calculation Example
With DI Period = 14, ADX Period = 14: If +DI = 30 and -DI = 15: DX = |30-15|/(30+15) × 100 = 33.3 ADX smooths this over 14 bars, typically settling around 20-40 in trending markets.
Key Takeaways from the Example
- Double Smoothing: ADX smooths already-smoothed DI values — very stable but laggy
- Direction Blind: ADX of 40 could be a strong uptrend or strong downtrend
- Typical Ranges: <20 = no trend, 20-25 = emerging trend, 25-50 = strong trend, >50 = extremely strong