Strategi ini menggunakan kombinasi dari dua indeks silang moving average dan indikator yang relatif kuat dan lemah untuk mengidentifikasi peluang perdagangan potensial di pasar.
Gagasan inti adalah membeli ketika rata-rata bergerak 9 minggu indeks cepat menembus rata-rata bergerak 21 minggu indeks lambat ke atas, karena ini menunjukkan bahwa tren pasar mungkin sedang menguat. Kemudian, jika RSI lebih besar dari 50, konfirmasi sinyal beli, karena ini berarti momentum kenaikan harga positif.
Secara khusus, ketika EMA 9 minggu naik dari EMA 21 minggu dan RSI 14 minggu lebih besar dari 50, sinyal beli dikeluarkan. Kemudian gunakan 2% risiko akun untuk membuka posisi, 5% stop loss, 10% stop loss, dan 3% stop tracking untuk mengunci keuntungan.
Sinyal jual didasarkan pada logika yang berlawanan: jika EMA minggu ke-9 melintas di bawah EMA minggu ke-21 atau RSI di bawah 50; ini berarti tren jangka pendek telah berubah arah ke bawah.
Optimisasi dapat dilakukan dengan menguji kombinasi parameter ini secara sistematis. Filter juga dapat ditambahkan ke dalam logika kondisional untuk mengurangi transaksi kebisingan. Mempertimbangkan faktor dasar dapat memberikan konfirmasi lebih lanjut.
Strategi ini memanfaatkan kekuatan EMA dan RSI untuk mengidentifikasi peluang potensial dalam tren jangka menengah dan panjang. Strategi ini menyediakan aturan manajemen risiko yang jelas untuk mengendalikan risiko setiap perdagangan secara efektif. Strategi dapat terus meningkatkan kinerja dengan pengujian dan pengoptimalan parameter lebih lanjut.
/*backtest
start: 2023-12-22 00:00:00
end: 2024-01-21 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Weekly Swing Trading Strategy", overlay=true)
// Entry Indicators
shortEma = ema(close, 9)
longEma = ema(close, 21)
rsiValue = rsi(close, 14)
// Entry Condition
longCondition = crossover(shortEma, longEma) and rsiValue > 50
if (longCondition)
strategy.entry("Long", strategy.long)
// Position Sizing (2% risk per trade)
riskPerTrade = 0.02
stopLossPercent = 0.05 // 5% stop loss
stopLossPrice = close * (1 - stopLossPercent)
strategy.exit("Stop Loss", "Long", stop=stopLossPrice)
// Profit Target and Trailing Stop
profitTargetPercent = 0.10 // 10% profit target
profitTargetPrice = close * (1 + profitTargetPercent)
trailStopPercent = 0.03 // 3% trailing stop
strategy.exit("Take Profit", "Long", limit=profitTargetPrice, trail_price=trailStopPercent, trail_offset=trailStopPercent)
// Exit Strategy
exitCondition = crossunder(shortEma, longEma) or rsiValue < 50 // Exit when EMAs cross or RSI drops below 50
strategy.close("Long", when=exitCondition)
plot(shortEma, color=color.red)
plot(longEma, color=color.blue)
hline(50, "RSI 50", color=color.purple)