Estrategia de ruptura de la EMA con doble cruz de oro

El autor:¿ Qué pasa?, Fecha: 2024-01-26 15:13:59
Las etiquetas:

img

Resumen general

La doble estrategia de ruptura de cruz dorada de la EMA es una estrategia de trading de seguimiento de tendencias y ruptura basada en dos promedios móviles exponenciales (EMA) con períodos diferentes.

Estrategia lógica

La doble estrategia de ruptura cruzada de oro de la EMA se basa principalmente en la siguiente lógica:

  1. Utilice una EMA de período más corto (línea de 26 días) para capturar las tendencias a corto plazo y una EMA de período más largo (línea de 200 días) para determinar la dirección de la tendencia a largo plazo.

  2. Cuando la EMA de período más corto cruza por encima de la EMA de período más largo, se denomina cruz dorada, lo que indica los cambios de tendencia de tendencia bajista a tendencia alcista, y se genera una señal de compra.

  3. Cuando la EMA de período más corto se cruza por debajo de la EMA de período más largo, se denomina cruce de muerte, lo que indica los cambios de tendencia de tendencia alcista a bajista, y se genera una señal de venta.

  4. Cuando ocurren las señales cruzadas, el precio también necesita atravesar las EMA para filtrar las señales falsas y garantizar señales comerciales confiables.

  5. Aplicar técnicas de stop loss y take profit para controlar los riesgos comerciales y obtener ganancias.

Análisis de las ventajas

La doble estrategia de ruptura cruzada de oro de la EMA tiene las siguientes ventajas:

  1. El uso de EMAs duales para determinar las tendencias de los precios y las señales cruzadas puede rastrear eficazmente los movimientos del mercado.

  2. La combinación de señales de filtro de ruptura de precios evita ser engañado por falsas señales cruzadas.

  3. Adopción de una lógica comercial simple y clara, fácil de entender e implementar.

  4. Aplicable a diferentes productos y plazos, flexible y versátil.

  5. Los parámetros EMA configurables y las condiciones de stop loss/take profit hacen que sea muy adaptable.

Análisis de riesgos

La doble estrategia de ruptura cruzada de oro de la EMA también presenta los siguientes riesgos:

  1. Los cruces frecuentes pueden ocurrir cuando los precios oscilan, generando señales comerciales excesivas.

  2. Las EMA dobles a veces tienen un rendimiento lento y no pueden responder a los cambios de precios a tiempo.

  3. Los puntos de stop loss que son demasiado pequeños pueden desencadenarse fácilmente por ligeras fluctuaciones de precios, mientras que los puntos de take profit que son demasiado grandes pueden perder algunas ganancias.

  4. Los juicios de tendencia principales deben hacerse antes de las señales comerciales para evitar negociar contra la tendencia.

Direcciones de optimización

La doble estrategia de ruptura cruzada de oro de la EMA se puede optimizar en los siguientes aspectos:

  1. Aplicar algoritmos de aprendizaje automático para optimizar dinámicamente los parámetros de la EMA para que puedan adaptarse mejor a las fluctuaciones de precios.

  2. Añadir otras señales de confirmación como volumen, bandas de Bollinger, etc. para mejorar la calidad de la señal.

  3. Incorporar predicciones de aprendizaje profundo de las trayectorias de precios para colocar un stop loss y acercar las ganancias a niveles óptimos.

  4. Optimizar estrategias específicamente para datos de alta frecuencia para aumentar la precisión de la señal.

  5. Se añadirán mecanismos de ajuste adaptativos para detener las pérdidas para evitar una parada excesiva.

Conclusión

En resumen, la estrategia de ruptura de cruz dorada dual EMA utiliza señales de cruce EMA para determinar tendencias de precios y puntos de inflexión, e incorpora filtros de ruptura de precios para evitar señales falsas. Es una tendencia confiable, estable y fácil de implementar después de la estrategia de negociación. Se pueden hacer mejoras adicionales a través de la optimización de parámetros, el filtrado de señales y el ajuste adaptativo.


/*backtest
start: 2023-12-26 00:00:00
end: 2024-01-25 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("EMA Buy/Sell Signal", shorttitle="EMABuySell", overlay=true)

// === INPUTS ===
src = input(close)
ema1Length = input(26, title='EMA-1')
ema2Length = input(200, title='EMA-2')

EMASig = input(true, title="Show EMA ?")
takeProfitPercent = input(2.0, title="Take Profit (%)") / 100
stopLossPercent = input(1, title="Stop Loss (%)") / 100

pema1 = ta.ema(src, ema1Length)
pema2 = ta.ema(src, ema2Length)

// Plotting EMAs
plot(EMASig ? pema1 : na, title='EMA-1', color=color.new(color.blue, 0), linewidth=2)
plot(EMASig ? pema2 : na, title='EMA-2', color=color.new(color.orange, 0), linewidth=2)

// EMA Crossover Buy Signal
EMACrossoverLong = ta.crossover(pema1, pema2)

// EMA Crossunder Short Signal
EMACrossoverShort = ta.crossunder(pema1, pema2)

// Crossover above EMA-200 Long Signal
CrossoverAboveEMA200 = ta.crossover(close, pema2)

// Trading logic for Long
if ((EMACrossoverLong and close > pema1 and close > pema2) or CrossoverAboveEMA200)
    strategy.entry("Buy", strategy.long, qty=1)

// Take Profit logic for Long
longCondition = close >= strategy.position_avg_price * (1 + takeProfitPercent)
if (strategy.position_size > 0 and longCondition)
    strategy.close("Buy")

// Stop Loss logic for Long
stopLossConditionLong = ta.crossunder(pema1, pema2)
if (strategy.position_size > 0 and stopLossConditionLong)
    strategy.close("Buy")

// Trading logic for Short
if (EMACrossoverShort and close < pema1 and close < pema2)
    strategy.entry("Sell", strategy.short, qty=1)

// Take Profit logic for Short
shortCondition = close <= strategy.position_avg_price * (1 - takeProfitPercent)
if (strategy.position_size < 0 and shortCondition)
    strategy.close("Sell")

// Stop Loss logic for Short
stopLossConditionShort = ta.crossover(pema1, pema2)
if (strategy.position_size < 0 and stopLossConditionShort)
    strategy.close("Sell")

// Visual Signals
plotshape(series=EMACrossoverLong or CrossoverAboveEMA200, title="Buy Signal", color=color.green, style=shape.triangleup, size=size.small)
plotshape(series=EMACrossoverShort, title="Sell Signal", color=color.red, style=shape.triangledown, size=size.small)


Más.