
La estrategia utiliza una combinación de bandas de Brin y promedios móviles para juzgar las rupturas de precios a través de las bandas de Brin en trayectoria ascendente y descendente, el uso de promedios móviles rápidos y promedios móviles lentos para juzgar la tendencia, el cruce de oro y el cruce de muerte de promedios móviles rápidos y rápidos para juzgar la tendencia, hacer más cuando se atraviesa una media móvil lenta en las bandas de Brin y una media móvil rápida en las bandas de Brin, y hacer un espacio en las bandas de Brin y una media móvil rápida en las bandas de Brin.
La estrategia utiliza una combinación de dos indicadores técnicos para determinar la tendencia de precios y promedios móviles utilizando principalmente bandas de Bryn.
La banda media de Brin es un promedio móvil simple de los precios, la banda superior es la banda media + 2 veces la diferencia estándar y la banda inferior es la banda media - 2 veces la diferencia estándar. Cuando el precio está cerca de la banda superior representa una situación de sobrecompra, cuando el precio está cerca de la banda inferior representa una situación de sobreventa.
La media móvil rápida es una media móvil simple de 50 ciclos de precios, y la media móvil lenta es una media móvil simple de 200 ciclos de precios. Cuando se cruza la media móvil lenta sobre la media móvil rápida, se representa una tendencia de mercado que se convierte en alza, es decir, una cruz de oro; cuando se cruza la media móvil lenta por debajo de la media móvil rápida, se representa una tendencia de mercado que se convierte en baja, es decir, una cruz de muerte.
La estrategia requiere que se cumplan dos condiciones al mismo tiempo para determinar la entrada: el precio que rompe la banda de Brin en el camino indica la ruptura de la resistencia y el cruce de la media móvil rápida en la media móvil lenta indica un aumento de la tendencia; el precio que rompe la banda de Brin en el camino indica la ruptura de la base de apoyo y el cruce de la media móvil rápida en la media móvil lenta indica una caída de la tendencia. De esta manera, se puede filtrar eficazmente el efecto de la falsa ruptura en la entrada.
El uso de un doble criterio puede filtrar efectivamente las brechas falsas y hacer que la entrada sea más precisa.
El juicio de la banda de Bryn apoya la resistencia de manera más intuitiva, el juicio de la media móvil es más fiable y el uso combinado es complementario.
El espacio para la optimización de parámetros es amplio y se puede optimizar mediante el ajuste de parámetros como la longitud de la banda de Brin, el múltiplo de la diferencia estándar y el ciclo de la media móvil, para adaptarse a un entorno de mercado más amplio.
La implementación es simple, fácil de entender, el código es pequeño y se puede usar directamente en el disco duro.
Tanto el cinturón de Bryn como el promedio móvil pueden fallar, y el juicio de doble condición también puede fallar al mismo tiempo, lo que provoca una entrada errónea.
Los problemas de retraso en las medias móviles pueden ocasionar una entrada inexacta o una oportunidad perdida.
La configuración incorrecta de los parámetros también puede afectar el rendimiento de la estrategia, por ejemplo, el período de la banda de Bryn es demasiado corto, el período de la media móvil no coincide, etc.
Las estrategias de ruptura son susceptibles a falsas rupturas, y no pueden evitarlas por completo, incluso con condiciones dobles.
Se puede reducir el riesgo estratégico mediante métodos tales como ajustes dinámicos de parámetros, paros estrictos y combinaciones con otros indicadores.
Se pueden introducir otros indicadores técnicos de juicio, como el volumen de transacciones amplificado para romper la banda de Brin, la tendencia de juicio MACD, etc., para formar juicios de múltiples condiciones.
Se puede combinar con la forma de la línea K para ayudar a determinar el momento de entrada, como el cierre de la cotización cuando el precio toca la banda de Brin y se forma un obstáculo.
Se puede configurar una media móvil dinámica en lugar de una media móvil estática para optimizar aún más la capacidad de determinar tendencias.
Se puede configurar la función de optimización automática de los parámetros para encontrar automáticamente la combinación óptima de parámetros a través de la retroalimentación histórica.
Se puede ajustar el punto de retención y el punto de parada, y se puede establecer un punto de parada más estricto para controlar las pérdidas.
La estrategia se basa en una combinación de indicadores técnicos de la banda de Brin y la media móvil, y se activa solo cuando se cumple la doble condición de que el precio rompa la banda de Brin para subir o bajar de reloj y el cruce de oro o muerte de la media móvil rápida. De esta manera, se utiliza tanto la intuitividad de la banda de Brin para juzgar la resistencia de soporte como la fiabilidad de la tendencia de los promedios móviles, que se complementan entre sí y pueden filtrar eficazmente el efecto de la falsa ruptura de la entrada en el mercado. En general, la estrategia es muy práctica, fácil de implementar y se puede optimizar en aplicaciones reales.
/*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")