Estrategia de ruptura de la oscilación de la banda estocástica MACD


Fecha de creación: 2023-12-11 11:48:27 Última modificación: 2023-12-11 11:48:27
Copiar: 0 Número de Visitas: 885
1
Seguir
1621
Seguidores

Estrategia de ruptura de la oscilación de la banda estocástica MACD

Descripción general

La Estrategia de ruptura de oscilación de la zona de oscilación de la MACD Stochastics es una estrategia de negociación cuantitativa que combina el indicador MACD con el indicador Stochastics. La estrategia trata de identificar la dirección de la tendencia de los precios de las acciones y entrar en posiciones cuando los precios se rompen desde la zona de oscilación.

Al entrar en una posición, la estrategia considera las señales de los dos indicadores MACD y Stochastics al mismo tiempo para mejorar la calidad de las entradas. Además, la estrategia prefiere un punto de parada y un punto de parada para controlar el riesgo de manera efectiva.

Principio de estrategia

La estrategia de ruptura de la oscilación de la franja de ondas del MACD Stochastics se basa principalmente en los siguientes principios:

  1. Los indicadores MACD son eficaces para identificar la dirección y la intensidad de las tendencias de los precios de las acciones
  2. El indicador de Stochastics puede identificar si una acción está sobrecompra o sobreventa
  3. Cuando los precios de las acciones oscilan durante mucho tiempo, es muy probable que superen los rangos de precios anteriores, lo que genera una mayor tendencia direccional.
  4. Combinando las señales de los indicadores MACD y Stochastics, se puede ingresar a tiempo para mejorar la calidad de las entradas cuando las acciones superan el rango de oscilación del rango de ondas

En concreto, la estrategia utiliza la intersección de la línea DIFF y la línea DEA del indicador MACD como una señal para determinar la dirección de la tendencia de los precios. Cuando la DIFF rompe la DEA hacia arriba, se genera una señal múltiple y, a la inversa, se genera una señal de cabeza vacía.

Al mismo tiempo, la línea K de Stochastics se cruza hacia arriba o hacia abajo con la línea D cerca de las zonas de sobreventa y sobrecompra (default 30 y 70), lo que también genera una señal de negociación.

Cuando el MACD y el Stochastics dan señales simultáneas de sincronización, la estrategia elige la entrada. En este momento, es probable que el precio de las acciones produzca una gran ruptura.

Una vez en la entrada, la estrategia establece un punto de parada y un punto de parada razonables. Un punto de parada razonable puede controlar eficazmente las pérdidas individuales, y un punto de parada puede bloquear las ganancias.

Análisis de las ventajas

La estrategia de ruptura de la oscilación de la banda de ondas del MACD Stochastics tiene las siguientes ventajas:

  1. Combinación de múltiples indicadores para mejorar la calidad de la señal

La estrategia utiliza MACD y Stochastics para filtrar falsas señales y mejorar la calidad de las entradas.

  1. El blog también muestra cómo el gobierno de la República Democrática del Congo ha cambiado la situación.

Las estrategias están especialmente diseñadas para capturar las rupturas de los precios de las acciones después de una larga oscilación. Estas tendencias suelen ser más amplias.

  1. Mecanismos optimizados para detener los daños y controlar los riesgos

La estrategia tiene un parámetro de stop loss incorporado, que permite controlar razonablemente las pérdidas individuales y bloquear los beneficios a tiempo.

Análisis de riesgos

A pesar de que la estrategia de ruptura de la oscilación de la franja de ondas del MACD Stochastics ha sido cuidadosamente diseñada, existen ciertos riesgos:

  1. Se perdió la oportunidad de entrar.

El precio de las acciones puede tener una falsa ruptura antes de la ruptura. Si el momento de entrada no es elegido correctamente, puede que la entrada se convierta en un punto de entrada perdido.

  1. El fracaso de la brecha

A pesar de la preparación adecuada antes de la brecha, existe la posibilidad de que la brecha falle. En este caso, se producen pérdidas.

  1. Optimización de parámetros incorrecta

La configuración de los parámetros de la estrategia puede tener un gran impacto en los resultados. Si los parámetros se ajustan incorrectamente, hay un gran descuento.

En relación con estos riesgos, se puede optimizar de la siguiente manera:

  1. Combinación de otros indicadores para filtrar señales

  2. Intervención humana para asegurar la posición de ruptura

  3. Pruebas de optimización de parámetros múltiples

Dirección de optimización

