OPEN-SOURCE SCRIPT

5/22 MA Strategy with Dynamic Channel + AL/SAT

//version=5
indicator("5/22 MA Strategy with Dynamic Channel + AL/SAT", overlay=true)

// === Parametreler ===
length = input.int(50, title="Kanal Uzunluğu (Bar Sayısı)")
offset = input.int(2, title="Kanal Genişliği Çarpanı") // ATR ile kanal genişliği

// === Hareketli Ortalamalar (5 ve 22) ===
ma_fast = ta.ema(close, 5) // Hızlı EMA (5)
ma_slow = ta.ema(close, 22) // Yavaş EMA (22)

// === RSI Hesaplama ===
rsi = ta.rsi(close, 14)

// === MACD Hesaplama ===
[macdLine, signalLine, _] = ta.macd(close, 12, 26, 9)

// === ATR (Volatilite için) ===
atr = ta.atr(14)

// === Üst ve Alt Seviyelerin Hesaplanması (Kanal) ===
highest_high = ta.highest(high, length) // Son 'length' barın en yüksek değeri
lowest_low = ta.lowest(low, length) // Son 'length' barın en düşük değeri
middle = (highest_high + lowest_low) / 2
upper_band = highest_high + offset * atr
lower_band = lowest_low - offset * atr

// === Kanal Çizgilerinin Gösterimi ===
plot(highest_high, title="Üst Kanal", color=color.blue, linewidth=1)
plot(lowest_low, title="Alt Kanal", color=color.blue, linewidth=1)
plot(middle, title="Orta Çizgi", color=color.orange, linewidth=1)
plot(upper_band, title="Üst Genişlik", color=color.green, linewidth=1)
plot(lower_band, title="Alt Genişlik", color=color.red, linewidth=1)

// === Al/Sat Sinyalleri (5/22 MA Stratejisi) ===
ma_crossover = ta.crossover(ma_fast, ma_slow) // 5 MA, 22 MA'yı yukarı kesiyor
ma_crossunder = ta.crossunder(ma_fast, ma_slow) // 5 MA, 22 MA'yı aşağı kesiyor

// Al Sinyali: 5/22 MA kesişimi + RSI düşük (momentum onayı) + MACD pozitif kesişim
buy_signal = ma_crossover and rsi < 50 and ta.crossover(macdLine, signalLine)

// Sat Sinyali: 5/22 MA kesişimi + RSI yüksek (momentum onayı) + MACD negatif kesişim
sell_signal = ma_crossunder and rsi > 50 and ta.crossunder(macdLine, signalLine)

// === Grafikte Al/Sat İşaretleme ===
plot(ma_fast, color=color.blue, title="Fast EMA (5)")
plot(ma_slow, color=color.orange, title="Slow EMA (22)")

// === Al ve Sat Yazıları Ekleyin ===
if buy_signal
label.new(bar_index, low, text="AL", style=label.style_label_up, color=color.green, textcolor=color.white, size=size.small)
if sell_signal
label.new(bar_index, high, text="SAT", style=label.style_label_down, color=color.red, textcolor=color.white, size=size.small)

// === Alarm Koşulları ===
alertcondition(buy_signal, title="Buy Signal Alert", message="5/22 MA + RSI + MACD Buy Signal Detected!")
alertcondition(sell_signal, title="Sell Signal Alert", message="5/22 MA + RSI + MACD Sell Signal Detected!")

// === Risk Yönetimi: ATR ile Stop-Loss Seviyeleri ===
long_stop_loss = buy_signal ? close - 1.5 * atr : na // Al pozisyonu için stop-loss
short_stop_loss = sell_signal ? close + 1.5 * atr : na // Sat pozisyonu için stop-loss

// Stop-loss çizgileri
if buy_signal
line.new(x1=bar_index[1], y1=long_stop_loss, x2=bar_index, y2=long_stop_loss, color=color.red, width=1, extend=extend.right, style=line.style_dashed)
if sell_signal
line.new(x1=bar_index[1], y1=short_stop_loss, x2=bar_index, y2=short_stop_loss, color=color.red, width=1, extend=extend.right, style=line.style_dashed)

Bands and ChannelsChart patternsMoving Averages

Skrip open-source

Dengan semangat TradingView yang sesungguhnya, penulis skrip ini telah menerbitkannya sebagai sumber terbuka, sehingga para trader dapat memahami dan memverifikasinya. Hormat untuk penulisnya! Anda dapat menggunakannya secara gratis, namun penggunaan kembali kode ini dalam publikasi diatur oleh Tata Tertib. Anda dapat memfavoritkannya untuk digunakan pada chart

Inggin menggunakan skrip ini pada chart?

Pernyataan Penyangkalan