En la carga de los recursos... Cargando...

Estrategia de combinación de bandas de Bollinger y promedios móviles

El autor:¿ Qué pasa?, Fecha: 2024-02-02 17:47:12
Las etiquetas:

img

Resumen general

Esta estrategia combina las bandas de Bollinger y los promedios móviles, utilizando la banda superior y la banda inferior de las bandas de Bollinger para determinar las rupturas de precios y utilizando la cruz de oro de la media móvil rápida y la cruz de la muerte con la media móvil lenta para determinar las tendencias. Se hace largo cuando el precio se rompe por encima de la banda superior de Bollinger y la media móvil rápida cruza por encima de la media móvil lenta. Se hace corto cuando el precio se rompe por debajo de la banda inferior de Bollinger y la media móvil rápida cruza por debajo de la media móvil lenta.

Principio de la estrategia

Esta estrategia utiliza principalmente dos indicadores técnicos, bandas de Bollinger para determinar los niveles de precios y promedios móviles para determinar las tendencias.

La banda media de Bollinger es la media móvil simple del precio, la banda superior es la banda media + 2 desviación estándar, la banda inferior es la banda media - 2 desviación estándar. Cuando el precio se acerca a la banda superior, indica una condición de sobrecompra. Cuando el precio se acerca a la banda inferior, indica una condición de sobreventa.

El promedio móvil rápido es el promedio móvil simple de 50 períodos de precio y el promedio móvil lento es el promedio móvil simple de 200 períodos. Cuando el MA rápido cruza por encima del MA lento, indica una tendencia alcista o una cruz de oro. Cuando el MA rápido cruza por debajo del MA lento, indica una tendencia bajista o una cruz de muerte.

Las señales de entrada requieren cumplir ambas condiciones simultáneamente: la ruptura del precio por encima de la banda superior de Bollinger indica la ruptura de un nivel de resistencia Y el cruce rápido del MA por encima del MA lento indica una tendencia alcista; la ruptura del precio por debajo de la banda inferior de Bollinger indica la ruptura de un nivel de soporte Y la ruptura rápida del MA por debajo del MA lento indica una tendencia bajista.

Ventajas

  1. El uso de la doble confirmación puede filtrar eficazmente los errores falsos y hacer que las entradas sean más precisas.

  2. Las bandas de Bollinger determinan visualmente los niveles de soporte y resistencia, las medias móviles determinan confiablemente las tendencias, la combinación se complementa entre sí.

  3. Alta flexibilidad de optimización en parámetros como el período de Bollinger, el multiplicador de desviación estándar, los períodos de MA, etc. Se adapta a más entornos de mercado.

  4. Simple de implementar, fácil de entender, menos código, se puede utilizar directamente en el comercio en vivo.

Los riesgos

  1. Tanto las bandas de Bollinger como las MAs pueden fallar en ciertos casos, la doble confirmación también puede fallar en conjunto, causando entradas erróneas.

  2. Los MA tienen retraso en la emisión, pueden causar tiempos de entrada inexactos o oportunidades perdidas.

  3. Los ajustes de parámetros inadecuados, como el período de BB demasiado corto, los períodos de MA no igualados, etc., pueden socavar el rendimiento de la estrategia.

  4. Las estrategias de fuga son propensas a un impacto de fuga falso, incluso con doble confirmación.

Métodos como el ajuste dinámico de los parámetros, el estricto stop loss, combinados con otros indicadores pueden ayudar a reducir los riesgos.

Direcciones de optimización

  1. Introducir otros indicadores para comprobar la condición, por ejemplo, amplificación del volumen en las rupturas de BB, MACD para la determinación de tendencias, formando confirmaciones múltiples.

  2. Incorporar patrones de candelabro para ayudar a la hora de entrada, por ejemplo, martillo formado en el toque superior BB.

  3. Adoptar MAs dinámicas en lugar de MAs estáticas para mejorar aún más la determinación de tendencias.

  4. Establezca la optimización automática de parámetros para encontrar conjuntos de parámetros óptimos a través de pruebas de retroceso históricas.

  5. Ajuste el tamaño de la posición y los niveles de stop loss, establezca un stop loss estricto para controlar la pérdida.

Conclusión

Esta estrategia combina las bandas de Bollinger y los promedios móviles basados en indicadores técnicos, entra en posiciones solo cuando se cumplen tanto la ruptura de precio de la banda superior o inferior de las bandas de Bollinger como la cruz de oro / muerte de los MAs. Esto utiliza las bandas de Bollinger identificación intuitiva de soporte / resistencia y los promedios móviles determinación de tendencias confiables para complementarse entre sí y filtrar las falsas rupturas de manera efectiva. En general, esta es una estrategia práctica, fácil de implementar y vale la pena aplicar y optimizar en el comercio en vivo.


/*backtest
start: 2024-01-25 00:00:00
end: 2024-02-01 00:00:00
period: 2m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Bollinger Bands and Moving Averages Strategy", overlay=true)

// Bollinger Bands
length = input(20, minval=1, title="BB Length")
mult = input(2.0, minval=0.1, maxval=5, title="BB Standard Deviation")
src = close
basis = sma(src, length)
dev = mult * stdev(src, length)
upper = basis + dev
lower = basis - dev

// Moving Averages
ma1_length = input(50, minval=1, title="MA1 Length")
ma2_length = input(200, minval=1, title="MA2 Length")
ma1 = sma(src, ma1_length)
ma2 = sma(src, ma2_length)

// Strategy Conditions
longCondition = crossover(src, upper) and crossover(ma1, ma2)
shortCondition = crossunder(src, lower) and crossunder(ma1, ma2)

// Strategy Execution
strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)
strategy.close("Long", when=shortCondition)
strategy.close("Short", when=longCondition)

// Plotting
plot(basis, color=color.blue, title="Basis")
plot(upper, color=color.red, title="Upper")
plot(lower, color=color.green, title="Lower")
plot(ma1, color=color.orange, title="MA1")
plot(ma2, color=color.purple, title="MA2")


Más.