La estrategia de ruptura de la oscilación de la franja de ondas del MACD Stochastics todavía tiene espacio para una optimización adicional:

  1. Optimización de los parámetros del MACD para encontrar la mejor combinación de parámetros

  2. Optimización de los parámetros de Stochastics para encontrar la mejor combinación de parámetros

  3. Añadir otras combinaciones de indicadores, como KDJ, BOLL, etc., para mejorar aún más la calidad de las entradas

  4. Prueba de diferentes tiempos de tenencia para optimizar las estrategias de stop-loss

  5. Prueba de la variabilidad de parámetros de diferentes indicadores de negociación

  6. Aumento de algoritmos de aprendizaje automático para optimizar automáticamente los parámetros

Resumir

La estrategia de ruptura de la oscilación de la franja de ondas del MACD Stochastics utiliza un conjunto de dos indicadores, el MACD y el Stochastics, para obtener una entrada de alta calidad en el momento de la ruptura de la oscilación de la franja de ondas. Al mismo tiempo, ayuda a controlar el riesgo de manera efectiva con una estrategia de suspensión de pérdidas.

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

//@version=5
strategy(title="macd stoch strategy", shorttitle="benzo MACD stoch",overlay=true)
// Getting inputs
fast_length = input(title = "Fast Length", defval = 180)
slow_length = input(title = "Slow Length", defval = 390)
src = input(title = "Source", defval = close)
signal_length = input.int(title = "Signal Smoothing",  minval = 1, maxval = 500, defval = 135)
sma_source = input.string(title = "Oscillator MA Type",  defval = "EMA", options = ["SMA", "EMA"])
sma_signal = input.string(title = "Signal Line MA Type", defval = "EMA", options = ["SMA", "EMA"])
// Calculating
fast_ma = sma_source == "SMA" ? ta.sma(src, fast_length) : ta.ema(src, fast_length)
slow_ma = sma_source == "SMA" ? ta.sma(src, slow_length) : ta.ema(src, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal == "SMA" ? ta.sma(macd, signal_length) : ta.ema(macd, signal_length)
hist = macd - signal

// hline(0, "Zero Line", color = color.new(#787B86, 50))
// plot(hist, title = "Histogram", style = plot.style_columns, color = (hist >= 0 ? (hist[1] < hist ? #26A69A : #B2DFDB) : (hist[1] < hist ? #FFCDD2 : #FF5252)))
// plot(macd,   title = "MACD",   color = #2962FF)

// plot(signal, title = "Signal", color = #FF6D00)

periodK = input.int(14, title="%K Length", minval=1)
smoothK = input.int(1, title="%K Smoothing", minval=1)
periodD = input.int(3, title="%D Smoothing", minval=1)
k = ta.sma(ta.stoch(close, high, low, periodK), smoothK)
d = ta.sma(k, periodD)
// plot(k, title="%K", color=#2962FF)
// plot(d, title="%D", color=#FF6D00)
// h0 = hline(80, "Upper Band", color=#787B86)
// hline(50, "Middle Band", color=color.new(#787B86, 50))
// h1 = hline(20, "Lower Band", color=#787B86)
// fill(h0, h1, color=color.rgb(33, 150, 243, 90), title="Background")


// Make inputs that set the take profit % (optional)
longProfitPerc = input.float(3, title="Long Take Profit (%)", minval=0.0, step=0.1) * 0.01

shortProfitPerc = input.float(3, title="Short Take Profit (%)",minval=0.0, step=0.1) * 0.01

// Calculate trading conditions
enterLong  = macd>signal and ta.crossover(k,30)
enterShort = macd<signal and ta.crossunder(k,70)

// Figure out take profit price
longExitPrice  = strategy.position_avg_price * (1 + longProfitPerc)
shortExitPrice = strategy.position_avg_price * (1 - shortProfitPerc)

// Plot take profit values for confirmation
plot(strategy.position_size > 0 ? longExitPrice : na,
     color=color.green, style=plot.style_circles,
     linewidth=3, title="Long Take Profit")

plot(strategy.position_size < 0 ? shortExitPrice : na,
     color=color.red, style=plot.style_circles,
     linewidth=3, title="Short Take Profit")

// Submit entry orders
if enterLong
    strategy.entry("long", strategy.long)

if enterShort
    strategy.entry("short", strategy.short)

// STEP 3:
// Submit exit orders based on take profit price
if strategy.position_size > 0
    strategy.exit("long TP", limit=longExitPrice)

if strategy.position_size < 0
    strategy.exit("short TP", limit=shortExitPrice)