
Strategi ini adalah sistem perdagangan campuran yang menggabungkan beberapa indikator analisis teknis. Ini terutama mengandalkan sistem rata-rata (EMA) untuk menilai tren pasar, sambil menggabungkan level dukungan (SR) sebagai sinyal masuk, dan menggunakan amplitudo fluktuasi nyata (ATR) untuk kontrol risiko. Strategi ini menggunakan pengaturan stop loss yang dinamis, yang dapat menyesuaikan posisi stop loss sesuai dengan volatilitas pasar.
Strategi ini beroperasi berdasarkan komponen inti berikut:
Optimisasi filter sinyal
Optimasi manajemen posisi
Optimalisasi Stop Loss
Strategi ini membangun sistem perdagangan yang utuh dengan menggabungkan beberapa metode analisis teknis yang telah mapan. Keunggulan utamanya adalah kemampuan sistem untuk beradaptasi dan mengendalikan risiko. Dengan terus-menerus mengoptimalkan dan menyempurnakan, strategi ini diharapkan dapat mempertahankan kinerja yang stabil di berbagai lingkungan pasar.
/*backtest
start: 2024-02-18 00:00:00
end: 2025-02-16 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=6
strategy("Multi-Strategy Trader v1 by SUNNY GUHA +91 9836021040 / www.oiesu.com", overlay=true)
// Basic Inputs
supResLookback = input.int(9, "Support/Resistance Lookback")
atrPeriod = input.int(14, "ATR Period")
stopMultiplier = input.float(10.0, "Stop Loss ATR Multiplier")
// Technical Indicators
atr = ta.atr(atrPeriod)
highestHigh = ta.highest(high, supResLookback)
lowestLow = ta.lowest(low, supResLookback)
ema20 = ta.ema(close, 20)
ema50 = ta.ema(close, 50)
// Basic Strategy Rules
isTrending = math.abs(ema20 - ema50) > atr
longSignal = close > highestHigh[1] or (isTrending and ema20 > ema50 and close > ema20)
shortSignal = close < lowestLow[1] or (isTrending and ema20 < ema50 and close < ema20)
// Entry Logic
if longSignal and strategy.position_size <= 0
strategy.entry("Long", strategy.long)
if shortSignal and strategy.position_size >= 0
strategy.entry("Short", strategy.short)
// Stop Loss Logic
longStopPrice = close - (atr * stopMultiplier)
shortStopPrice = close + (atr * stopMultiplier)
// Exit Logic
if strategy.position_size > 0
strategy.exit("Long Exit", "Long", stop=longStopPrice)
if strategy.position_size < 0
strategy.exit("Short Exit", "Short", stop=shortStopPrice)
// Basic Plotting
plot(ema20, "EMA 20", color.blue)
plot(ema50, "EMA 50", color.red)