Estrategias de trading de medias móviles suavizadas frente a medias móviles


Fecha de creación: 2023-10-17 16:11:19 Última modificación: 2023-10-17 16:11:19
Copiar: 1 Número de Visitas: 1110
1
Seguir
1617
Seguidores

Estrategias de trading de medias móviles suavizadas frente a medias móviles

Aquí hay un artículo sobre las estrategias de negociación de EMA y Heikin Ashi:

Descripción general

La estrategia utiliza las medias móviles lisas y medias para determinar tendencias y generar señales de negociación en función de las medias móviles en las que los precios rompen diferentes períodos.

Principio de estrategia

La estrategia utiliza el EMA de movimiento de índice de 15 y 50 periodos. Calcula el precio de cierre actual de Heikin Ashi y lo compara con el EMA. Si el precio de cierre es superior a dos EMA y el 15EMA es superior a 50EMA, genera una señal de compra; si el precio de cierre es inferior a dos EMA y el 15EMA es inferior a 50EMA, genera una señal de venta.

Cuando el precio vuelva a superar la 15EMA, se realiza una negociación inversa.

Análisis de las ventajas

  1. El uso de EMA puede filtrar el ruido del mercado y determinar la dirección de la tendencia.

  2. En combinación con EMAs de diferentes períodos, se pueden capturar tendencias a corto y medio plazo a la vez.

  3. Heikin Ashi es capaz de filtrar falsas brechas y verificar las señales de intercambio.

  4. Las estrategias son simples, claras y fáciles de aplicar.

Análisis de riesgos

  1. La EMA está rezagada y puede haber perdido el punto de inflexión de la tendencia.

  2. Los parámetros fijos no se adaptan a los cambios en el mercado y requieren una optimización dinámica.

  3. Las transacciones son frecuentes y pueden ser costosas.

  4. Las transacciones de ruptura son susceptibles a una falsa ruptura y deben ser validadas junto con otros indicadores.

Se puede reducir el riesgo mediante la optimización de los parámetros, la integración de otros indicadores, etc.

Dirección de optimización

  1. Optimización dinámica de los parámetros de EMA, que se ajustan periódicamente según los cambios en el mercado.

  2. Optimizar los filtros de ruptura para evitar falsos brechas. Por ejemplo, aumentar la verificación de volumen de transacciones.

  3. En combinación con otros indicadores, como el MACD, para validar las señales de negociación.

  4. El EMA de retraso según la tendencia y el EMA de avance según la conmoción.

Resumir

La estrategia utiliza la EMA para determinar la dirección de la tendencia, para verificar la señal con Heikin Ashi, simple y directa. Sin embargo, se debe tener en cuenta el riesgo de retraso de la EMA y de falsos avances. Se puede mejorar mediante la optimización de parámetros, la integración de indicadores, etc., para aumentar la eficacia de la estrategia al tiempo que se reduce el riesgo.

Código Fuente de la Estrategia
/*backtest
start: 2023-10-09 00:00:00
end: 2023-10-12 02:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("EMA & Heikin Ashi", shorttitle="EMA & Heikin Ashi", overlay=true, initial_capital=1)


// squaa's Strategy
//
// Idea by Thw on March 10, 2018.
//
//
// The strategy should be used with high leverages,
// never stop running,
// and is always long or short.

// Input
price = input(close)
MA1_Length = input(15)
MA2_Length = input(50)


haclose = request.security(heikinashi(syminfo.tickerid), timeframe.period, close)

// === FUNCTION EXAMPLE ===
start     = timestamp(2018, 01, 01, 20, 00)  // backtest start window
window()  => time >= start ? true : false // create function "within window of time"


// Calculation
MA1 = ema(price, MA1_Length)
MA2 = ema(price, MA2_Length)

// Strategy
long = haclose > MA1 and haclose > MA2 and MA1 > MA2 and window()
short = haclose < MA1 and haclose < MA2 and MA1 < MA2 and window()

// MA trend output color
MA2_color = long?lime:short?red:blue

strategy.entry("Long", strategy.long, when=long)
strategy.entry("Short", strategy.short, when=short)
strategy.close("Long", when=haclose < MA1)
strategy.close("Short", when=haclose > MA1)


// MA output
EMA1 = plot(MA1, title="EMA 1", style=linebr, linewidth=1, color=MA2_color)
EMA2 = plot(MA2, title="EMA 2", style=linebr, linewidth=3, color=MA2_color)
fill(EMA1, EMA2, color=silver, transp=50)

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)