Strategi ini membangun sistem perdagangan menggunakan indikator RSI untuk menentukan tingkat overbought dan oversold, bersama dengan stop loss trailing dinamis dan exit target profit.
Strategi ini menggunakan indikator RSI 14 periode untuk menilai pola teknis pasar. RSI mencerminkan rasio kekuatan naik dan turun selama periode waktu, untuk mengetahui apakah pasar terlalu banyak dibeli atau terlalu banyak dijual. Panjang RSI di sini adalah 14. Ketika RSI melintasi di atas 70, pasar dianggap terlalu banyak dibeli, dan kita pergi pendek. Ketika RSI melintasi di bawah 30, pasar dianggap terlalu banyak dijual, dan kita pergi panjang.
Selain itu, strategi ini menggunakan mekanisme stop loss trailing yang dinamis. Ketika memegang posisi panjang, harga trailing stop ditetapkan pada 97% dari harga penutupan. Ketika memegang posisi pendek, harga trailing stop adalah 103% dari harga penutupan. Ini mengunci sebagian besar keuntungan sambil menghindari dihentikan oleh kebisingan pasar.
Akhirnya, strategi ini menggunakan target keluar keuntungan. Ketika keuntungan posisi mencapai 20%, itu akan ditutup. Ini mengunci beberapa keuntungan dan menghindari retracement keuntungan.
Keuntungan dari strategi ini meliputi:
Beberapa risiko dari strategi ini untuk dicatat:
Untuk mengatasi risiko ini, mengoptimalkan parameter RSI, menyesuaikan persentase stop loss, meringankan persyaratan target keuntungan secara wajar dapat membantu.
Beberapa arah untuk mengoptimalkan strategi:
Strategi ini memiliki logika yang jelas untuk menggunakan RSI untuk menentukan pasar overbought / oversold, dengan berhenti dinamis dan mengambil keuntungan. Keuntungannya adalah pemahaman dan implementasi yang mudah, kontrol risiko yang baik, dan ekstensibilitas yang tinggi. Langkah selanjutnya adalah meningkatkan kualitas sinyal, parameter auto-tune dll untuk membuat strategi lebih cerdas.
/*backtest start: 2024-01-04 00:00:00 end: 2024-02-03 00:00:00 period: 4h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Modified RSI-Based Trading Strategy", overlay=true) // RSI settings rsiLength = input(14, title="RSI Length") overboughtLevel = 70 oversoldLevel = 30 // User-defined parameters trailingStopPercentage = input(3, title="Trailing Stop Percentage (%)") profitTargetPercentage = input(20, title="Profit Target Percentage (%)") rsiValue = ta.rsi(close, rsiLength) var float trailingStopLevel = na var float profitTargetLevel = na // Entry criteria enterLong = ta.crossover(rsiValue, oversoldLevel) enterShort = ta.crossunder(rsiValue, overboughtLevel) // Exit criteria exitLong = ta.crossover(rsiValue, overboughtLevel) exitShort = ta.crossunder(rsiValue, oversoldLevel) // Trailing stop calculation if (strategy.position_size > 0) trailingStopLevel := close * (1 - trailingStopPercentage / 100) if (strategy.position_size < 0) trailingStopLevel := close * (1 + trailingStopPercentage / 100) // Execute the strategy if (enterLong) strategy.entry("Buy", strategy.long) if (exitLong or ta.crossover(close, trailingStopLevel) or ta.change(close) > profitTargetPercentage / 100) strategy.close("Buy") if (enterShort) strategy.entry("Sell", strategy.short) if (exitShort or ta.crossunder(close, trailingStopLevel) or ta.change(close) < -profitTargetPercentage / 100) strategy.close("Sell") // Plot RSI and overbought/oversold levels plot(rsiValue, title="RSI", color=color.blue) hline(overboughtLevel, "Overbought", color=color.red, linestyle=hline.style_dashed) hline(oversoldLevel, "Oversold", color=color.green, linestyle=hline.style_dashed)