Esta estrategia se llama
El indicador RSI juzga si los precios están sobrecomprados o sobrevendidos. RSI por encima de 70 sugiere estado de sobrecompra, mientras que por debajo de 30 es sobreventa. Esta estrategia genera señales de venta cuando el RSI alcanza 96, y señales de compra cuando el RSI se rompe por debajo de 4. Estos parámetros optimizados son más adecuados para capturar reversiones temporales dentro de tendencias fuertes en comparación con los niveles tradicionales del RSI.
Después de la entrada, la estrategia utiliza mecanismos de toma de ganancias y stop loss. Las posiciones largas se cierran cuando el RSI rebota a 80 después de la inversión, y las posiciones cortas se cierran cuando el RSI cae a 20, bloqueando efectivamente las ganancias de retroceso.
La ventaja de esta estrategia consiste en utilizar la sensibilidad del RSI para juzgar los retrocesos y reversiones de tendencia, y mejorar el rendimiento mediante la optimización de parámetros y la toma/detención de pérdidas.
En conclusión, el RSI es una herramienta simple y práctica para medir las condiciones de sobrecompra/sobreventa. A través de la optimización de parámetros y la estricta gestión de riesgos, su efectividad puede mejorarse para el comercio de retroceso de tendencia.
/*backtest start: 2023-08-13 00:00:00 end: 2023-09-12 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © corderomoraj //@version=5 strategy("Good Mode RSI v2", overlay=true) // Parámetros de la estrategia rsiPeriod = input(2, "RSI Period") sellLevel = input(96, "Sell Level") buyLevel = input(4, "Buy Level") takeProfitLevelSell = input(20, "Take Profit Level Sell") takeProfitLevelBuy = input(80, "Take Profit Level Buy") var float trailingStopPrice = na var float trailingStopOffset = input(100, "Trailing Stop Offset (pips)") // Capital inicial initialCapital = 250 positionSize = initialCapital * 0.015 // Condiciones de entrada y salida rsi = ta.rsi(close, rsiPeriod) // Condiciones de entrada y salida para la orden de venta sellCondition = rsi > sellLevel closeSellCondition = rsi < takeProfitLevelSell // Condiciones de entrada y salida para la orden de compra buyCondition = rsi < buyLevel closeBuyCondition = rsi > takeProfitLevelBuy // Trailing Stop para las posiciones de venta if strategy.position_size < 0 if low < trailingStopPrice trailingStopPrice := low strategy.exit("Sell", "Sell", trail_offset = trailingStopOffset * syminfo.mintick, trail_price = trailingStopPrice) // Trailing Stop para las posiciones de compra if strategy.position_size > 0 if high > trailingStopPrice trailingStopPrice := high strategy.exit("Buy", "Buy", trail_offset = trailingStopOffset * syminfo.mintick, trail_price = trailingStopPrice) // Ejecutar orden de venta if (sellCondition) strategy.entry("Sell", strategy.short, qty = positionSize) trailingStopPrice := high // Cerrar orden de venta if (closeSellCondition) strategy.close("Sell") // Ejecutar orden de compra if (buyCondition) strategy.entry("Buy", strategy.long, qty = positionSize) trailingStopPrice := low // Cerrar orden de compra if (closeBuyCondition) strategy.close("Buy")