RSI Overbought Reversal Strategy adalah pendekatan perdagangan jangka pendek yang menggabungkan penunjuk teknikal dengan pengurusan kedudukan dinamik. Strategi ini terutamanya menggunakan Indeks Kekuatan Relatif (RSI) dan Purata Bergerak Sederhana (SMA) untuk mengenal pasti keadaan overbought yang berpotensi dan peluang pembalikan, sambil mengoptimumkan nisbah risiko-balasan melalui mekanisme kemasukan berskala.
Strategi ini beroperasi berdasarkan langkah-langkah utama berikut:
RSI Overbought Reversal Strategy adalah pendekatan perdagangan jangka pendek yang menggabungkan analisis teknikal dengan prinsip pengurusan risiko. Dengan memanfaatkan isyarat overbought RSI dan penentuan trend SMA, strategi ini bertujuan untuk menangkap pembalikan pasaran yang berpotensi. Mekanisme kemasukan berskala dan keluar dinamiknya membantu mengoptimumkan profil risiko-balasan. Walau bagaimanapun, pelabur harus menyedari risiko pasaran dan batasan penunjuk teknikal ketika menggunakan strategi ini, dan terus mengoptimumkan parameter strategi dan logika berdasarkan persekitaran perdagangan sebenar. Dengan kawalan risiko yang betul dan penyempurnaan strategi yang berterusan, pendekatan ini berpotensi menjadi alat perdagangan kuantitatif yang berkesan.
/*backtest start: 2024-08-26 00:00:00 end: 2024-09-24 08:00:00 period: 2h basePeriod: 2h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("TPS Short Strategy by Larry Conners", overlay=true) // Define parameters as inputs sma_length_200 = input.int(200, title="200-Day SMA Length") rsi_length_2 = input.int(2, title="2-Period RSI Length") sma_length_10 = input.int(10, title="10-Day SMA Length") sma_length_30 = input.int(30, title="30-Day SMA Length") // Define colors as RGB values color_sma_200 = input.color(color.rgb(0, 0, 255), title="200-Day SMA Color") // Blue color_sma_10 = input.color(color.rgb(255, 0, 0), title="10-Day SMA Color") // Red color_sma_30 = input.color(color.rgb(0, 255, 0), title="30-Day SMA Color") // Green // Calculate indicators sma_200 = ta.sma(close, sma_length_200) rsi_2 = ta.rsi(close, rsi_length_2) sma_10 = ta.sma(close, sma_length_10) sma_30 = ta.sma(close, sma_length_30) // Define conditions below_sma_200 = close < sma_200 rsi_2_above_75_two_days = rsi_2[1] > 75 and rsi_2 > 75 price_higher_than_entry = na(strategy.opentrades.entry_price(0)) ? false : close > strategy.opentrades.entry_price(0) // Entry conditions if (below_sma_200 and rsi_2_above_75_two_days and na(strategy.opentrades.entry_price(0))) strategy.entry("Short", strategy.short, qty=1) // Short 10% of the position // Scaling in conditions if (price_higher_than_entry) strategy.entry("Short2", strategy.short, qty=2) // Short 20% more of the position if (price_higher_than_entry) strategy.entry("Short3", strategy.short, qty=3) // Short 30% more of the position if (price_higher_than_entry) strategy.entry("Short4", strategy.short, qty=4) // Short 40% more of the position // Exit conditions exit_condition_rsi_below_30 = rsi_2 < 30 exit_condition_sma_cross = ta.crossover(sma_10, sma_30) if (exit_condition_rsi_below_30 or exit_condition_sma_cross) strategy.close_all() // Close all positions // Plot indicators plot(sma_200, color=color_sma_200, title="200-Day SMA") plot(sma_10, color=color_sma_10, title="10-Day SMA") plot(sma_30, color=color_sma_30, title="30-Day SMA")