ADX indicator: settings and signals
ADX measures the strength of a directional move regardless of its side: the indicator rises equally in a rally and in a decline.
What the indicator looks like on a real chart
Data: EUR/USD, daily bars, 2025-06-16 — 2026-07-20. The indicator is computed over 400 bars; the chart shows the last 180. Quote source: Binance Spot REST API (api.binance.com/api/v3/klines).
| Regime | Score |
|---|---|
| Trending market | 64 |
| Range | 45 |
| High volatility | 48 |
| Low volatility | 40 |
What the indicator actually measures
The calculation proceeds in two stages. First the directional movements are computed: how much the current high is above the previous one and how much the current low is below the previous one. These quantities are normalized by the true range and yield +DI and −DI — a measure of buyer and seller pressure.
Then the relative difference between +DI and −DI is taken and smoothed. The key detail: the formula uses the absolute value of the difference, so the sign of the direction is lost. ADX answers only the question of how much one side outweighs the other, not which side that is.
Hence the standard pairing: ADX determines whether a trend exists at all, and the relative position of +DI and −DI gives its direction. A value below 20–25 is taken as a sign of no trend, and this is the most practical use of the indicator: it tells you when to switch trend strategies off.
Formula
DX equals the absolute value of the difference between +DI and −DI divided by their sum. The absolute value removes the information about the side of the move — which is exactly why ADX is non-directional. The final ADX is a smoothed DX, i.e. double smoothing.
Standard settings
| Parameter | Value |
|---|---|
| Standard period | 14 |
| Trend-present threshold | > 25 |
| Range threshold | < 20 |
Period 14 comes from Wilder. The threshold of 25 for the "presence of a trend" is an empirical convention, not a constant: on different instruments and timeframes the boundary shifts, and it is worth calibrating against the historical distribution of the given instrument's values.
Implementation code (MQL5)
double adx = iADX(_Symbol, PERIOD_D1, 14);bool trendPresent = adx > 25;if(trendPresent && trendUp){trade.Buy(lots, _Symbol, Ask, sl, tp);}
When the indicator stops working
- Double smoothing gives noticeable lag: ADX confirms a trend when a significant part of it is already over.
- It does not show direction, so on its own it is unusable for deciding the side of a trade.
- A high value can persist even after a trend has actually ended, until the smoothing works through it.
Common mistakes in use
- Reading a rise in ADX as a buy signal. The indicator rises when a decline strengthens too.
- Applying the threshold of 25 mechanically to all instruments without checking how the values are distributed on that particular asset.
- Expecting a reversal when ADX is high. A high value speaks to the strength of the move, not to its exhaustion.
- Building an entry only on the crossover of +DI and −DI without regard to the ADX level — in a weak market these lines cross constantly.
Who needs this and why
A regime-selection tool, not an entry tool. Useful to algorithmic traders who need to programmatically switch trend strategies off in a range and on when a directional move appears.
Frequently asked questions
What ADX value should I treat as a sign of a trend?
The commonly accepted reference is 25; below 20 is usually read as the absence of a trend. But these numbers are worth checking on the specific instrument: assets with a different volatility nature have different typical ADX levels, and applying the threshold blindly cuts off part of the workable situations.
Why does ADX rise when price falls?
That is by design. The formula uses the absolute value of the difference between the directional indicators, so the sign is lost. ADX measures the strength of the move, while its side is shown by +DI and −DI: if −DI is above +DI, the move is directed downward.
Can I enter a trade on ADX alone?
No, because it contains no information about direction. The minimal workable construction is ADX as a trend-presence filter plus any directional tool to determine the side.