
Strategi ini menggunakan indeks kekuatan dan kelemahan relatif (RSI) dan purata bergerak sederhana (SMA) untuk mengenal pasti peluang pulangan nilai purata yang berpotensi di pasaran. Ia menghasilkan isyarat beli apabila RSI lebih rendah daripada paras beli dan harga lebih rendah daripada SMA; ia menghasilkan isyarat jual apabila RSI lebih tinggi daripada paras jual dan harga lebih tinggi daripada SMA. Strategi ini juga menetapkan tahap stop loss dan stop loss untuk menguruskan risiko perdagangan dan mengunci keuntungan.
Prinsip utama strategi ini adalah konsep pulangan rata-rata, iaitu harga akan kembali ke nilai rata-rata apabila berada di tahap yang melampau. Dengan menggunakan indikator RSI untuk mengukur keadaan harga yang terlalu banyak dan terlalu banyak dijual, dan menggabungkan SMA sebagai acuan harga, strategi ini cuba menangkap peluang untuk kembali setelah harga menyimpang terlalu jauh dari nilai rata-rata.
Secara khusus, strategi ini menggunakan langkah-langkah berikut:
Strategi pulangan nilai rata-rata indeks yang agak kuat menggunakan RSI dan SMA untuk menangkap peluang pulangan selepas harga menyimpang dari nilai rata-rata. Ia mempunyai kelebihan seperti mudah difahami, beradaptasi, tetapi mungkin tidak berfungsi dengan baik dalam pasaran yang sedang tren, dan bergantung pada pilihan parameter. Dengan mengoptimumkan kaedah hentian kerugian, penetapan parameter, dan pengenalan petunjuk dan langkah-langkah pengurusan risiko lain, strategi ini dapat meningkatkan kestabilan dan potensi keuntungan.
/*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)