Strategi ini adalah sistem perdagangan yang mengikuti tren yang menggabungkan Indeks Kekuatan Relatif (RSI) dengan Moving Average (MA). Mekanisme inti menggunakan RSI untuk menangkap perubahan momentum harga sambil menggabungkan rata-rata bergerak 90 hari sebagai filter tren, secara efektif melacak tren pasar. Strategi ini memiliki ambang batas overbought / oversold RSI yang dapat disesuaikan dan menerapkan pembatasan periode mundur 2500 hari untuk memastikan kepraktisan dan stabilitas.
Strategi ini dibangun di atas beberapa komponen inti:
Sinyal beli dipicu ketika RSI melintasi di atas 70, sementara sinyal jual dihasilkan ketika RSI turun di bawah 62.
Rekomendasi Kontrol Risiko:
Optimasi Sistem Sinyal:
Optimasi Manajemen Posisi:
Optimasi Pengendalian Risiko:
Backtesting Sistem Optimasi:
Strategi ini membangun sistem perdagangan yang relatif lengkap dengan menggabungkan indikator momentum RSI dengan filter tren MA. Kekuatannya terletak pada kemampuan beradaptasi yang kuat dan pengendalian risiko yang komprehensif, tetapi perhatian harus diberikan pada sensitivitas parameter dan perubahan lingkungan pasar. Melalui arah optimasi yang disarankan, strategi memiliki ruang yang signifikan untuk perbaikan untuk meningkatkan stabilitas dan profitabilitasnya lebih lanjut.
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-11 00:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Simple RSI Strategy - Adjustable Levels with Lookback Limit and 30-Day MA", overlay=true) // Parameters rsi_length = input.int(12, title="RSI Length", minval=1) // RSI period rsi_overbought = input.int(70, title="RSI Overbought Level", minval=1, maxval=100) // Overbought level rsi_oversold = input.int(62, title="RSI Oversold Level", minval=1, maxval=100) // Oversold level ma_length = input.int(90, title="Moving Average Length", minval=1) // Moving Average period // Calculate lookback period (2000 days) lookback_period = 2500 start_date = timestamp(year(timenow), month(timenow), dayofmonth(timenow) - lookback_period) // RSI Calculation rsi_value = ta.rsi(close, rsi_length) // 30-Day Moving Average Calculation ma_value = ta.sma(close, ma_length) // Buy Condition: Buy when RSI is above the overbought level long_condition = rsi_value > rsi_overbought // Sell Condition: Sell when RSI drops below the oversold level sell_condition = rsi_value < rsi_oversold // Check if current time is within the lookback period in_lookback_period = (time >= start_date) // Execute Buy with 100% equity if within lookback period if (long_condition and strategy.position_size == 0 and in_lookback_period) strategy.entry("Buy", strategy.long, qty=strategy.equity / close) if (sell_condition and strategy.position_size > 0) strategy.close("Buy") // Plot RSI on a separate chart for visualization hline(rsi_overbought, "Overbought", color=color.red) hline(rsi_oversold, "Oversold", color=color.green) plot(rsi_value, title="RSI", color=color.blue) // Plot the 30-Day Moving Average on the chart plot(ma_value, title="30-Day MA", color=color.orange, linewidth=2)