Strategi ini adalah sistem perdagangan yang mengikuti trend yang menggabungkan Indeks Kekuatan Relatif (RSI) dengan Purata Bergerak (MA). Mekanisme teras menggunakan RSI untuk menangkap perubahan momentum harga sambil menggabungkan purata bergerak 90 hari sebagai penapis trend, dengan berkesan mengesan trend pasaran. Strategi ini mempunyai ambang overbought / oversold RSI yang boleh disesuaikan dan melaksanakan sekatan tempoh melihat kembali 2500 hari untuk memastikan kepraktisan dan kestabilan.
Strategi ini dibina di atas beberapa komponen teras:
Isyarat beli diaktifkan apabila RSI melintasi di atas 70, manakala isyarat jual dihasilkan apabila RSI turun di bawah 62.
Cadangan Kawalan Risiko:
Pengoptimuman Sistem Isyarat:
Pengoptimuman Pengurusan Kedudukan:
Pengoptimuman Kawalan Risiko:
Pengoptimuman Sistem Ujian Kembali:
Strategi ini membina sistem perdagangan yang agak lengkap dengan menggabungkan penunjuk momentum RSI dengan penapis trend MA. Kekuatannya terletak pada kemampuan beradaptasi yang kuat dan kawalan risiko yang komprehensif, tetapi perhatian mesti diberikan kepada kepekaan parameter dan perubahan persekitaran pasaran. Melalui arah pengoptimuman yang dicadangkan, strategi ini mempunyai ruang yang signifikan untuk peningkatan untuk meningkatkan kestabilan dan keuntungan 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)