Usando a estratégia de consolidação de rompimento de bandas de Bollinger


Data de criação: 2024-01-31 15:08:46 última modificação: 2024-01-31 15:08:46
cópia: 0 Cliques: 540
1
focar em
1617
Seguidores

Usando a estratégia de consolidação de rompimento de bandas de Bollinger

Visão geral

A estratégia usa o indicador de Brin para determinar se o preço está em um período de integração, e usa breakout para determinar entradas e saídas. No geral, a estratégia utiliza principalmente o cenário agitado da integração de preços para lucrar.

Princípio da estratégia

A estratégia primeiro calcula uma média móvel simples de preços de fechamento de 20 dias como o meio da faixa de Bryn e calcula 2 vezes a diferença padrão como a largura da faixa de Bryn. Quando o preço é acima da faixa de cima, é julgado como um uptrend, e quando o preço é abaixo da faixa de baixo, é julgado como um downtrend.

Quando o preço está acima da trajetória do cinturão de Bryn, é considerado um período de integração. Quando um sinal de ruptura é detectado, é feito um ingresso mais longo. Quando o preço é novamente abaixo da trajetória, é feito um equilíbrio.

O Stop Loss é definido como o dobro do ATR.

Análise de vantagens

A estratégia baseia-se principalmente nas propriedades de integração e ruptura da faixa de brinquedos, com as seguintes vantagens:

  1. O potencial de lucro é grande, aproveitando a dinâmica da integração de preços
  2. Indicadores de correia de Brin são intuitivos e os parâmetros são fáceis de otimizar
  3. Seguir a tendência e evitar a queda

Análise de Riscos

A estratégia também apresenta alguns riscos:

  1. A falha de sinal de ruptura pode causar prejuízos.
  2. A paralisação é muito grande e os prejuízos aumentam.
  3. Parâmetros da faixa de Bryn estão mal definidos e o indicador não funciona

Resposta:

  1. Falso avanço no indicador de preços combinados
  2. Optimizar o intervalo de parada e reduzir a perda individual
  3. Testar diferentes parâmetros de faixa de Bryn e escolher o melhor parâmetro

Direção de otimização

A estratégia pode ser otimizada em várias direções:

  1. Regras de determinação integradas podem introduzir mais indicadores e evitar sinais errados
  2. Aumentar a filtragem de tendências e decidir fazer mais curto-circuito de acordo com a direção da tendência
  3. Aumentar os métodos de stop loss, como o rastreamento de stop loss, para melhor controlar o risco

Resumir

A estratégia geral é mais simples e direta, alcançando maiores lucros por meio da captura de energia agregada trazida pela integração de preços. Há maior espaço para otimização, pode ser ajustada em termos de regras de entrada, modo de parada de perdas, etc., para obter um lucro mais estável sob a premissa de controlar o risco.

Código-fonte da estratégia
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Consolidation Breakout Strategy", shorttitle="CBS", overlay=true)

// Parameters
length = input(20, title="Bollinger Bands Length")
mult = input(2.0, title="Bollinger Bands Multiplier")
risk = input.float(1, title="Risk per Trade (%)") / 100

// Calculate Bollinger Bands
basis = ta.sma(close, length)
dev = mult * ta.stdev(close, length)
upper = basis + dev
lower = basis - dev

// Entry Conditions
consolidating = ta.crossover(close, upper) and ta.crossunder(close, lower)

// Exit Conditions
breakout = ta.crossover(close, upper) or ta.crossunder(close, lower)

// Risk Management
atrVal = ta.atr(14)
stopLoss = atrVal * input.float(2, title="Stop Loss Multiplier", minval=0.1, maxval=5)

// Entry and Exit Conditions
longEntry = breakout and close > upper
shortEntry = breakout and close < lower

if (longEntry)
    strategy.entry("Long", strategy.long)

if (shortEntry)
    strategy.entry("Short", strategy.short)

if (longEntry and close < basis - stopLoss)
    strategy.close("Long Exit")

if (shortEntry and close > basis + stopLoss)
    strategy.close("Short Exit")

// Plot Entry and Exit Points
plotshape(consolidating, style=shape.triangleup, location=location.belowbar, color=color.rgb(30, 255, 0), title="Entry Signal")
plotshape(breakout, style=shape.triangledown, location=location.abovebar, color=color.rgb(255, 0, 0), title="Exit Signal")