OPEN-SOURCE SCRIPT

TURHAN Kapsamlı İndikatör (AL/SAT Sinyalleri)

//version=5
indicator("Kapsamlı İndikatör (AL/SAT Sinyalleri)", overlay=true)

// Hareketli Ortalama (MA)
maLength = input.int(20, title="MA Süresi")
ma = ta.sma(close, maLength)

// Üstel Hareketli Ortalama (EMA)
emaLength = input.int(20, title="EMA Süresi")
ema = ta.ema(close, emaLength)

// MACD
macdFast = input.int(12, title="MACD Hızlı MA")
macdSlow = input.int(26, title="MACD Yavaş MA")
macdSignalLength = input.int(9, title="MACD Sinyal Süresi")
[macdLine, signalLine, _] = ta.macd(close, macdFast, macdSlow, macdSignalLength)

// Bollinger Bantları
bbLength = input.int(20, title="Bollinger Bant Süresi")
bbMult = input.float(2.0, title="Bant Genişlik Çarpanı")
basis = ta.sma(close, bbLength)
bbUpper = basis + bbMult * ta.stdev(close, bbLength)
bbLower = basis - bbMult * ta.stdev(close, bbLength)

// RSI
rsiLength = input.int(14, title="RSI Süresi")
rsiOverbought = input.int(70, title="Aşırı Alım Seviyesi")
rsiOversold = input.int(30, title="Aşırı Satım Seviyesi")
rsi = ta.rsi(close, rsiLength)

// Stokastik Osilatör
stochLength = input.int(14, title="Stokastik Süresi")
k = ta.sma(ta.stoch(close, high, low, stochLength), 3)
d = ta.sma(k, 3)

// Ichimoku Bulutu
conversionLine = (ta.highest(high, 9) + ta.lowest(low, 9)) / 2
baseLine = (ta.highest(high, 26) + ta.lowest(low, 26)) / 2
spanA = (conversionLine + baseLine) / 2
spanB = (ta.highest(high, 52) + ta.lowest(low, 52)) / 2

// ATR (Ortalama Gerçek Aralık)
atrLength = input.int(14, title="ATR Süresi")
atr = ta.atr(atrLength)

// ADX
adxLength = input.int(14, title="ADX Süresi")
plusDM = math.max(ta.change(high), 0) > math.max(ta.change(low), 0) ? math.max(ta.change(high), 0) : 0
minusDM = math.max(ta.change(low), 0) > math.max(ta.change(high), 0) ? math.max(ta.change(low), 0) : 0
smPlusDM = ta.rma(plusDM, adxLength)
smMinusDM = ta.rma(minusDM, adxLength)
atrForAdx = ta.rma(ta.tr(true), adxLength)
plusDI = smPlusDM / atrForAdx * 100
minusDI = smMinusDM / atrForAdx * 100
dx = math.abs(plusDI - minusDI) / (plusDI + minusDI) * 100
adx = ta.rma(dx, adxLength)

// Al-Sat Sinyalleri
buySignal = ta.crossover(ma, ema) and rsi < rsiOversold and macdLine > signalLine and adx > 25
sellSignal = ta.crossunder(ma, ema) and rsi > rsiOverbought and macdLine < signalLine and adx > 25

// Grafik Çizimleri
plot(ma, color=color.blue, title="MA")
plot(ema, color=color.red, title="EMA")
hline(rsiOverbought, "Aşırı Alım", color=color.red, linestyle=hline.style_dotted)
hline(rsiOversold, "Aşırı Satım", color=color.green, linestyle=hline.style_dotted)
plot(bbUpper, color=color.purple, title="Bollinger Üst")
plot(bbLower, color=color.purple, title="Bollinger Alt")

// Ichimoku Bulutunu Şeffaf Renkle Göster
bgColor = spanA > spanB ? color.new(color.green, 80) : color.new(color.red, 80)
bgcolor(bgColor, title="Ichimoku Bulut")

// AL ve SAT sinyallerini üçgen olarak göster
plotshape(series=buySignal, title="AL Sinyali", location=location.belowbar, style=shape.triangleup, color=color.green, size=size.large, offset=0)
plotshape(series=sellSignal, title="SAT Sinyali", location=location.abovebar, style=shape.triangledown, color=color.red, size=size.large, offset=0)
Advance/Decline RatioCandlestick analysisChart patterns

Script open-source

Dans le plus pur esprit TradingView, l'auteur de ce script l'a publié en open-source, afin que les traders puissent le comprendre et le vérifier. Bravo à l'auteur! Vous pouvez l'utiliser gratuitement, mais la réutilisation de ce code dans une publication est régie par nos Règles. Vous pouvez le mettre en favori pour l'utiliser sur un graphique.

Vous voulez utiliser ce script sur un graphique ?

Clause de non-responsabilité