Esta estrategia es un sistema de negociación adaptativo basado en el índice de fortaleza relativa (RSI), diseñado para capturar los cambios en el impulso del mercado mediante el monitoreo de las zonas de sobrecompra y sobreventa del RSI. El sistema integra mecanismos inteligentes de gestión de posiciones, incluidos controles de stop-loss y take-profit de varios niveles, así como la funcionalidad de cierre automático de posiciones, con el objetivo de lograr una relación riesgo-recompensa robusta.
La estrategia básica se basa en las señales de sobrecompra/sobreventa del RSI, combinadas con múltiples condiciones de negociación:
La estrategia captura los cambios de impulso del mercado a través del indicador RSI, junto con un sistema integral de gestión de riesgos, logrando un sistema de negociación totalmente automatizado.
/*backtest start: 2024-11-04 00:00:00 end: 2024-11-11 00:00:00 period: 10m basePeriod: 10m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Harmony Signal Flow By Arun", overlay=true) // RSI settings rsiLength = 14 rsiSource = close rsiValue = ta.rsi(rsiSource, rsiLength) // Define RSI levels buyLevel = 30 sellLevel = 70 // Buy signal: RSI crosses above 30 buyCondition = ta.crossover(rsiValue, buyLevel) // Sell signal: RSI crosses below 70 sellCondition = ta.crossunder(rsiValue, sellLevel) // Ensure only one order at a time if (strategy.position_size == 0) // No open positions if (buyCondition) strategy.entry("Buy", strategy.long) else if (sellCondition) strategy.entry("Sell", strategy.short) // Stop-loss and target conditions var float stopLossBuy = na var float targetBuy = na var float stopLossSell = na var float targetSell = na if (strategy.position_size > 0) // If there's an open buy position stopLossBuy := strategy.position_avg_price - 100 // Set stop-loss for buy targetBuy := strategy.position_avg_price + 150 // Set target for buy if (close <= stopLossBuy) strategy.close("Buy", comment="Stoploss Hit") else if (close >= targetBuy) strategy.close("Buy", comment="Target Hit") if (strategy.position_size < 0) // If there's an open sell position stopLossSell := strategy.position_avg_price + 100 // Set stop-loss for sell targetSell := strategy.position_avg_price - 150 // Set target for sell if (close >= stopLossSell) strategy.close("Sell", comment="Stoploss Hit") else if (close <= targetSell) strategy.close("Sell", comment="Target Hit") // Close all positions by 3:25 PM if (hour(timenow) == 15 and minute(timenow) == 25) strategy.close_all(comment="Close all positions at 3:25 PM") // Plot buy/sell signals on the chart plotshape(buyCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") plotshape(sellCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL") // Plot RSI and levels hline(buyLevel, "Buy Level", color=color.green) hline(sellLevel, "Sell Level", color=color.red) plot(rsiValue, "RSI", color=color.blue)