
Esta estrategia construye una estrategia de negociación mediante el cálculo del indicador RSI y el establecimiento de un intervalo de sobreventa y sobreventa, combinado con un stop loss dinámico y un retiro de ganancias objetivo. Haga un descuento cuando atraviese el intervalo de sobreventa en el indicador RSI y haga un aumento cuando atraviese el intervalo de sobreventa, y establezca un stop loss y un retiro de ganancias objetivo para salir de una posición.
Esta estrategia utiliza el indicador RSI de 14 días para determinar la forma técnica del mercado. El indicador RSI refleja la proporción de movimiento de alza y bajada en un período de tiempo para determinar si el mercado está sobrecomprado o sobrevendido. La longitud del RSI en esta estrategia es 14.
Además, la estrategia también utiliza un mecanismo de seguimiento de pérdidas dinámico. Cuando se tiene una posición con varios titulares, el precio de seguimiento de pérdidas es el 97% del precio de cierre; Cuando se tiene una posición con un título vacío, el precio de seguimiento de pérdidas es el 103% del precio de cierre.
Finalmente, la estrategia también utiliza el mecanismo de ganancias objetivo. Cuando la ganancia de la posición alcanza el 20%, se retira de la posición. Esto puede bloquear parte de las ganancias y evitar el retorno de las ganancias.
La estrategia tiene las siguientes ventajas:
También hay algunos riesgos de esta estrategia:
Para los riesgos mencionados anteriormente, se puede abordar mediante la optimización de los parámetros RSI, el ajuste de la amplitud de stop loss y la relajación adecuada de los requisitos de ganancias objetivo.
Esta estrategia puede ser optimizada en las siguientes direcciones:
Esta estrategia tiene una idea clara, utiliza el indicador RSI para determinar sobrecompra y sobreventa, junto con el stop loss dinámico y el retiro de ganancias objetivo. Las ventajas son la implementación fácil de entender, el control de riesgos, la capacidad de escalabilidad. El siguiente paso puede optimizarse desde la mejora de la calidad de la señal, los parámetros de ajuste dinámico, etc., para que la estrategia sea más inteligente.
/*backtest
start: 2024-01-04 00:00:00
end: 2024-02-03 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Modified RSI-Based Trading Strategy", overlay=true)
// RSI settings
rsiLength = input(14, title="RSI Length")
overboughtLevel = 70
oversoldLevel = 30
// User-defined parameters
trailingStopPercentage = input(3, title="Trailing Stop Percentage (%)")
profitTargetPercentage = input(20, title="Profit Target Percentage (%)")
rsiValue = ta.rsi(close, rsiLength)
var float trailingStopLevel = na
var float profitTargetLevel = na
// Entry criteria
enterLong = ta.crossover(rsiValue, oversoldLevel)
enterShort = ta.crossunder(rsiValue, overboughtLevel)
// Exit criteria
exitLong = ta.crossover(rsiValue, overboughtLevel)
exitShort = ta.crossunder(rsiValue, oversoldLevel)
// Trailing stop calculation
if (strategy.position_size > 0)
trailingStopLevel := close * (1 - trailingStopPercentage / 100)
if (strategy.position_size < 0)
trailingStopLevel := close * (1 + trailingStopPercentage / 100)
// Execute the strategy
if (enterLong)
strategy.entry("Buy", strategy.long)
if (exitLong or ta.crossover(close, trailingStopLevel) or ta.change(close) > profitTargetPercentage / 100)
strategy.close("Buy")
if (enterShort)
strategy.entry("Sell", strategy.short)
if (exitShort or ta.crossunder(close, trailingStopLevel) or ta.change(close) < -profitTargetPercentage / 100)
strategy.close("Sell")
// Plot RSI and overbought/oversold levels
plot(rsiValue, title="RSI", color=color.blue)
hline(overboughtLevel, "Overbought", color=color.red, linestyle=hline.style_dashed)
hline(oversoldLevel, "Oversold", color=color.green, linestyle=hline.style_dashed)