La estrategia se basa en el indicador de Bollinger Bands. Captura las tendencias del mercado al ir corto cuando el precio toca la banda superior y ir largo cuando toca la banda inferior. Además, la estrategia introduce el concepto de piramidado, donde continuará agregando posiciones en la dirección original si el número de posiciones no ha alcanzado el máximo establecido.
Las bandas de Bollinger se componen de tres líneas. La banda media es el promedio móvil simple del precio de cierre. Las bandas superior e inferior son un cierto número de desviaciones estándar por encima y por debajo de la banda media. Dado que los precios siempre fluctúan alrededor de la media, las bandas superior e inferior de las bandas de Bollinger se pueden ver como un rango de presión para los precios. Cuando el precio rompe la banda superior, indica una fuerte tendencia al alza y se puede tomar una posición larga; una ruptura por debajo de la banda inferior indica una fuerte tendencia a la baja y se puede tomar una posición corta. Al mismo tiempo, cuando el número de posiciones es menor que el máximo establecido, la estrategia continuará agregando posiciones sobre la base de la posición original, amplificando la intensidad de la captura de tendencia.
La estrategia utiliza las características de tendencia de las bandas de Bollinger. Al ingresar posiciones cuando el precio toca las bandas superior e inferior, y amplificar la intensidad de la captura de tendencia a través de la pirámide, la idea general es simple y efectiva. Sin embargo, también tiene cierto retraso y sensibilidad de parámetros. En aplicaciones prácticas, se debe prestar atención a la optimización de parámetros y gestión de posiciones. También se puede considerar combinarlo con otros indicadores de señal para obtener un rendimiento de estrategia más robusto.
/*backtest start: 2024-03-01 00:00:00 end: 2024-03-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Bollinger Bands Breakout Strategy", overlay=true) // Définition des paramètres length = input(20, title="Bollinger Bands Length") multiplier = input(2.0, title="Multiplier") pyramiding = input(5, title="Pyramiding") // Calcul des bandes de Bollinger basis = ta.sma(close, length) dev = multiplier * ta.stdev(close, length) upper_band = basis + dev lower_band = basis - dev // Règles d'entrée buy_signal = close <= lower_band sell_signal = close >= upper_band // Gestion des positions if (buy_signal) strategy.entry("Buy", strategy.long) if (sell_signal) strategy.entry("Sell", strategy.short) // Pyramiding if (strategy.opentrades < pyramiding) strategy.entry("Buy", strategy.long) else if (strategy.opentrades > pyramiding) strategy.entry("Sell", strategy.short) // Tracé des bandes de Bollinger plot(basis, color=color.blue) plot(upper_band, color=color.red) plot(lower_band, color=color.green)