Commodity Channel Index (CCI - Commodity Channel Index)
The Commodity Channel Index was first described by Donald Lambert in the October 1980 issue of Commodities (now Futures) magazine. Despite CCI's 11-year history and its presence in almost all futures-oriented software packages, we know of few traders who actually use it. We do not know why, but we suspect that one of the reasons may be the lack of literature on this indicator, as well as Lambert's insistence on binding CCI to the theory of cycles. Despite the references to cycle theory, Lambert's original article is probably still the most accessible explanation of how to use CCI.
Like most technical studies, CCI requires some understanding of its origins in order to be used effectively. The mathematical and statistical concepts behind CCI are a bit difficult to understand when first examined because its formula is more complex than RSI, MACD and the stochastic oscillator, which can be more or less intuitively understood. The CCI formula is partly statistical, which makes it difficult to show the relationship between the price change charts and the resulting indicator charts.
The CCI formula creates a usable number that statistically indicates how far recent prices have moved away from the moving average. If prices have moved far enough, a trend is established and a trading signal is generated. We tend to divide the technical studies into two groups; those which are best used as counter-trend indicators, such as the RSI and the Percent R, and those which are good at following the trend, like the moving averages. The CCI is an indicator which follows the trend.
Read more: Using the MACD indicator in forex trading
An overview of Lambert's basic theories
The CCI formula calculates a simple moving average of the average daily prices [(peak + trough + close)/3] and then calculates the average deviation. The standard deviation is the sum of the differences between the average price of each period and the simple moving average. The average deviation is then multiplied by a constant (Lambert suggests 0.015) and divides the difference between today's average price and the simple moving average. The result is presented as a single number, which can either be positive or negative. The trader can change the number of periods, which are used to calculate the simple moving average. As you might expect, shortening the time span makes the index faster and more responsive to small market movements, while lengthening the time span slows down the index and smooths out market volatility.
On a computer screen, the CCI is usually displayed as an oscillator or histogram, which oscillates in different directions around the zero mark. Since the index measures how far prices have moved away from the moving average, the CCI allows us to measure the strength of a trend. In theory, the higher the value of the CCI, the stronger the trend and the more profitable the trade should be in the direction of the trend.
Lambert originally developed the CCI to find the beginning and end of supposed seasonal cyclical price patterns. He felt the need to have an indicator that would identify where cycles start and end. This seems like a clear contradiction to cyclical theory, because if you know there is a cycle, you must know where it starts and where it ends, otherwise there is no cycle. The obvious need for an indicator like the CCI shows that imaginary cycles must have been completely uncontroversial and unrepeatable.
Lambert made the moving average part of the formula modifiable so that the user could somehow adjust the CCI to the intended cycle length. His research showed that for best results, the moving average used in CCI should be less than one-third the length of the expected cycle. But the test results tables in the article showed that the five-period moving average performed best, regardless of cycle length (another indication of the weakness of Lambert's cycle assumption).
CCI uses a simple moving average instead of an exponential one so that prices of the distant past will be discarded and will not affect the results. Some arbitrary constant of 0.015 used in the CCI formula has been added to scale the index so that 70 to 80 percent of the values fall into a channel between +100 percent and -100 percent. Lambert's premise was that fluctuations between channel boundaries were considered random and had no trading value. He suggested going long only when the CCI was above +100. A significant drop below +100 is considered a signal to exit a long position. The rules for a short position are the same: sell below -100, buy back above -100.
As we mentioned earlier, Lambert did research which indicated that the CCI period length should be set to less than one third of the cycle length. He tested a number of different period lengths, ending with 20 as the standard number, but suggested that this number should be adjusted for each market individually. (We do not dispute that the period length should be set in such a way as to satisfy the historical data.) Twenty is the default value for CCI by most programs.
Read more: Volatility: types, how to track and how to use
Some positive test results
Colby and Meyers in their book "The Encyclopedia of Technical Market Indicators" tested the CCI on weekly prices of the New York Composite using the original trading rules. This procedure seems to be a curve fitting, but their results are interesting. The most profitable time period tested turned out to be very long - 90 weeks. However, anything between 40 and 100 weeks gave good results and could easily be as profitable today as the 90 week period. Our caveats regarding optimisation can be found in chapter three.
Colby and Meyers pointed out one important aspect of the 90-week CCI that should not come as a surprise. CCI on a 90 period almost always misses the early phases of an incipient trend. In today's stock market, skipping the early phases of a trend often means missing out on much of the potential return. Lambert's early research showed that the shorter-term CCI would be a leading or coincident rather than a lagging indicator, and Lambert used a time period of 5 to 20 days. To regulate the time lag produced by the 90 week CCI, Colby and Meyers decided to ignore the +/-100 extremes and use zero line crossings to produce earlier entry and exit signals. They called this indicator the "zero" CCI and found it much more advantageous than the original +/-100 signals. As an aside, note: even though when testing a trading system using the concept of zero CCI on weekly NYSE Composite data, Colby and Meyers got better results than the popular 39- and 40-week moving average systems now defended by many stock market traders, this does not mean anything yet.
Using the CCI as a long-term trend indicator
The monthly CCI can be very effective as an indicator of long-term market trends. Take a look at the following monthly charts with CCI signals with a period of 20 on the zero line instead of the +/-100 mark.
The first chart is for the Japanese Yen. In addition to the sequence of trading signals there are two other noteworthy features of this chart.
First, the faster the rise in the CCI from 0 to 100, the stronger and more decisive the trend it has detected. Second, the faster the fall in the CCI after it reaches 100 usually means that the trend is losing its strength and that profits should be protected by a halt at this point. On the treasuries chart we should note the use of CCI trend lines for early exits.
We recommend trying to use a monthly CCI with a period of 20 for a longer-term directional move, while using a shorter-term indicator to set entry and exit times in the direction of the monthly trend. This strategy should be particularly effective during a rapid rise in the CCI from 0 to 100. After the monthly CCI peaks, it would be wise to consider suspending trading in this market until the CCI starts rising again.
A situation similar to the monthly CCI can be seen on the weekly charts. A quick rise from 0 to 100 should definitely indicate an established trend. Try using the weekly CCI to set trading times in the direction of the monthly charts when the CCI is in a rising period. Exit when the weekly CCI makes a peak or when another indicator warns you that the intermediate-term trend is losing strength. An alternative strategy is to start trading small lots when the zero line is first crossed and then add positions as the CCI accelerates and the trend strengthens. Start closing positions when the CCI stops, indicating that the market is ending the move.
Trading multiple positions based on weekly charts will obviously work best in markets with slower movement and controlled risk, where large long-term positions are preferred.
Read more: What is the New York Stock Exchange (NYSE)
Using the daily CCI
Our research has shown that the 20-day CCI, used on its own, does not work well in most markets. Its main drawback of missing the beginning of strong trends can be a really negative trait in fast and volatile markets. This slowness can be overcome by using the 10-day (or even shorter term) CCI or by entering at zero. But faster methods become extremely vulnerable due to frequent twitching. We can always set the CCI to meet each market, but we are pretty sure it is just tweaking the curve and do not recommend this method.
We recommend combining the CCI with another indicator for daily trading. Because one of the problems with the CCI is its tendency to err in estimating the volatility of trending markets, it seems logical to look to the DMI/ADX as a duplicate trend indicator. If the ADX is rising, then the market is in a trend, and it can begin to trade on the signals CCI. If the ADX is falling, then the market is volatile and should not be traded, at least not with a trend-following indicator such as the CCI. Exit after the CCI creates a peak and moves further towards the zero mark. An alternative exit strategy could be to use stops on the last peaks or troughs after the CCI correction has begun. Our testing has shown the usefulness of each of these basic approaches.
A few observations
Our research has shown that in a general sense CCI is a tool, in many ways similar to ADX, which can help in assessing the overall trendiness of the market. As we pointed out earlier, the faster the CCI rises, the stronger the market is trending. While it is mathematically possible for the CCI to move upwards when the market is not trending, this is unlikely in practice. Remember that the CCI can provide traders with important information even when it does not provide entry signals. If the market stays inside the +/-100 range most of the time, it shows no trend, so you should avoid this market or use a counter-trend strategy.
We have found that the best markets to trade are those where the CCI has recently produced spikes multiple times, protruding beyond 100 in one direction. We have also observed that first trades against a set CCI trend are usually very unprofitable. If the market has been trending and showing a series of CCI moves on one side of the 100 range as we have just described, do not reverse your trading direction on the first CCI move that breaks the 100 mark in the opposite direction. A short pass to the opposite side of the range is probably an opportunity to add a new position, not a demonstration of a trend reversal.
Avoid jerking
We have also seen that our often-recommended technique of waiting for confirmation after a trading signal is an exceptional method of avoiding most of the jitters when using CCI with a faster period. We have found that when CCI generates spikes after the +/-100 level, it is almost always better to wait for signal confirmation before making any moves. When the CCI rises above 100 wait for the market to produce a significantly higher close before buying. We have noticed that much of the 100 level breakout has only turned out to be a one or two day event, especially on the shorter term. The entry confirmation technique avoided most of the twitching and at the same time caught all the big moves. The confirmation technique also allows us to switch to the faster CCI we need to overcome the lag problem without getting caught in the twitching as one might expect. For example, a 10-day CCI with a confirmation requirement will produce much faster signals and probably produce twitching less often than a 20-day CCI applied in the normal way.