CCI vs MACD
The commodity channel index compares the typical price with its 20-period average and scales that gap by mean deviation. MACD measures the gap between the 12- and 26-period exponential averages of the close. The first peaks when price is most stretched; the second keeps rising until the averages stop pulling apart.
Both indicators are called momentum and both live in a panel under the chart, but they are built to answer different questions. On SPY the difference shows up as timing: the commodity channel index tops out first, and MACD keeps climbing for days afterwards.
What each one is
The commodity channel index gauges stretch. Donald Lambert’s 1980 formula takes the typical price (high, low and close averaged), subtracts its 20-period average and divides by 0.015 times the mean deviation. The commodity channel index covers each step.
MACD measures the gap between two averages of the close. Gerald Appel’s indicator, from the late 1970s, is the 12-period exponential average minus the 26-period one, with a 9-period exponential average of that line as the signal and the difference between them as the histogram. MACD covers the three parts.
Both are open-ended. Neither has a fixed ceiling; the CCI is scaled by deviation and MACD is in the instrument’s price units.
Where they differ
What is being measured. Distance from a short average for the CCI; the spread between a faster and a slower average for MACD. Price can be far from its mean while the two averages are still separating.
How quickly each reacts. The CCI compares today with a 20-session window, so one strong day moves it a lot. MACD’s averages carry weight from many sessions back, so it turns later.
What the scale means. A CCI of 100 has a meaning across instruments, because of the deviation scaling. A MACD value in dollars only means something on the chart it came from.
Where the signals come from. Readings beyond plus or minus 100 for the CCI; zero-line and signal-line crosses for MACD.
How the two read the same stretch
A stretched CCI and a rising MACD were the normal pairing. On the 2,474 SPY sessions since 1994 when the CCI closed above +100, MACD’s line fell on only 197 (7.96%). On the 1,285 sessions below minus 100, MACD’s line rose on just 32 (2.49%).
The histogram noticed the slowing more often. On those same 2,474 high-CCI sessions the histogram fell on 774 (31.29%), against 50.86% of all sessions. When the CCI was below minus 100, the histogram rose on 323 of 1,285 (25.14%).
MACD peaked after the CCI. The CCI went above +100 in 553 separate runs, about 16.89 a year. In 456 of them (82.46%) MACD’s line reached its high later than the CCI’s peak, counting the run plus the 10 sessions after it, and on the same day in 91. Across all 553 runs the median gap was 5 sessions; among the 456 later peaks it was 7.
Which one to use: CCI or MACD?
Use the commodity channel index when the question is how far price has run from its recent mean. It peaks first, and its 100 line carries the same meaning on any chart.
Use MACD when the question is whether a trend is still accelerating. Its line did not fall on most stretched days, which is what a trend that is still building looks like.
Use the MACD histogram, not the line, when you want an early sign of slowing. It fell on almost a third of the high-CCI sessions while the line almost never did.
And when the two seem to disagree, check the timing before calling it a signal. A high CCI with a rising MACD was the ordinary state on SPY, not a warning.
Stretch first, gap later: SPY, August 2026
The stretch. SPY’s CCI went above +100 on 3 August 2026 and peaked at 242.1 the next day, 4 August. MACD’s line that day stood at 2.56.
The gap kept growing. The CCI stayed above +100 through 13 August, below its peak. MACD’s line went on to peak at 8.52 on 14 August, 8 sessions after the CCI’s high, by which time the CCI had dropped back to 93.2.
What each was saying. On 4 August the CCI said price was as stretched as it would get in that run. MACD said the trend’s averages were still separating, and they went on separating for more than a week.
The original data
The sample. Daily SPY history as Yahoo Finance serves it, 29 January 1993 to 2 October 2026. Counting starts on 3 January 1994, by which point the 26-session average and its 9-session signal line have settled.
The formulas. As described by StockCharts and TradingView, read 4 October 2026. The CCI uses 20 periods: the gap between the typical price and its simple average, over 0.015 times the average absolute gap between that simple average and each of the 20 most recent typical prices. MACD = 12-period minus 26-period exponential average of the close (each seeded with a simple average); signal = 9-period exponential average of MACD; histogram = MACD minus signal.
The counts. CCI above +100 on 2,474 sessions (MACD line down 197, histogram down 774); below minus 100 on 1,285 (line up 32, histogram up 323); histogram down on 4,192 sessions overall. Runs above +100: 553; MACD peak later in 456, same day in 91. Every daily value is in the SPY daily CCI and MACD file.
When it fails
The failure is waiting for MACD to confirm a stretched CCI, and acting on a different moment than the one the rule described. The CCI hits an extreme and a trader waits for MACD to agree. MACD keeps rising, as it did on most high-CCI days on SPY, and the trader reads that as a disagreement to watch. By the time MACD’s line turns, a median 5 sessions after the CCI’s peak, the CCI is already off its high, so the trade is taken at a point neither panel was describing. The two panels were never disagreeing; they were answering two questions on two timetables.
The second failure is treating them as two confirmations. They come from the same bars.
A third is quoting a MACD value across instruments. It is in price units.
A fourth is assuming 100 on the CCI is rare. On daily SPY it was crossed often.
And a fifth is reading every histogram dip as a turn. It falls on about half of all sessions.
Related
The commodity channel index covers Lambert’s scaled stretch. MACD covers the line, signal and histogram. And MACD crossover covers how the signal line turns MACD into entries.
Decide which question your rule is asking before you put both panels on the chart. If it is how far price has run, read the CCI; if it is whether the run is still building, read MACD, and expect it to answer later.
— Michael Whitman
This page is educational, not financial advice. Test every idea on your own charts before risking money.