Pine Script Bölüm 3: İndikatör Oluşturma, plot() ve Görsel Analiz Sanatı

🏷️Finans
⏱️18 dk okuma
📅2025-11-29

Pine Script Bölüm 3: İndikatör Oluşturma, plot() ve Görsel Analiz Sanatı

Pine Script’in en güçlü yanı, kendi indikatörlerini profesyonel bir analist gibi tasarlayabilmektir. Bu bölümde indikatör geliştirme sürecini detaylarıyla ele alıyoruz. Sadece hesaplama yapmak değil, aynı zamanda bu hesaplamaları estetik, okunabilir ve işlevsel bir şekilde grafiğe yansıtmak Pine Script’in gerçek gücünü ortaya çıkarır.

Bu bölümde öğreneceklerin:

  • Pine Script’te indikatör oluşturma temelleri
  • plot(), plotshape(), plotchar(), barcolor(), bgcolor() gibi fonksiyonlar
  • overlay kavramı
  • Kendi hareketli ortalamanı yazma
  • Renk, opaklık, çizgi tipi ayarları
  • Kullanıcı ayarları (input) ile dinamik indikatör
  • Fiyat altında ayrı panel açma
  • Çoklu plot kullanımı
  • Profesyonel gösterge tasarım ilkeleri

Bu bölüm, TradingView üzerinde kendi “markanıza özel” indikatör üretmenizi sağlayacak seviyeye getirir.


1. İndikatör Oluşturmanın Temelleri

Pine Script’te bir indikatör oluşturmak için indicator() fonksiyonu kullanılır.

Örnek:

//@version=5
indicator("Benim İlk İndikatörüm", overlay=true)
plot(close)

Bu kod:

  • Grafiğin üzerine (overlay=true)
  • Kapanış fiyatını basit çizgi olarak çizer

overlay=false yapsaydık, gösterge fiyatın altında ayrı bir panelde görünecekti.


2. plot() Fonksiyonunun Detayları

plot() Pine Script’in en temel çizim fonksiyonudur.

Kapsamlı kullanım örneği:

plot(
    series = close,
    color = color.new(color.blue, 0),
    linewidth = 2,
    title = "Fiyat Çizgisi",
    style = plot.style_line
)

Kritik parametreler:

  • series: çizilecek veri
  • color: çizgi rengi (color.new ile opaklık eklenebilir)
  • linewidth: çizgi kalınlığı
  • style: line, histogram, area, columns, circles

3. plotshape(): Sinyalleri Grafik Üzerine İşaretleme

Sinyal noktalarını göstermek için kullanılır.

Örnek al-sat sinyali:

longSignal = ta.crossover(ta.sma(close, 20), ta.sma(close, 50))
shortSignal = ta.crossunder(ta.sma(close, 20), ta.sma(close, 50))

plotshape(longSignal, title="Long", style=shape.labelup, color=color.green, location=location.belowbar)
plotshape(shortSignal, title="Short", style=shape.labeldown, color=color.red, location=location.abovebar)

4. plotchar(): Karakter Bazlı İşaretleme

Bar üzerine karakter koymak için kullanılır.

plotchar(longSignal, char="▲", location=location.belowbar, color=color.green)
plotchar(shortSignal, char="▼", location=location.abovebar, color=color.red)

5. barcolor() ve bgcolor()

Grafiği tamamen kişiselleştirir.

barcolor():

Mum renklerini değiştirir.

barcolor(close > open ? color.green : color.red)

bgcolor():

Panel arka planını renklendirmek için idealdir.

bgcolor(color.new(color.yellow, 85))

6. overlay Kavramı

overlay=true: grafik üzerine
overlay=false: ayrı panel

Örneğin RSI:

indicator("RSI", overlay=false)

Hareketli ortalama:

indicator("MA", overlay=true)

7. Kullanıcı Ayarları (input)

Kullanıcıların indikatör parametrelerini değiştirmesine izin verir.

length = input.int(14, "Periyot")
src = input.source(close, "Fiyat Kaynağı")
ma = ta.sma(src, length)
plot(ma)

Bu sayede indikatör her kullanıcı için özelleştirilebilir.


8. Profesyonel Bir İndikatör Örneği

Aşağıdaki örnek profesyonel bir hareketli ortalama göstergesidir:

//@version=5
indicator("Gelişmiş MA", overlay=true)

length = input.int(20, "Periyot")
src = input.source(close, "Kaynak")
ma = ta.sma(src, length)

plot(ma, color=color.blue, linewidth=2)
plot(src, color=color.yellow, linewidth=1)
barcolor(close > ma ? color.green : color.red)

Bu gösterge:

  • MA ile fiyat ilişkisini renklendirir
  • Fiyat grafiğini düzenler
  • Hareketli ortalamayı belirgin gösterir

9. Çoklu plot Kullanımı

Farklı serileri aynı indikatörde gösterebilirsiniz.

Örnek: Üçlü EMA sistemi

ema1 = ta.ema(close, 20)
ema2 = ta.ema(close, 50)
ema3 = ta.ema(close, 100)

plot(ema1, color=color.green)
plot(ema2, color=color.orange)
plot(ema3, color=color.red)

10. Ayrı Panelde İndikatör Oluşturma

Örneğin bir momentum osilatörü:

indicator("Momentum", overlay=false)
mom = close - close[10]
plot(mom, color=color.blue)

11. TradingView Editöründe Test Et

Kodu test etmek için Pine Script editörünü aç:
https://sancoqhub.com/go/tradingview


12. Premium Neden Önemli?

Büyük indikatör setleriyle çalışırken daha fazla grafik, daha fazla layout ve daha fazla veri avantaj sağlar:
https://sancoqhub.com/go/tradingview


13. Sonuç

Bu bölümde indikatör tasarımı, plot fonksiyonları ve görsel düzenlemelerin temellerini öğrendin.
Artık kendi göstergeni profesyonel standartlarda tasarlayabilecek seviyedesin.

Bir sonraki bölümde: Strateji Yazımı ve Strategy Tester Derinlemesine konusuna geçiyoruz.