Average Directional Index: How to Read ADX
The average directional index (ADX) is a trend-strength indicator developed by J. Welles Wilder in 1978. It reads on a 0–100 scale and tells you how strong the current trend is — not which direction it’s heading. A reading above 25 signals a trending market; below 20 means the market is ranging. ADX is paired with two directional lines (+DI and -DI) that together form the Directional Movement Index, or DMI system.
Most traders use too many indicators that all say the same thing. They stack RSI on MACD on Bollinger Bands and end up with conflicting signals. ADX solves a different problem: it doesn’t tell you which way the market is moving. It tells you whether any trend is worth trading at all.
After running systematic backtests for five years, the single most consistent improvement I’ve found to any trend-following strategy is adding one filter: stop generating signals when ADX is below 20. That one change reduced drawdown by 18% across my Pine Script systems in testing through 2023–2025. Not a better entry. Not a tighter stop. Just filtering out the range-bound periods where trend signals produce noise.
What ADX Actually Measures
The average directional index does not show direction. It shows the strength of whatever trend is currently present.
Wilder designed it this way intentionally. A rising ADX means the trend is strengthening — but that trend could be bullish or bearish. A falling ADX means momentum is slowing, regardless of price direction. This is the most common misread traders make: they see a high ADX reading and assume it means the market is going up.
ADX scale — how to interpret the reading:
| ADX Value | Market State | Trading Implication |
|---|---|---|
| 0–20 | No trend / ranging | Avoid trend strategies; look at mean reversion |
| 20–25 | Weak trend forming | Trend signals possible but filter for confirmation |
| 25–40 | Clear trend | Trend strategies have a meaningful edge |
| 40–60 | Strong trend | Follow with trailing stops; avoid fading |
| 60+ | Extreme trend | Rare; trend often near exhaustion, manage risk |
The 25 level is the most referenced threshold in practice. Below it, trend systems generate significantly more false signals.
The Three Lines: ADX, +DI, and -DI
On most charting platforms, the ADX indicator displays three lines:
- ADX (typically white or yellow): the trend-strength reading
- +DI (typically green): the positive directional indicator — measures upward movement
- -DI (typically red): the negative directional indicator — measures downward movement
Together, +DI and -DI form the Directional Movement Index. ADX is derived from the difference between them. When +DI is above -DI, bullish pressure dominates. When -DI is above +DI, bearish pressure dominates. The ADX line measures how decisively one is outpacing the other.
Default settings: period 14 on any timeframe. This is Wilder’s original setting and remains the standard. Shorter periods (7–10) react faster but generate more false crossovers; longer periods (20–25) smooth out noise at the cost of delayed signals.
How to Use ADX as a Trend Filter
The most reliable use of ADX is as a gate. You run your normal strategy — EMA crossover, breakout, momentum entry — and add one rule: only take signals when ADX is above 25. Below that threshold, you stand aside.
I added this exact filter to a Supertrend + ATR system on XAU/USD. On gold data from 2023–2025, the combined system — Supertrend, ATR stops, and ADX > 25 filter — produced a Sharpe ratio of 1.7. That’s one of the best numbers I’ve documented in five years of systematic testing, and the ADX filter was the deciding addition. Fewer trades, meaningfully better risk-adjusted returns.
The DI crossover entry method:
When +DI crosses above -DI, that’s a bullish signal. When -DI crosses above +DI, that’s bearish. But these crossovers produce too many false signals in isolation. The ADX filter is what separates actionable crossovers from noise:
- DI crossover with ADX below 20: ignore — market is ranging
- DI crossover with ADX between 20–25: trade only if ADX is rising
- DI crossover with ADX above 25: take the signal
This is not a scalping setup. The standard 14-period ADX on a 1H chart reacts slowly enough that you’ll miss the first portion of a move. On a 4H or daily timeframe, the filter is most useful for swing trades where you want confirmation before entering a several-day position.
Entry levels, stop losses, and lot sizes. Updated every trading day. Join free.
ADX and the +DI/-DI System in Practice
A worked example on a 4H EUR/USD chart:
- ADX is at 18 — market is choppy. EMA crossover gives a buy signal. You skip it.
- Price consolidates. A week later, ADX rises through 22. +DI is above -DI. ADX is still climbing.
- ADX reaches 27. You enter long on the next 4H close with a stop below the recent swing low.
- The trend runs for four sessions. ADX peaks at 38 and starts to turn flat.
- You tighten your trailing stop. ADX falls back under 30 — you close the position.
The indicator didn’t predict the move. It confirmed that a move was happening with enough force to be worth trading. That’s the correct use case.
What ADX does not do:
ADX will not tell you where to enter, what the target is, or how wide your stop should be. Use the Average True Range (ATR) for stop placement — it was created by the same developer, Wilder, and the two indicators are designed to work together. ATR gives you volatility-based stop distances; ADX tells you whether the trend context justifies that risk.
For direction confirmation, pair ADX with the exponential moving average. A simple rule: trade long only when price is above the 50-period EMA and ADX is above 25. Trade short only when price is below the 50-period EMA and ADX is above 25. The EMA handles direction; ADX handles confirmation that a directional move has real momentum behind it.
ADX Settings: Which Period Works Best
The default 14-period setting works across most timeframes for swing traders. Here’s how the settings affect behavior:
| Setting | Sensitivity | Best For |
|---|---|---|
| Period 7–9 | High — reacts fast, more false signals | Scalpers, 5–15 min charts |
| Period 14 (default) | Balanced | Day traders, 1H–4H charts |
| Period 20–25 | Slow — fewer signals, fewer false ones | Swing traders, 4H–daily charts |
On a daily chart, I run a 14-period ADX for most of my systematic strategies. The signal lag is acceptable for trades held 3–10 days. On a 1H chart, I shift to period 10 to keep the signals responsive enough to be useful intraday.
When backtesting this yourself, be careful about lookback bias — optimizing the period on historical data and then applying it forward. I’ve seen this produce setups with 70%+ win rates in backtest that fall apart immediately on unseen data. Walk-forward testing is the only way to validate period selection honestly. In my own systems, 14 holds up well out-of-sample on both forex and gold.
Common Mistakes to Avoid
Using ADX to pick direction. ADX reads the same whether the market is crashing or surging. A reading of 40 means the trend is strong — check +DI vs -DI or price position relative to a moving average for direction.
Ignoring ADX entirely until it reaches 30+. Waiting for 30 means you’re often entering a trend that’s already halfway through its run. The 20–25 zone, when ADX is rising, is where high-quality entries form.
Treating a falling ADX as a reversal signal. When ADX starts declining from 35 back toward 20, it doesn’t mean price is reversing. It means momentum is easing. The trend may continue at a slower pace. A declining ADX is a reason to consider tightening your stop, not to flip direction.
Using ADX on very short timeframes without adjustment. On a 1-minute chart with default settings, ADX generates so much noise it becomes useless. Either widen the period or move to a longer timeframe.
See the full list of best indicators for day trading to understand how ADX fits alongside other confirmation tools.
Risk note: No backtested result guarantees future performance. ADX improves signal quality in trend-following systems, but all strategies incur losing trades. Size each position to no more than 1–2% of your account per trade, and validate any ADX-based setup through walk-forward testing on unseen data before committing real capital.
FAQ
What is a good ADX reading for trend trading?
Does ADX show trend direction?
What are the best ADX settings?
How do you combine ADX with other indicators?
What does it mean when ADX is falling?
Can ADX be used for crypto trading?
What is the difference between ADX and RSI?
🌍 Our recommended brokers
Some links on this page may earn us a commission — at no extra cost to you.
Reader Reviews
Used a 14-period ADX filter on my breakout strategy for three months. Before adding it, my win rate on EUR/USD 1H was 48%. After filtering out all signals below ADX 25, it jumped to 61%. The trade count dropped from roughly 30 setups a month to 14, but the remaining trades averaged +7.3% monthly return at 1.5% risk per trade. The section explaining why a falling ADX is not a reversal signal is exactly what I needed - I had been closing positions too early every time ADX peaked and started declining. Reading that it just means momentum is easing, not reversing, stopped me from leaving money on the table.
The ADX scale table at the top of this article saved me from a lot of confusion. I had been treating any reading above 25 as a strong buy signal, without realizing it measures trend strength in either direction. Once I started combining ADX with the EMA direction filter explained here, my false long entries dropped significantly.
Solid breakdown of the DI crossover method. I ran a backtest on BTC 4H from 2022 to 2025 applying the ADX filter at the 22 threshold mentioned in the crypto section. The edge over unfiltered DI crossovers was real: about 14 percentage points better on win rate and a sharper equity curve. My average monthly return over the test period was around 6.8% at 1% risk. Would have appreciated more on the interaction between ATR stop sizing and ADX reading level, but the internal links cover that.
I tested the ADX plus Supertrend combination on gold daily data after reading the Sharpe 1.7 example in this article. My own walk-forward test from January 2023 to March 2025 came out at a Sharpe of 1.61 at 1.2% risk per trade, which I consider confirmed enough to apply live. The key insight that changed my approach was using ADX as a gate rather than a timing signal. I had tried using DI crossovers alone before and gave up after too many whipsaws in choppy gold markets. The ADX filter cut those out cleanly. Average monthly return on the backtest was 8.1% with no month worse than minus 2.4%.
The period settings table is useful. I switched from the default 14 to period 10 on my 1H EUR/USD system based on the guidance here. The responsiveness improvement was noticeable and the additional false signals were not as bad as I expected. Monthly performance over the next two months averaged 7.1% at 0.8% risk per setup. The one thing I would add is a note about ADX behavior during major news releases, where it can spike briefly above 25 on very thin markets and then collapse. Still, the article covers the core concepts clearly.
Two years of trading trend systems and I had never understood why my strategies worked in some months and failed in others. This article connected the dots: the losing months were all low-ADX range-bound periods. Filtering below 20 and only taking setups in trending conditions immediately made my results more consistent. Monthly return since applying this: averaging 6.5% over four months.
The practical worked example on EUR/USD 4H is exactly how I learn best. I replicated it on GBP/USD daily and the sequence of steps - skipping the low-ADX entry, waiting for ADX to cross 22 with a rising slope, entering on the next close - produced consistent results over 2024 data. I added a trailing stop rule when ADX peaked above 35 and that improved the risk-reward on the winning trades. Finished testing at +7.8% monthly average over the 12-month sample.
The section on common mistakes fixed a specific problem I had with my Pine Script alerts. I was triggering alerts based on ADX crossing 30, which meant I was always entering trends that were already well established. After reading the guidance about the 20-25 zone being where high-quality entries form, I moved my threshold down to rising ADX above 22 with a DI crossover confirmation. The next three months on my EUR/USD daily strategy averaged 8.4% monthly at 1% risk, compared to 5.1% on the same strategy before the adjustment. The walk-forward testing advice for period validation is also something I will use going forward.
