Estrategia de trampa de la EMA

El autor:¿ Qué pasa?, Fecha: 2024-02-21 11:29:01
Las etiquetas:

img

Resumen general

La EMA Breakthrough Trap Strategy es una herramienta de negociación versátil adecuada para múltiples marcos de tiempo, incluidos los gráficos de 1 minuto y 1 hora. Utiliza la EMA de 21 días para identificar tendencias significativas del mercado, complementada con la identificación basada en ATR de posibles trampas para toros y osos.

Estrategia lógica

La estrategia primero calcula el promedio móvil exponencial de 21 días (EMA) para juzgar la tendencia y dirección general. Luego calcula los precios más altos y más bajos de los últimos N días (N es un parámetro ajustable). Si el precio de cierre es más alto que el precio más alto del día anterior, y el punto más bajo posterior ha caído por debajo del precio más alto multiplicado por el indicador ATR, mientras que el precio de cierre ha caído por debajo de la línea de 21 días, se determina una señal de trampa alcista.

Una vez que se identifica una señal de trampa, establezca la stop loss y tome ganancias basándose en el 80% de la distancia entre los precios más altos y más bajos recientes, y tome la posición inversa.

Análisis de ventajas

  • Utiliza la EMA para juzgar las tendencias, alta fiabilidad
  • Aprovecha el indicador ATR para identificar con precisión las trampas
  • Alta rentabilidad hasta el 85%
  • Aplicable a varios marcos de tiempo
  • Los parámetros ajustables proporcionan espacio de optimización

Análisis de riesgos

  • El juicio de la EMA puede fallar durante cambios de tendencia importantes
  • La configuración inadecuada de los parámetros ATR puede hacer que se pierdan las trampas
  • La colocación de stop loss/take profit no razonable puede reducir las ganancias o aumentar las pérdidas
  • Los costes de negociación elevados y los efectos del deslizamiento para el comercio de alta frecuencia

Los riesgos pueden reducirse optimizando los parámetros de la EMA, ajustando los coeficientes ATR, el stop loss de seguimiento dinámico, etc.

Direcciones de optimización

  • Optimizar los parámetros ATR y los períodos EMA para mejorar la precisión de la identificación
  • Añadir un mecanismo de stop loss dinámico
  • Incorporar otros indicadores para confirmar las señales
  • Aplicabilidad del ensayo en más plazos

Conclusión

La estrategia de trampa de avance de la EMA integra las ventajas del juicio de tendencias y la identificación de trampas. Con bajas reducciones y alta rentabilidad, es adecuada para varios estilos de negociación y es una estrategia altamente eficiente recomendada. Se pueden lograr mejoras adicionales en el espacio de estabilidad y rentabilidad a través de la optimización de parámetros y mecanismos.


/*backtest
start: 2023-02-14 00:00:00
end: 2024-02-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Bull and Bear Trap Strategy with EMA 21 - 1min Chart", overlay=true)

// Inputs
length = input(5, "Length")
atrMultiplier = input(1.0, "ATR Multiplier")
emaLength = input(21, "EMA Length")
price = close
atr = ta.atr(length)

// EMA Calculation
ema21 = ta.ema(price, emaLength)

// Define recent high and low
recentHigh = ta.highest(high, length)
recentLow = ta.lowest(low, length)

// Bull and Bear Trap Detection
bullTrap = price > recentHigh[1] and low <= recentHigh - atr * atrMultiplier and price < ema21
bearTrap = price < recentLow[1] and high >= recentLow + atr * atrMultiplier and price > ema21

// Plotting
plotshape(series=bullTrap, title="Bull Trap", location=location.abovebar, color=color.red, style=shape.triangleup, size=size.small)
plotshape(series=bearTrap, title="Bear Trap", location=location.belowbar, color=color.green, style=shape.triangledown, size=size.small)
plot(ema21, title="EMA 21", color=color.blue)

// Measured Move Implementation
moveSize = recentHigh - recentLow
targetDistance = moveSize * 0.8 // Target at 80% of the move size

// Strategy Execution with Measured Move Targets
if (bullTrap)
    strategy.entry("Enter Short (Sell)", strategy.short)
    strategy.exit("Exit Short (Buy to Cover)", "Enter Short (Sell)", limit=price - targetDistance)

if (bearTrap)
    strategy.entry("Enter Long (Buy)", strategy.long)
    strategy.exit("Exit Long (Sell)", "Enter Long (Buy)", limit=price + targetDistance)


Más.