//@version=5
strategy("RSI(6) Buy at 30, EMA(34) Sell with Stop Loss", overlay=true)
// Configuración de los parámetros
rsiPeriod = 6
emaPeriod = 54
buyLevel = 30
positionSize = 0.02
// Calcular el RSI y el EMA
rsiValue = ta.rsi(close, rsiPeriod)
emaValue = ta.ema(close, emaPeriod)
// Condiciones de compra: el RSI es inferior a 30
buySignal = ta.crossunder(rsiValue, buyLevel)
// Condiciones de venta: el precio es superior a la EMA 54
sellSignal = close > emaValue
// Registro del precio de apertura
var float entryPrice = na
// Comprar la lógica: sólo hacer más
if (buySignal and strategy.position_size == 0)
strategy.entry("Buy", strategy.long, qty=positionSize)
EntryPrice: = close // Registra el precio de apertura de la posición al momento de la compra
// La lógica de stop loss: se establece el stop loss en 0.5%
if (strategy.position_size > 0)
El precio de la pérdida de la parada es el precio de entrada.
if (close <= stopLossPrice)
strategy.close (("Buy", comment="Stop Loss") // Detener la pérdida de la posición cerrada
// Lógica de la posición cerrada: el precio está cerrado cuando está por encima de la EMA 54
if (strategy.position_size > 0 and sellSignal)
strategy.close (("Buy", comment="Take Profit") // Se alcanza el punto de equilibrio
- 1