Esta estrategia construye un canal basado en líneas de promedio móvil exponencial (EMA) de 20 días, va largo cuando el precio rompe la banda superior y va corto cuando el precio rompe la banda inferior.
Gestión de riesgos:
Esta es una estrategia simple y práctica de construcción de canal EMA para seguir la tendencia. Tiene señales de ruptura pero también riesgos de señales falsas. La estrategia se puede mejorar optimizando parámetros y agregando filtros. Vale la pena probar y mejorar más.
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("EMA Channel Strategy with Alerts", shorttitle="EMA Channel", overlay=true) // Define EMA length emaLength = 20 // Calculate EMA values emaHigh = ema(high, emaLength) emaLow = ema(low, emaLength) // Define the condition for a buy signal buyCondition = crossover(close, emaHigh) // Define the condition for a sell signal sellCondition = crossunder(close, emaLow) // Plot the EMA lines plot(emaHigh, color=color.green, title="EMA High") plot(emaLow, color=color.red, title="EMA Low") // Plot buy and sell signals plotshape(buyCondition, style=shape.triangleup, location=location.belowbar, color=color.green, title="Buy Signal") plotshape(sellCondition, style=shape.triangledown, location=location.abovebar, color=color.red, title="Sell Signal") // Strategy strategy.entry("Buy", strategy.long, when=buyCondition) strategy.close("Buy", when=sellCondition) // Define and trigger alerts alertcondition(buyCondition, title="Buy Alert", message="Buy signal - Price crossed above EMA High") alertcondition(sellCondition, title="Sell Alert", message="Sell signal - Price crossed below EMA Low")