Signals
CCI — Commodity Channel Index
Gauge how far price has stretched away from its rolling average.
What it is
Commodity Channel Index measures how far price has moved away from its rolling typical-price average. Extreme positive or negative readings often mark stretched conditions.
When to use it
- Finding overextended moves that may snap back toward trend.
- Ranking symbols by momentum stretch instead of raw price change alone.
- Adding a standardized oscillator to breakout or pullback dashboards.
The maths
TP = (high + low + close) / 3, CCI(N) = (TP - SMA(TP, N)) / (0.015 × mean_deviation(TP, N))
What it tells you
Values above +100 indicate overbought conditions, while values below -100 indicate oversold conditions. It was originally used for cyclical turns in commodities but is now widely applied to liquid markets of all kinds.
REST example
python
import os
import requests
response = requests.get(
'https://api.financedata.com/v1/signals/CCI/NVDA',
params={'start_date': '2025-01-01', 'end_date': '2025-04-30', 'period': 20},
headers={'X-API-Key': os.environ['FDA_KEY']},
timeout=30,
)
response.raise_for_status()
print(response.json())MCP example
Tool call body
{
"name": "run_signals",
"arguments": {
"symbols": ["NVDA"],
"signal_names": ["CCI"],
"start_date": "2025-01-01",
"end_date": "2025-04-30",
"signal_parameters": {
"CCI": { "period": 20 }
}
}
}CCI works well in a batch with trend filters when you want the agent to identify stretched pullbacks versus true regime breakdowns.
Agent prompt that triggers it
Run a 20-day CCI for NVDA and summarize whether the latest reading looks stretched enough to watch for a reversion move.