Strategi ini adalah sistem perdagangan jangka pendek yang menggabungkan crossover EMA ganda dengan indikator RSI. Strategi ini menggunakan EMA (Exponential Moving Averages) 9 periode dan 21 periode untuk penentuan tren, bersama dengan Relative Strength Index (RSI) untuk konfirmasi momentum, menerapkan stop-loss dan take-profit level tetap untuk manajemen risiko. Strategi ini terutama dirancang untuk perdagangan jangka waktu 5 menit dan sangat efektif dalam kondisi pasar yang tidak stabil.
Logika inti didasarkan pada efek sinergis dari dua indikator teknis. Pertama, arah tren ditentukan oleh persilangan EMA 9 periode dan EMA 21 periode, dengan tren naik dikonfirmasi ketika EMA jangka pendek melintasi di atas EMA jangka panjang, dan tren menurun ketika sebaliknya terjadi. Kedua, indikator RSI digunakan untuk konfirmasi momentum dengan menyaring perdagangan berdasarkan kondisi overbought dan oversold. Strategi menerapkan stop-loss 1% dan take-profit 2%, mempertahankan rasio risiko-manfaat 1: 2.
Strategi ini menggabungkan crossover EMA dan indikator RSI untuk menciptakan sistem perdagangan jangka pendek yang relatif lengkap. Kekuatannya terletak pada sinyal yang jelas dan risiko yang terkendali, meskipun ada ruang untuk optimasi. Dengan menggabungkan stop-loss dinamis, penyaringan waktu, dan mekanisme lainnya, stabilitas dan profitabilitas strategi dapat ditingkatkan lebih lanjut. Secara keseluruhan, ini mewakili strategi perdagangan yang berlandaskan, logis yang baik yang berfungsi sebagai dasar yang sangat baik untuk perdagangan jangka pendek dan dapat disempurnakan dan dioptimalkan lebih lanjut.
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-28 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("abo 3llash - EMA + RSI Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10) // Parameters emaShortLength = input.int(9, title="Short EMA Length") emaLongLength = input.int(21, title="Long EMA Length") rsiLength = input.int(14, title="RSI Length") rsiOverbought = input.int(70, title="RSI Overbought Level") rsiOversold = input.int(30, title="RSI Oversold Level") stopLossPercent = input.float(1, title="Stop Loss Percentage") / 100 takeProfitPercent = input.float(2, title="Take Profit Percentage") / 100 // Calculating EMAs and RSI emaShort = ta.ema(close, emaShortLength) emaLong = ta.ema(close, emaLongLength) rsi = ta.rsi(close, rsiLength) // Buy and Sell Conditions buyCondition = ta.crossover(emaShort, emaLong) and rsi < rsiOverbought sellCondition = ta.crossunder(emaShort, emaLong) and rsi > rsiOversold // Plotting the EMAs plot(emaShort, title="Short EMA", color=color.blue) plot(emaLong, title="Long EMA", color=color.red) // Generating buy and sell signals on the chart plotshape(series=buyCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") plotshape(series=sellCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL") // Strategy Execution if (buyCondition) strategy.entry("Buy", strategy.long) // Set Stop Loss and Take Profit for Buy stopLossLevel = close * (1 - stopLossPercent) takeProfitLevel = close * (1 + takeProfitPercent) strategy.exit("Take Profit/Stop Loss", from_entry="Buy", stop=stopLossLevel, limit=takeProfitLevel) if (sellCondition) strategy.entry("Sell", strategy.short) // Set Stop Loss and Take Profit for Sell stopLossLevel = close * (1 + stopLossPercent) takeProfitLevel = close * (1 - takeProfitPercent) strategy.exit("Take Profit/Stop Loss", from_entry="Sell", stop=stopLossLevel, limit=takeProfitLevel)