I set out to narrow down the ideal CCI overbought & oversold zones and SMA period. This is not a guarantee of what will work. But, if you are a trader that wants to implement this strategy, hopefully, this will give you an idea of where to start and help you avoid some costly trial and error lessons.
The approach for finding the best CCI overbought & oversold zones
As I always have, I used models across several different types of assets. Those investments are as follows, along with the individual assets I looked at.
- Apple Inc. (AAPL)
- Amazon.com, Inc. (AMZN)
- Safeguard Scientifics, Inc. (SFE)
- ING Groep N.V. (ING)
- 1-800-FLOWERS.COM, Inc. (FLWS)
- Napco Security Technologies, Inc. (NSSC)
- Crude Oil
- Live cattle
- Bitcoin USD (BTCUSD)
- Ripple USD (XRPUSD)
- ZCash USD (ZECUSD)
The dates used in the model for each asset were randomized. But all contained 600 trading days to allow for a longer SMA period. The exception being ZCash, which hasn’t been in existence long enough for 600 days of trading history.
Each asset was approached using the same methodology. First, I would keep the SMA period at 20 and then look at various upper/lower limits. Those upper/lower limits were:
Next, I would put the upper/lower limits at ±100 and look at the results from various SMA periods. Those SMA periods were:
How was performance judged?
In the past, I would have judged the efficacy of my CCI settings by the highest Net Annualized Return.
This time around, I reconsidered that. I thought more about the psychology of trading. I also wanted to steer towards settings that (seemed to) provide the least likelihood of ruin. Yes, we all want to make the most money possible. But if we crash and burn before a payoff, then the “best” strategy in the world is useless.
My focus was on maximizing the profitable trades both in terms of amount and quantity. Of course, the opposite was the focus for unprofitable trades. Admittedly, there’s room for improvement with this scoring system. But, here’s what I was able to come up with as a first pass:
The Max Gross Profit from all trades was compared to the absolute value of the Min Gross Profit. A ratio was calculated.
Next, an Average Gain:Loss ratio was calculated. This average is simply the Gains (Losses) ÷ Profitable (Unprofitable) Trades.
Both ratios were then multiplied by each other to get a Product of Ratios. That amount was multiplied by the difference between Net Annualized Returns for the strategy (Long-only or long & short) and the buy & hold strategy.
So, any difference in Net Annualized Returns was amplified if the Profitable trades were larger and more frequent than the Unprofitable trades.
Again, not a perfect scoring system, but I think it served its purpose, more or less.
Here are the results of the models:
Results for stocks
Here is a previous post I did on backtesting stocks with the CCI indicator. The strategy was different (not overbought/oversold), but the foundation of the model was, more or less, the same.
Note that it was assumed that stocks were purchased with cash. No margin. Short sales were assumed to have a 50% initial margin.
Amazon and Apple behaved much differently than the other stocks I tested. Amazon was on a tear during the model period. The trading strategy really had no hope of beating a simple buy & hold strategy.
Among the other stocks, I saw the most promise in upper/lower limits of greater than 100.
Additionally, SMA periods of 50 or greater seemed, to me, to show the most promise.
Stocks conclusion: When using an overbought/oversold CCI indicator strategy for stocks, I would suggest upper/lower limits of ±200 and an SMA period of 100. I would also suggest trading long-only, i.e. only buying when the indicator shows oversold.
Results for futures
I’ve also written about how my futures models are built before. Of course, some liberties are taken because futures are contracts and don’t last for years – as my models do. Additionally, it is assumed that positions are entered with only 30% of the cash balance to leave some available in the event of margin calls.
For futures, even higher upper/lower limits seemed to be ideal (±200 or greater).
As far as the SMA period goes, something more moderate, though not as low as 20 or 14 seemed to provide the best results.
Futures conclusion: When using an overbought/oversold CCI indicator for futures, I would suggest an upper/lower limit of ±250 and an SMA period of 50. Trading long and short didn’t seem to negatively affect performance. Though, if one wanted to be extra conservative, they might stick with a long-only strategy.
Results for Forex
As you might expect, I’ve done a previous post on Forex too. This post covers the fundamentals of how the model was created. Forex is unique in it that it has to work against (typically) the effects of rollover interest.
With the other assets, I could kind of see a trend among the different investments. Not so with Forex. The only investment that showed any promise at any upper/lower limit was NZDUSD at ±200 and ±250.
The same went for testing different SMA period. Nothing consistent and nothing inspiring.
Forex conclusion: Don’t use the overbought/oversold CCI indicator when trading Forex. It just doesn’t seem to provide beneficial signals.
Results for Crypto
Yep, I’ve written about Crypto before too. Things have changed since then, though. My current Crypto models are based on trading with Bitmex.
Getting into the nitty-gritty on these models is beyond the scope of this post. But, here’s a quick rundown:
Like my futures models, it is assumed that 30% of the cash balance will be used to enter positions. Though Bitmex will allow you to trade up to 100x leverage, my models stick with a more “conservative” 20x. Finally, the commission for each trade is assumed to be .08% of the gross trade amount.
In contrast to all of the other assets, tighter upper/lower limits seemed to be more beneficial with cryptocurrencies. ±50 and below seemed to provide the best returns.
Furthermore, shorter SMA periods also seemed preferable. Though SMA periods of 50 or more scored well sometimes, it was 20 and below that seemed to provide the most promise.
Crypto conclusion: If you’re using an overbought/oversold CCI indicator to trade crypto, I would suggest an upper/lower limit of ±25 and an SMA period of 20. Plan to make a lot of trades! Also, personally, I would stick with long-only trading.
CCI indicator settings
I would use CCI overbought and oversold zones that were very high (±200) if you planning to trade stocks or futures. A longer-term SMA or 50-100 should be better too.
Stay away from the overbought/oversold CCI indicator if you are trading Forex.
If you are trading cryptocurrencies with this indicator, get ready to trade and use upper/lower limits in the ±25 range with an SMA period of 20.
Finally, only trade long, to be on the safe side. That is, unless, you are trading futures, in which case, you can probably safely enter short positions.
What would have been a better way to score the results of the models?
Are my models missing anything in terms of finding the best CCI overbought & oversold zones?
Do you have any other questions about the makeup of these models?