
रणनीति एक व्यापक व्यापार प्रणाली है जिसमें निष्पक्ष मूल्य अंतराल (एफवीजी) का पता लगाने, चलती औसत प्रवृत्ति निर्णय और गतिशील प्रतिरोध बिंदुओं को शामिल किया गया है। रणनीति एफवीजी के गठन को अलग-अलग समय-सीमाओं में पहचानने के माध्यम से, और एक पलटाव संकेत होने पर व्यापार करने के लिए चलती औसत प्रवृत्ति की दिशा के साथ मिलकर। प्रणाली में गतिशील स्टॉप लॉस और ऐतिहासिक ऊंचाई के आधार पर लाभ लक्ष्य सेट शामिल हैं।
रणनीति के मूल तर्क में निम्नलिखित प्रमुख भाग शामिल हैं:
यह एक समग्र रणनीति है जिसमें कई व्यापारिक अवधारणाओं को मिलाया गया है, जो एफवीजी, रुझान और मूल्य पैटर्न के संयोजन के माध्यम से उच्च संभावना वाले व्यापारिक अवसरों की तलाश करता है। रणनीति का लाभ यह है कि यह प्रणालीगत रूप से मजबूत है, जोखिम को नियंत्रित किया जा सकता है, लेकिन पैरामीटर अनुकूलन और बाजार की स्थिति के लिए अनुकूलता पर ध्यान देने की आवश्यकता है।
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-27 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("SMC FVG Entry Strategy with Retest", overlay=true)
// Parametreler
stopLossPercent = input(2, title="Stop Loss (%)") / 100
lookbackPeriod = input(50, title="Güçlü Direnç İçin Geriye Dönük Süre")
fvgLength = input.timeframe("60", title="FVG Zaman Dilimi") // 1 saatlik zaman dilimi
maPeriod = input(20, title="MA Dönemi") // Trend yönü için MA dönemi
// FVG'leri Hesapla
var float fvgLow = na
var float fvgHigh = na
var bool fvgFilled = false
// Seçilen zaman diliminde FVG'leri kontrol et
if (ta.change(time(fvgLength)))
bull_fvg = low > high[2] and close[1] > high[2]
bear_fvg = high < low[2] and close[1] < low[2]
if (bull_fvg)
fvgLow := low[2]
fvgHigh := high
fvgFilled := true
else if (bear_fvg)
fvgLow := low
fvgHigh := high[2]
fvgFilled := true
// Trend Yönü Kontrolü (MA kullanarak)
ma = ta.sma(close, maPeriod)
trendUp = close > ma
trendDown = close < ma
// Dönüş Mumu Kontrolü
bullishReversal = close > open and close[1] < open[1] and fvgFilled and close > fvgHigh
bearishReversal = close < open and close[1] > open[1] and fvgFilled and close < fvgLow
// İlk güçlü direnç noktası
resistanceLevel = ta.highest(high, lookbackPeriod)
// Giriş Koşulları
if (bullishReversal and trendUp)
entryPrice = close
stopLoss = entryPrice * (1 - stopLossPercent)
takeProfit = resistanceLevel
strategy.entry("Long", strategy.long)
strategy.exit("TP", "Long", limit=takeProfit, stop=stopLoss)
if (bearishReversal and trendDown)
entryPrice = close
stopLoss = entryPrice * (1 + stopLossPercent)
takeProfit = resistanceLevel
strategy.entry("Short", strategy.short)
strategy.exit("TP", "Short", limit=takeProfit, stop=stopLoss)
// FVG'leri Grafik Üzerinde Göster
// if (fvgFilled)
// var box fvgBox = na
// if (na(fvgBox))
// fvgBox := box.new(left=bar_index[1], top=fvgHigh, bottom=fvgLow, right=bar_index, bgcolor=color.new(color.green, 90), border_color=color.green)
// else
// box.set_top(fvgBox, fvgHigh)
// box.set_bottom(fvgBox, fvgLow)
// box.set_left(fvgBox, bar_index[1])
// box.set_right(fvgBox, bar_index)
// Direnç Noktasını Göster
plot(resistanceLevel, color=color.blue, title="Direnç Noktası", linewidth=2)
plot(ma, color=color.red, title="Hareketli Ortalama", linewidth=2)