Strategi ini menggunakan Indeks Kekuatan Relatif (RSI) untuk menentukan keadaan oversold pasaran. Apabila RSI jatuh di bawah ambang oversold yang ditetapkan, ia menghasilkan isyarat beli. Pada masa yang sama, ia menetapkan stop loss dan mengambil keuntungan untuk mengawal risiko dan mengunci keuntungan. Strategi ini hanya mengambil kedudukan panjang dan tidak pendek.
Strategi ini menggunakan penunjuk RSI untuk menangkap peluang pembalikan oversold di pasaran sambil menetapkan stop loss tetap dan mengambil keuntungan untuk mengawal risiko. Logik strategi adalah mudah dan jelas, sesuai untuk pengguna pemula. Walau bagaimanapun, strategi ini juga mempunyai batasan tertentu, seperti keupayaan yang lemah untuk memahami trend dan kebolehpercayaan isyarat perlu ditingkatkan. Oleh itu, dalam aplikasi praktikal, kita boleh mempertimbangkan untuk mengoptimumkan dan meningkatkan strategi dari aspek seperti penghakiman trend, pengoptimuman stop loss dan mengambil keuntungan, dan kombinasi penunjuk untuk mendapatkan prestasi perdagangan yang lebih mantap.
/*backtest start: 2024-05-01 00:00:00 end: 2024-05-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Estratégia com RSI (Apenas Compras)", overlay=true) // Parâmetros de entrada rsiLength = input.int(14, title="Período do RSI") oversold = input.int(30, title="Nível de Sobrevenda (RSI)") stopLossPercent = input.float(2.0, title="Stop Loss (%)") takeProfitPercent = input.float(5.0, title="Take Profit (%)") // Cálculo do RSI rsi = ta.rsi(close, rsiLength) // Sinal de Compra buySignal = ta.crossover(rsi, oversold) // Plotando o sinal de compra plotshape(series=buySignal, location=location.belowbar, color=color.green, style=shape.labelup, title="Compra", text="Buy") // Variáveis para Stop Loss e Take Profit var float longStop = na var float longTake = na // Entrando na posição de compra if (buySignal) entryPrice = close longStop := entryPrice * (1 - stopLossPercent / 100) longTake := entryPrice * (1 + takeProfitPercent / 100) strategy.entry("Compra", strategy.long) label.new(x=bar_index, y=low, text="Compra", style=label.style_label_up, color=color.green) // Gerenciamento de Stop Loss e Take Profit if (strategy.position_size > 0) if (close <= longStop) strategy.close("Compra", comment="Stop Loss") label.new(x=bar_index, y=low, text="Stop Loss", style=label.style_label_down, color=color.red) if (close >= longTake) strategy.close("Compra", comment="Take Profit") label.new(x=bar_index, y=high, text="Take Profit", style=label.style_label_up, color=color.green) // Plotando as linhas de Stop Loss e Take Profit plot(longStop, color=color.red, linewidth=1, title="Stop Loss Long") plot(longTake, color=color.green, linewidth=1, title="Take Profit Long")