Strategi ini menggunakan Indeks Kekuatan Relatif (RSI) dan Purata Bergerak Sederhana (SMA) untuk mengenal pasti peluang pembalikan purata yang berpotensi di pasaran. Apabila RSI di bawah ambang beli dan harga di bawah SMA, isyarat beli dihasilkan. Apabila RSI di atas ambang jual dan harga di atas SMA, isyarat jual dihasilkan. Strategi ini juga menetapkan paras sasaran stop loss dan keuntungan untuk menguruskan risiko perdagangan dan mengunci keuntungan.
Prinsip teras strategi ini adalah konsep pembalikan purata, yang menunjukkan bahawa harga cenderung untuk kembali ke tahap purata mereka selepas mencapai tahap yang melampau. Dengan menggunakan penunjuk RSI untuk mengukur keadaan overbought dan oversold dan menggabungkannya dengan SMA sebagai penanda aras rujukan untuk harga, strategi ini bertujuan untuk menangkap peluang pembalikan apabila harga menyimpang terlalu jauh dari purata mereka.
Secara khusus, strategi ini mengikuti langkah-langkah berikut:
Strategi pembalikan indeks kekuatan relatif ini memanfaatkan RSI dan SMA untuk menangkap peluang pembalikan apabila harga menyimpang dari purata mereka. Ia mempunyai kelebihan seperti kesederhanaan, kemudahan pemahaman, dan kebolehsesuaian. Walau bagaimanapun, ia mungkin kurang berprestasi di pasaran trend dan bergantung pada pemilihan parameter. Dengan mengoptimumkan kaedah berhenti kerugian dan mengambil keuntungan, tetapan parameter, menggabungkan penunjuk tambahan, dan melaksanakan langkah pengurusan risiko, kekuatan dan potensi keuntungan strategi ini dapat ditingkatkan lagi.
/*backtest start: 2024-04-01 00:00:00 end: 2024-04-30 23:59:59 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy('Mean Reversion with Tight Stop Loss', overlay=true) // Define parameters rsiLength = 14 rsiThresholdBuy = 30 rsiThresholdSell = 70 smaPeriod = 20 stopLossPercentage = 0.5 // 0.5% stop loss profitTargetPercentage = 1 // 1% profit target // Calculate indicators rsi = ta.rsi(close, rsiLength) sma = ta.sma(close, smaPeriod) // Entry conditions buySignal = rsi < rsiThresholdBuy and close < sma sellSignal = rsi > rsiThresholdSell and close > sma // Exit conditions if strategy.position_size > 0 stopLoss = strategy.position_avg_price * (1 - stopLossPercentage / 100) takeProfit = strategy.position_avg_price * (1 + profitTargetPercentage / 100) if close <= stopLoss or close >= takeProfit strategy.close('Exit', comment='Stop Loss / Take Profit') // Execute trades if buySignal strategy.entry('Buy', strategy.long) if sellSignal strategy.entry('Sell', strategy.short)