Estrategia de ruptura de la banda de Bollinger

El autor:¿ Qué pasa?, Fecha: 2023-09-11 12: 24:43
Las etiquetas:

Principios de estrategia

Esta estrategia se opera sobre la base de las rupturas de la banda de Bollinger. Las bandas de Bollinger consisten en una banda media, una banda superior y una banda inferior. La banda media es un promedio móvil de n períodos, mientras que las bandas superior e inferior se calculan sumando / restando x desviaciones estándar de la banda media. Una ruptura por encima de la banda superior indica una tendencia alcista, mientras que una ruptura por debajo de la banda inferior indica una tendencia bajista. Los parámetros clave para construir las bandas de Bollinger son el período de la banda media n y el multiplicador de desviación estándar m. Los valores típicos son 20 períodos y 1.5x desviaciones estándar.

La ventaja de esta estrategia es usar bandas de Bollinger para determinar las tendencias y la volatilidad del mercado, y entrar basándose en señales de ruptura y salir en retrocesos. Sin embargo, existen problemas como el retraso de la banda, señales de ruptura poco confiables y falta de stop loss. En general, esta estrategia funciona mejor en mercados con tendencias claras, pero debe usarse con precaución. La optimización de parámetros, la adición de paradas y filtros de señal pueden mejorar la estabilidad de la estrategia.

En resumen, si bien la estrategia de ruptura de la banda de Bollinger tiene algunos méritos, también conlleva riesgos significativos.


/*backtest
start: 2022-09-04 00:00:00
end: 2023-09-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="Bollinger Band Breakout", shorttitle = "BB-BO",default_qty_type = strategy.percent_of_equity,default_qty_value = 100, overlay=true)
source = close
length = input(20, minval=1, title = "Period") //Length of the Bollinger Band 
mult = input(1.5, minval=0.001, maxval=50, title = "Standard Deviation") // Use 1.5 SD for 20 period MA; Use 2 SD for 10 period MA 

basis = sma(source, length)
dev = mult * stdev(source, length)

upper = basis + dev
lower = basis - dev

if (crossover(source, upper))
    strategy.entry("Long", strategy.long)


if(crossunder(source, basis))
    strategy.close("Long")

plot(basis, color=color.red,title= "SMA")
p1 = plot(upper, color=color.blue,title= "UB")
p2 = plot(lower, color=color.blue,title= "LB")
fill(p1, p2)


Más.