Esta estrategia combina el indicador Ichimoku Cloud y el indicador de promedio móvil para implementar una estrategia de negociación cuantitativa simple. Genera señales de compra cuando la línea de conversión está por encima de la línea de base y el precio de cierre está por encima de la línea de conversión. Genera señales de venta cuando la línea de conversión está por debajo de la línea de base y el precio de cierre está por debajo de la línea de conversión. La estrategia es adecuada para el comercio a corto plazo de activos de alta volatilidad como las criptomonedas.
La nube de Ichimoku contiene tres líneas: la línea de conversión, la línea base y el lapso de retraso. La línea de conversión representa el precio promedio a corto plazo y la línea base representa el precio promedio a largo plazo. El lapso de retraso es generalmente el promedio de la conversión y las líneas base. Cuando el promedio a corto plazo es mayor que el promedio a largo plazo, indica una tendencia al alza.
La Nube Ichimoku también contiene dos líneas principales: Leading Span A y Leading Span B. Representan el rango promedio de fluctuaciones de precios en diferentes períodos.
Esta estrategia utiliza la línea de conversión para determinar la dirección general de la tendencia y las líneas principales para medir el impulso. Genera señales comerciales basadas en la tendencia, el impulso y los precios de cierre.
Las principales ventajas de esta estrategia son las siguientes:
Los principales riesgos de esta estrategia son:
Algunas formas en que se puede mejorar esta estrategia:
En resumen, esta es una estrategia de negociación cuantitativa muy simple que combina Ichimoku Cloud y promedio móvil para determinar la tendencia y el impulso de las señales comerciales. Es adecuado para el comercio de activos volátiles a corto plazo con un buen potencial de ganancia.
/*backtest start: 2024-01-20 00:00:00 end: 2024-02-19 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Ichimoku Cloud + ema 50 Strategy", overlay=true) len = input.int(50, minval=1, title="Length") src = input(close, title="Source") out = ta.ema(src, len) conversionPeriods = input.int(9, minval=1, title="Conversion Line Length") basePeriods = input.int(26, minval=1, title="Base Line Length") laggingSpan2Periods = input.int(52, minval=1, title="Leading Span B Length") displacement = input.int(1, minval=1, title="Lagging Span") donchian(len) => math.avg(ta.lowest(len), ta.highest(len)) conversionLine = donchian(conversionPeriods) baseLine = donchian(basePeriods) leadLine1 = math.avg(conversionLine, baseLine) leadLine2 = donchian(laggingSpan2Periods) p1 = plot(leadLine1, offset = displacement - 1, color=#A5D6A7, title="Leading Span A") p2 = plot(leadLine2, offset = displacement - 1, color=#EF9A9A, title="Leading Span B") fill(p1, p2, color = leadLine1 > leadLine2 ? color.rgb(67, 160, 71, 90) : color.rgb(244, 67, 54, 90)) plot(out, title="EMA", color=color.white) // Condition for Buy Signal buy_signal = close > out and leadLine1 > leadLine2 // Condition for Sell Signal sell_signal = close < out and leadLine2 > leadLine1 // Strategy entry and exit conditions if (buy_signal) strategy.entry("Buy", strategy.long) if (sell_signal) strategy.entry("Sell", strategy.short) // Exit long position if candle closes below EMA 50 if (strategy.opentrades > 0) if (close < out) strategy.close("Buy") // Exit short position if candle closes above EMA 50 if (strategy.opentrades < 0) if (close > out) strategy.close("Sell")