Estrategia de cruce de MACD

EMA MA
Fecha de creación: 2024-04-18 17:56:23 Última modificación: 2024-04-18 17:56:23
Copiar: 0 Número de Visitas: 716
1
Seguir
1617
Seguidores

Estrategia de cruce de MACD

Descripción general

La estrategia se cruza usando dos medias móviles indexadas de diferentes períodos (EMA), generando una señal de compra cuando el EMA rápido cruza el EMA lento de arriba a abajo y una señal de venta cuando el EMA rápido cruza el EMA lento de arriba a abajo. La estrategia puede aplicarse a una variedad de instrumentos financieros y períodos de tiempo, como el oro es más efectivo en el ciclo de 2 horas, el bitcoin es más efectivo en el gráfico de líneas de sol.

Principio de estrategia

  1. Calcula el EMA rápido (el ciclo predeterminado es 12) y el EMA lento (el ciclo predeterminado es 26).
  2. Se definen las zonas de múltiples encabezados ((EMA rápido por encima de EMA lento y el precio por encima de EMA rápido) y las zonas de encabezado vacío ((EMA rápido por debajo de EMA lento y el precio por debajo de EMA rápido).
  3. Comprar cuando se convierte de una zona de cabezas vacías a una zona de cabezas múltiples y vender cuando se convierte de una zona de cabezas múltiples a una zona de cabezas vacías.
  4. En el gráfico, marque las áreas con más y con menos puntos en verde y rojo, y marque las señales de compra y venta con flechas.

Ventajas estratégicas

  1. Es fácil de entender y está diseñado para principiantes.
  2. La aplicación es amplia y puede usarse en una variedad de instrumentos financieros y períodos de tiempo.
  3. La capacidad de seguimiento de tendencias es alta y permite captar tendencias a medio y largo plazo.
  4. Los parámetros son ajustables, lo que aumenta la flexibilidad.

Riesgo estratégico

  1. En un mercado convulso es fácil generar señales erróneas que causan pérdidas.
  2. La reacción es más lenta cuando hay un cambio de tendencia, lo que puede provocar un deslizamiento.
  3. La elección incorrecta de los parámetros puede afectar la eficacia de la estrategia.

Dirección de optimización de la estrategia

  1. Añadir filtros de tendencia, por ejemplo, sólo cuando el ADX es mayor que un valor, para reducir las pérdidas en mercados convulsivos.
  2. Optimización del tiempo de entrada y salida, como el uso de ATR para decidir la parada de pérdidas y reducir las pérdidas individuales.
  3. Optimización de los parámetros para encontrar la combinación óptima de parámetros y mejorar la estabilidad y la rentabilidad.
  4. En combinación con otros indicadores auxiliares, como MACD, RSI, etc., mejora la precisión de la señal.

Resumir

La estrategia de cruce del MACD es una estrategia simple basada en el seguimiento de tendencias, que tiene la ventaja de ser sencilla, práctica y de gran alcance, pero tiene el inconveniente de ser difícil de capturar el giro de la tendencia y la selección de los parámetros. Se puede mejorar el rendimiento de la estrategia mediante el filtrado de tendencias, la optimización de las salidas, la selección de parámetros y la combinación de otros indicadores.

Código Fuente de la Estrategia
/*backtest
start: 2023-04-12 00:00:00
end: 2024-04-17 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy('Advance EMA Crossover Strategy', overlay=true, precision=6)
//****************************************************************************//
// CDC Action Zone is based on a simple EMA crossover 
// between [default] EMA12 and EMA26
// The zones are defined by the relative position of 
// price in relation to the two EMA lines
// Different zones can be use to activate / deactivate 
// other trading strategies
// The strategy can also be used on its own with 
// acceptable results, buy on the first green candle
// and sell on the first red candle
//****************************************************************************//
// Define User Input Variables

xsrc = input(title='Source Data', defval=close)
xprd1 = input(title='Fast EMA period', defval=12)
xprd2 = input(title='Slow EMA period', defval=26)
xsmooth = input(title='Smoothing period (1 = no smoothing)', defval=1)
fillSW = input(title='Paint Bar Colors', defval=true)
fastSW = input(title='Show fast moving average line', defval=true)
slowSW = input(title='Show slow moving average line', defval=true)
plotSigsw = input(title='Plot Buy/Sell Signals?', defval=true)

//****************************************************************************//
//Calculate Indicators

xPrice = ta.ema(xsrc, xsmooth)

FastMA = ta.ema(xPrice, xprd1)
SlowMA = ta.ema(xPrice, xprd2)

//****************************************************************************//
// Define Color Zones and Conditions

BullZone = FastMA > SlowMA and xPrice > FastMA  // Bullish Zone
BearZone = FastMA < SlowMA and xPrice < FastMA  // Bearish Zone

//****************************************************************************//
// Strategy Entry and Exit Conditions

if (BullZone and not BullZone[1])
    strategy.entry("Buy", strategy.long)  // Buy on the transition into BullZone

if (BearZone and not BearZone[1])
    strategy.close("Buy")  // Sell on the transition into BearZone

//****************************************************************************//
// Display color on chart

plotcolor = BullZone ? color.green : BearZone ? color.red : color.gray
barcolor(color=fillSW ? plotcolor : na)

//****************************************************************************//
// Plot Fast and Slow Moving Averages

plot(fastSW ? FastMA : na, color=color.red, title="Fast EMA", linewidth=2)
plot(slowSW ? SlowMA : na, color=color.blue, title="Slow EMA", linewidth=2)

//****************************************************************************//
// Plot Buy and Sell Signals

plotshape(series=plotSigsw and BullZone and not BullZone[1], location=location.belowbar, color=color.green, style=shape.labelup, title="Buy Signal")
plotshape(series=plotSigsw and BearZone and not BearZone[1], location=location.abovebar, color=color.red, style=shape.labeldown, title="Sell Signal")

//****************************************************************************//