Best ADX Trading Strategy (Average Directional Movement Index Indicator) Backtest, Setting, Rules and Example)
Last Updated on May 19, 2023
Is it possible to use the ADX indicator (Average Directional Movement Index) to find a profitable ADX trading strategy? This article looks at the ADX indicator where we make some historical backtest to evaluate and analyze. The adx indicator was developed by Welles Wilder and released in his book in 1978 called New Concepts In Technical Trading Systems. Mr. Wilder was productive, and in the same book, he published perhaps the most used indicator of them all, the relative strength index (RSI), in addition to the average true range (ATR), and parabolic SAR. The book was written before the personal computer came about, but all the indicators are widely used to this very day.
There are many ways to use the ADX in trading strategies. Our research and backtests indicate the ADX indicator is somewhat useful on its own but adds great value used alongside other indicators when you build trading strategies. In this article, we look at how the Average Directional Movement performs alongside other indicators, and we test some ADX trading strategies.
If you find this article useful, you might want to have a look at our landing pages for a lot of other trading strategies and edges:
- Free trading strategies
- Trading Edges (paid subscription)
What is the ADX indicator?
Mr. Wilder aimed to make a formula that measures the trend and the strength of the trend. He came up with the ADX indicator, an abbreviation for Average Directional Movement Index but is known as the ADX indicator.
The aim of the ADX indicator is to measure the underlying trend of the instrument. Unfortunately, Wilder’s book is out of print, but we are unsure if Wilder made the indicator a stand-alone indicator or used it together with other indicators. As you will see later in the article, we prefer to use it as a supplement to other indicators.
We must keep in mind that Wilder was a commodity trader, and the indicator was meant for swing trading in commodity futures, but it seems to work in more or less any instrument.
The ADX indicator involves many mathematical calculations and is, of course, very cumbersome to do by hand. Luckily we have computers, and most trading platforms have ADX as a standard indicator, which you can drop on the chart.
The indicator consists of three components:
- The Plus Direction Indicator (DI+)
- The Minus Direction Indicator (DI-)
- The ADX measures the strength of the trend based on the two above
The Plus and Minus Direction Indicators are referred to as the Directional Movement Indicators (DM). Please be aware that the indicator doesn’t indicate the direction of the trend, only the trend’s strength.
When the DI+ is rising, it means the uptrend gains momentum, and vice versa for the DI-. The DM is the absolute difference between the two readings and thus doesn’t say anything about the trend’s direction.
What does the ADX indicate?
By combining these three indicators above, Mr. Wilder both measures the direction of the trend and the trend’s strength (or the lack of a trend).
A high reading indicates a trending market, and a low reading indicates a non-trending market. The ADX was thus originally made as a trend indicator.
As with all indicators, it’s a lagging indicator. This means an uptrend or downtrend is confirmed when it’s already established. The ADX operates in a range from 0 to 100.
The shorter the time frame, the more volatile the ADX. If you use time frames longer than ten days, you will notice the ADX rarely goes above 50, more or less in any market. What does this mean? Most markets are not trending.
How is the ADX calculated?
We will not dig deeper into the calculations because of all the calculations involved, and we recommend you Google the term.
What are the best settings for the ADX indicator?
Lets’s first start with a visual view of the ADX indicator:
When the red line (DI-) is above the green line (DI+), the trend is bearish (down). Opposite, when the green line (DI+) is above the red line (DI-) we can say the indications point toward a bullish trend.
As we can see, the bigger the difference between the DMs, the higher the readings on the ADX (the blue line). However, notice that the ADX starts turning down after the DMs have started contracting. Obviously, it’s a lagging indicator as it’s just a derivative of the price action in the chart.
The chart above is the ETF SPY, which tracks the S&P 500. Notice how the ADX rises during the Covid-19 debacle in March 2020. It reaches its climax on the bottom and then gradually goes down as SPY retreats from the lows. If you were a trend trader, you would be taken to the cleaners. The market is trending….until it’s not trending anymore.
The chart above shows a 15-day ADX. The ADX is rarely above 50, and thus we can conclude that the S&P 500 doesn’t trend much. If we use a 50-day ADX, the highest reading since 1993 is just under 30.
What about Gold? As a commodity, it should trend more? Since the year 2000, gold has never seen a reading above 25 for a 50-day ADX. To see readings above 80, we need to go down to a 5-day ADX.
Mr. Wilder established readings under 15 as non-trending and above 20 as trending.
Is the ADX a good indicator? Does the ADX indicator really work? Let’s backtest ADX with some trading strategies
As always, make sure you don’t base your decisions on anything you read on the internet or in a trading book unless it’s backtested.
Obviously, you can build and backtest an ADX trading strategy in a zillion ways. Only your own imagination limits the possibilities.
Let’s test some possible strategies based ONLY on the ADX formula:
DI+ and DI- crossover strategy
Let’s start with a crossover strategy based on the positive and negative directional indicators:
- If the DI+ crosses over the DI-, go long.
- If the DI+ crosses below DI-, exit the position.
The code in Amibroker for this ADX strategy reads like this for a ten-day ADX:
Buy= Cross(PDI(10),MDI(10)) ; //PDI is the DM+ and MDI is the DI-
The equity curve ends up like this on the S&P 500 (no commissions and slippage):
The average trade is 0.42% and the CAGR is 5.4% and the strategy is invested 55% of the time. The profit factor is 1.71.
Does the ADX strategy improve by using other time frames? No, it turns out that 10 days is one of the best time frames for the S&P 500.
How does the crossover perform on futures and other ETFs? To our surprise, it works the best on the S&P 500. Even on commodities, we fail to produce better numbers than in the S&P 500.
ADX breakout strategy
Let’s test an ADX breakout strategy of the ADX readings:
- ADX ends the day at an n-bar high
- DI+ is higher than DI-
- We sell when the DI+ ends below DI-
In other words, we optimize to find the best numbers.
The optimization indicates the best results on the S&P 500 is 35 days for the DMs (DI) and 15 days for the ADX high/breakout. In general, high numbers on both optimizations give the best results.
If you want the Amibroker code for the above optimization, please have a look at this link:
The equity curve looks like this for 35 and 15 days on the S&P 500:
The drawdown is small, 13.76%, compared to 55% for the buy and hold, but overall the CAGR is only 3.03% compared to 9.9% for buy and hold. Compounded the difference is enormous, of course.
Is it any better in other markets? No, the strategy performs best on the S&P 500 (again).
Which indicator works best with ADX?
Based on the two simple tests above it seems the ADX doesn’t do us much help on a stand-alone basis. We need more than a simple ADX strategy. The results are good, but not nearly good enough to be used on its own.
Can the ADX be of any use combined with other variables or indicators? Is it possible to use the ADX as a filter to enhance an existing trading strategy by removing a lot of unwanted and losing trades?
Perhaps surprisingly, the ADX improves many trading strategies. We write surprisingly because very few indicators really work.
Let’s test the following strategy (we write “unknown” because we don’t want to reveal the strategy):
Buy= ADX + “unknown indicator” ;
The equity chart below was made with one mean-revertive indicator (not the ADX) used on the S&P 500 (SPY):
The CAGR is 9% with an exposure in the market of 24%. The profit factor is 2.15.
The result is good, but the long time frame hides a pretty erratic curve. Can we improve the strategy?
Let’s add an ADX filter to the indicator above.
What are we looking for? Are we looking for a high ADX reading or a low one? If we look at the first graph of this article, we observe that the ADX seems to oscillate up and down. This means trends are hard to find. Thus, we add the criteria that ADX for n-days must be higher than x. We sell when today’s close is higher than yesterday’s high.
This is the code in Amibroker (we write “unknown” because we don’t want to reveal the strategy):
Buy= “Unknown indicator” AND ADX(ADXdays)>ADXlimit;
This is an optimization, and the results indicate that the best results are by using a short number of days (5-10 days) and values around 30-40 for the ADX limit.
This results in an equity curve like this in the S&P 500 (SPY):
The CAGR is 7.3% while the time spent in the market drops to 7%. However, the profit factor increases to 2.6%.
This last strategy works even better on Nasdaq (QQQ):
The CAGR is 12.5% while the time spent in the market is 8%.
Overall profits decrease due to fewer trades and subsequently less time spent in the market. But the average gain per trade goes up from 0.54% to 0.73% and the maximum drawdown decreases a little.
Is our ADX strategy tradeable? That’s something we will let the reader decide!
If you want to have the code for the strategy (including Amibroker and Tradestation code plus “plain English”), you can order it via this link (ADX + second indicator Strategy no. 5):
When you have paid, please press the link below to access the code (PDF file):
Download ADX + second indicator strategy no.5 by clicking here (you need to pay for access)
Alternatively, you can subscribe to our monthly Trading Edges where we send out ideas like this monthly for a lower fee per edge. The edge above will be presented as an edge in a few months. If you’d like to receive similar ideas, please subscribe to our Trading Edges:
Amibroker and ADX
All testing in this article is done by using Amibroker:
Can the strategy be improved?
We are not oracles, and we are pretty sure there are traders out there who can improve the strategy. Do you have any ideas on how to improve it?
If so, please comment below or drop us an e-mail.
Conclusion: Does the ADX indicator work? What did the backtest say?
The ADX indicator performs reasonably well on its own but much better when used with another indicator.
In this article, we have explored just a tiny fraction of the possibilities with the ADX indicator. It’s a versatile indicator, and as shown in this article, could also be used as a mean-reverting tool, not as a trend-tool as it was originally made to be.
As always, we recommend you do proper backtesting yourself to find profitable ADX strategies.
In the Amibroker code mentioned here for ADX, it mentions “Sell -unknown”.
What does this refer to?
I have updated the article. We wrote this because we don’t want to reveal for free what we did……