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 de código abierto

Siguiendo fielmente el espíritu de TradingView, el autor de este script lo ha publicado en código abierto, permitiendo que otros traders puedan entenderlo y verificarlo. ¡Olé por el autor! Puede utilizarlo de forma gratuita, pero tenga en cuenta que la reutilización de este código en la publicación se rige por las Normas internas. Puede añadir este script a sus favoritos y usarlo en un gráfico.

¿Quiere utilizar este script en un gráfico?

Exención de responsabilidad