Most ADX tools plot the line and a threshold. The adx channel indicator adds context: a channel built from ADX’s own recent highs and lows. That turns a bare number into a relative reading. An ADX of 22 means one thing when the channel has been running 15 to 20, and something else when it has been running 30 to 40.
This build ships as a compiled .ex4 for MT4 and .ex5 for MT5; the screenshots below come from EURUSD H1.
| Platforms | MT4 (.ex4) + MT5 (.ex5) |
|---|---|
| Chart window | Separate window (levels 25) |
| Plots | 3: ADX, Upper, Lower |
| Alerts | popup, push notification, email, sound |
| Inputs | 9 |
What the Adx Channel Indicator draws on the chart
ADX is the aqua line, Wilder’s trend strength reading in its own pane.
Upper and Lower are the slate grey channel lines, taken from ADX’s own extremes over the channel window.
A reference level sits at 25, the conventional threshold between trend and no trend.
Nothing is drawn on the price chart, and the DI lines are read internally rather than plotted.
- ADX: line, aqua, width 2
- Upper: line, slate gray
- Lower: line, slate gray

How the Adx Channel Indicator calculates its values
The ADX reading
AdxBuf takes iADX with MODE_MAIN over `AdxPeriod` on the close. That is Wilder’s trend strength measure, which rises during a strong move in either direction and falls when the market goes sideways. It carries no direction of its own.
A channel around the reading
Mid takes a running average of ADX over `ChannelPeriod` bars. UpBuf receives mx and LoBuf receives mn, the highest and lowest ADX values across that same window. The channel therefore describes the range ADX has been moving in recently, rather than the range price has been moving in.
Reading the DI lines for the alert
The alert path reads pdi1 and mdi1 from iADX at shift 1, using MODE_PLUSDI and MODE_MINUSDI. Working from bar 1 rather than the forming candle means the message describes a settled reading. Those DI values never reach a plot buffer, so they inform the alert without appearing on screen.
How to read the signals
ADX pressing against the upper channel line means trend strength is unusually high for this stretch.
A narrow channel means ADX has been stable, whatever level it sits at.
The 25 level is the absolute reference and the channel is the relative one. They answer different questions.
ADX rising says the move is strengthening. It never says which way.
Alert channels in this build: popup, push notification, email and sound, one message per closed bar.
Four channels sit beneath `EnableAlerts`: popup, push notification, email and sound, with `SoundFile` naming the clip. Popup ships enabled. The alert reads the DI values at bar 1, a settled bar, and the guard permits one message per closed bar.
Every Adx Channel Indicator input
Core settings
| Setting | What it does | Default |
|---|---|---|
AdxPeriod |
Lookback for the ADX and DI readings, default `14`, Wilder’s original figure. | 14 |
ChannelPeriod |
Bars in the channel around ADX, default `10`. Widen it for a slower channel that reflects a longer stretch. | 10 |
TrendLevel |
The reference threshold, default `25`, the conventional line between trend and no trend. | 25 |
Alert settings
| Setting | What it does | Default |
|---|---|---|
EnableAlerts |
(see inputs panel) | on |
EnablePopup |
(see inputs panel) | on |
EnablePushNotify |
(see inputs panel) | off |
EnableEmail |
(see inputs panel) | off |
EnableSound |
(see inputs panel) | off |
SoundFile |
(see inputs panel) | alert.wav |

Settings that fit your chart
ADX suits instruments that produce sustained moves, which covers the majors, metals and indices. The screenshot note calls for EURUSD H1, where the DI crosses stay readable and ADX moves through meaningful ranges. On very fast charts ADX becomes noisy and the channel tightens around that noise. On H4 and daily both the reading and its channel settle down.
When the Adx Channel Indicator fails
ADX is a smoothed measure of a smoothed measure, so it confirms strength well after a move begins.
The channel is relative by design, which means a high reading against a low channel can still be a weak trend in absolute terms.
Neither the DI lines nor any signal marker appears, so the tool gives you context rather than anything to act on directly.
Copy the compiled Adx Channel Indicator file into your MQL4/Indicators folder, and the MT5 build into MQL5/Indicators, then restart the terminal and drag it onto a chart. The step-by-step guide with screenshots is at how to install MT4 and MT5 indicators.
Download the Adx Channel Indicator for MT4 and MT5
The zip holds the compiled Adx Channel Indicator build for MT4 and MT5, plus a short README. Compiled files only, no source. Enter your email below and the download link arrives in your inbox.
Download this indicator free
Enter your email and the file is yours. You also get the full MT4 and MT5 library.
FAQ
What does the channel measure that the 25 level does not?
Context. `TrendLevel` at `25` is an absolute threshold that means the same thing on every chart. The channel takes ADX’s own highest and lowest values over `ChannelPeriod` bars, so it tells you whether the current reading is high or low FOR THIS STRETCH. A reading of 22 can be either, depending on where the channel sits.
Does ADX tell me which direction to trade?
No, and that is inherent to the measure. Wilder’s ADX rises during a strong move whether price is climbing or falling. Direction comes from the DI lines, which this build reads internally for its alert but never plots. Add MetaTrader’s own Average Directional Movement Index if you want to see them.
Why is ChannelPeriod shorter than AdxPeriod?
Because they measure different things. `AdxPeriod` at `14` smooths the underlying directional movement. `ChannelPeriod` at `10` then looks at how that already-smoothed output has behaved recently. A short window there keeps the channel responsive to the current stretch rather than averaging over a long history.
What does a narrow Upper and Lower channel indicate?
That ADX has been stable across the window, whatever level it holds. A narrow channel at a low level describes a market that has been consistently directionless. A narrow channel at a high level describes a trend that has been steadily strong. The width and the level are separate readings.
Are results guaranteed?
No. Trading involves risk. Results are not guaranteed; past performance is not indicative of future results. Use the Adx Channel Indicator as one input. Always backtest before trading live.
Category: this is part of our Signal and Forecast collection. Then, still, browse more Signal and Forecast for MetaTrader, or explore every MT4 indicator and MT5 indicator on the site.
External references
- Learn more about the underlying method in Keltner channel on Wikipedia.
- For wider market background, see Commodity Channel Index CCI at StockCharts ChartSchool.
