Background
📊 İndikatör Tasarımı8 dk okuma

CCI (Commodity Channel Index): Formül, Eşik Değerler ve Pine Script Kodu

CCI, fiyatın tipik değerinin hareketli ortalamasından ortalama sapma cinsinden ne kadar uzaklaştığını ölçer. +100/-100 eşikleri, 0,015 sabiti ve doğru periyot seçimini örneklerle anlatıyoruz.

Yazar: ORCA Teknoloji Ekibi
🤖

⚡ TL;DR — Hızlı Özet

CCI = (Tipik Fiyat − SMA) / (0,015 × Ortalama Sapma). Donald Lambert'in orijinal kullanımında CCI +100'ü yukarı keserse trend başlangıcı, −100'ü aşağı keserse düşüş başlangıcı sayılır. Kısa vadede 14, orta vadede 20 periyot yaygındır.

CCI tam olarak neyi ölçer?

Commodity Channel Index (CCI), 1980'de Donald Lambert tarafından emtia döngülerini yakalamak için geliştirildi. Ölçtüğü şey basit: fiyatın "tipik değeri", kendi hareketli ortalamasından kaç birim sapmış? Bu sapmayı ortalama mutlak sapmaya bölerek normalize eder, böylece farklı enstrümanlarda karşılaştırılabilir bir sayı elde edilir.

Formül

CCI dört adımda hesaplanır:

  1. Tipik Fiyat (TP) = (Yüksek + Düşük + Kapanış) / 3
  2. SMA(TP, n) = son n mumun tipik fiyat ortalaması
  3. Ortalama Sapma = son n mumda |TP − SMA| değerlerinin ortalaması
  4. CCI = (TP − SMA) / (0,015 × Ortalama Sapma)

0,015 sabiti, Lambert'in seçtiği bir ölçekleme faktörüdür; amacı değerlerin yaklaşık %70-80'inin −100 ile +100 arasında kalmasını sağlamaktır. Bu yüzden ±100, "normalin dışı" anlamına gelir.

±100 eşiklerini iki farklı okuma

CCI'yi kullanmanın birbiriyle çelişen iki yolu var; hangisini seçtiğin stratejinin karakterini belirler:

Yaklaşım+100 yukarı kesildiğinde−100 aşağı kesildiğinde
Lambert (trend takip)AL — yeni yükseliş trendi başladıSAT — yeni düşüş trendi başladı
Aşırı alım/satım (dönüş)Aşırı alım — SAT'a hazırlanAşırı satım — AL'a hazırlan

Trend takip okuması trendli piyasada, dönüş okuması yatay piyasada çalışır. İkisini aynı anda kullanmak, en sık yapılan hatadır (bkz. aşağı).

Periyot seçimi

  • 14: Gün içi / kısa vadeli, daha çok sinyal, daha çok gürültü.
  • 20: En yaygın varsayılan; günlük grafikte swing işlemler için dengeli.
  • 50+: Yalnızca ana trend yönünü filtrelemek için (ör. "CCI(50) > 0 ise sadece AL sinyallerini dinle").

TradingView için Pine Script v5

//@version=5
indicator("CCI + Eşik Sinyalleri", overlay=false)

length = input.int(20, "Periyot")
src    = input.source(hlc3, "Kaynak")   // hlc3 = tipik fiyat
upper  = input.int(100, "Üst Eşik")
lower  = input.int(-100, "Alt Eşik")

cciVal = ta.cci(src, length)

plot(cciVal, "CCI", color=color.new(color.teal, 0))
hline(upper, "Üst", color=color.gray)
hline(lower, "Alt", color=color.gray)
hline(0, "Sıfır", color=color.new(color.gray, 60))

// Lambert (trend) okuması — mum KAPANDIKTAN sonra
buy  = ta.crossover(cciVal, upper)
sell = ta.crossunder(cciVal, lower)

plotshape(buy,  title="AL",  style=shape.triangleup,   location=location.bottom, color=color.green, size=size.tiny)
plotshape(sell, title="SAT", style=shape.triangledown, location=location.top,    color=color.red,   size=size.tiny)

alertcondition(buy,  "CCI AL",  "CCI +100 yukarı kesildi")
alertcondition(sell, "CCI SAT", "CCI -100 aşağı kesildi")

ta.cci() yerleşik fonksiyonu tam olarak yukarıdaki 4 adımı uygular; elle yazmana gerek yok.

CCI'de en sık 4 hata

  1. İki okumayı karıştırmak: "+100'de aşırı alım diye sattım ama fiyat 3 gün daha yükseldi." Çünkü güçlü trendde CCI haftalarca +100'ün üstünde kalabilir. Trendli enstrümanda dönüş okuması kullanma.
  2. Tek başına kullanmak: CCI yön verir, zamanlama vermez. Bir trend filtresi (ör. 200 EMA) veya hacim teyidi olmadan sinyal sayısı çok yüksek olur.
  3. Mum kapanışını beklememek: Mum içinde CCI ±100'ü kesip mum kapanışında geri dönebilir. Sinyali barstate.isconfirmed ile veya kapanışta değerlendir — yoksa "repaint" yaşarsın.
  4. Uyumsuzluğu (divergence) mekanik sinyal sanmak: Fiyat yeni tepe yaparken CCI daha düşük tepe yapıyorsa bu bir "uyarı"dır, giriş emri değil. Teyit için fiyat yapısı (trend çizgisi kırılımı) bekle.

İndikatörünüzü kod haline getirelim

Bu yazıdaki mantığı kendi stratejinize göre uyarlanmış, repaint etmeyen bir TradingView (Pine Script) veya MetaTrader (MQL5) indikatörüne dönüştürüyoruz; istersen sinyalleri webhook ile borsa hesabına bağlıyoruz. Özel indikatör tasarımı sayfasına bakabilir ya da bize kısaca projenizi anlatabilirsiniz.

ORCA Teknoloji Ekibi

ORCA Teknoloji Ekibi

Teknik Yazarlık ve Araştırma Grubu

Kurumsal yazılım mimarileri, entegrasyonlar ve modern teknolojiler üzerine teknik içerikler ve uygulama rehberleri üreten uzman yazarlık grubu.

WhatsApp ile İletişim