Estratégia de rompimento da banda de Bollinger


Data de criação: 2023-09-19 16:06:56 última modificação: 2023-09-19 16:06:56
cópia: 2 Cliques: 821
1
focar em
1617
Seguidores

Visão geral

A estratégia baseia-se no indicador da faixa de Brin, fazendo mais quando o preço quebra a faixa de Brin para baixo e fechando quando o preço toca a faixa de Brin para cima. A estratégia usa o princípio de inclusão da faixa de Brin para rastrear a quebra anormal do preço e alcançar o objetivo de comprar baixo e vender alto.

Princípio da estratégia

  1. Calcule o SMA da linha central da faixa de Bryn, usando uma média móvel simples do preço de fechamento recente.

  2. A diferença padrão é StdDev, que reflete a amplitude de flutuação dos preços.

  3. O SMA da linha central, somado ao desvio da diferença padrão, é traçado por Brin.

  4. O SMA da linha central, menos o desvio do desvio padrão, é traçado por Brin.

  5. Quando o preço de fechamento se aproxima de uma ruptura do trajeto de baixa para cima, faça uma entrada adicional.

  6. Quando o preço toca a linha, considere que o preço é anormal e saia da posição.

Análise de vantagens

A principal vantagem desta estratégia é que ela utiliza as características estatísticas dos indicadores de Brinks para rastrear os movimentos anormais do mercado e capturar as tendências. Comparada com a estratégia de média móvel convencional, a estratégia de Brinks tem vantagens:

  1. O Brin corre para cima e para baixo e adapta-se automaticamente às flutuações do mercado.

  2. A brecha é mais confiável como sinal de entrada.

  3. O regresso ao eixo central é um sinal de parada razoável.

  4. Os parâmetros podem ser ajustados para diferentes mercados.

  5. Pode ser usado para capturar tendências de linha média e longa, mas também para as de linha curta.

Análise de Riscos

Os principais riscos potenciais desta estratégia são:

  1. A banda de brinquedos não funciona bem no mercado horizontal.

  2. O sinal de ruptura pode ser falso e deve ser julgado com cautela.

  3. A posição do pára-choque é demasiado ideal e pode ser melhorada para a prática.

  4. A configuração incorreta dos parâmetros pode levar a transações excessivamente frequentes ou conservadoras.

  5. O ciclo de resposta deve ser longo o suficiente para evitar a curvatura.

Correspondentes medidas de gestão de risco:

  1. O indicador de volume de transações e o sinal de filtragem.

  2. Optimizar parâmetros, testar a eficácia de dados em diferentes mercados.

  3. Adição de parada móvel, parada rotativa.

  4. Os sinais de avaliação devem ser desviados para evitar a perseguição.

Direção de otimização

A estratégia pode ser melhorada em:

  1. Experimente diferentes tamanhos de parâmetros de faixa de Bryn para encontrar a melhor combinação.

  2. Aumentar a linha média, MACD e outros indicadores filtrando sinais de ruptura.

  3. Aplicação de algoritmos de aprendizagem de máquina para otimizar os parâmetros da faixa de Bryn.

  4. Ao mesmo tempo, avaliar os pontos fortes e fracos e ajustar as posições.

  5. Recolher dados de períodos mais longos, testar a estabilidade da estratégia.

  6. Adição de um mecanismo de stop loss para controlar o risco.

Resumir

A estratégia de correia de Brin é, em geral, uma estratégia de acompanhamento de tendências confiável. Ela é capaz de capturar de forma eficaz os preços de flutuação anormal. Mas também devemos estar atentos ao seu desvio com a prática real, e otimizar continuamente os parâmetros. Se for usado em um mercado real, é necessário realizar um rigoroso gerenciamento de risco e controlar os perdas individuais.

Código-fonte da estratégia
/*backtest
start: 2023-09-11 00:00:00
end: 2023-09-12 04:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4

strategy(title="BB training No Repainting (OTS Mode)", overlay=true)


// Strategy Rules:
// 1. Enter trade when price crosses above the lower band
// 2. Exit trade when price touches the upper band
// 

// Chart Properties
testStartYear = input(2010, "Backtest Start Year")
testStartMonth = input(01, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, 0, 0)

testStopYear = input(2030, "Backtest Stop Year")
testStopMonth = input(12, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, 0, 0)

// A switch to control background coloring of the test period
testPeriodBackground = input(title="Color Background?", type=input.bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and time >= testPeriodStart and time <= testPeriodStop ? #6c6f6c : na
bgcolor(testPeriodBackgroundColor, transp=97)

// User provided values
smaLength = input(title="SMA Length", type=input.integer, defval=20) // Middle band period length (moving average)
stdLength = input(title="StdDev Length", type=input.integer, defval=20) // Range to apply bands to
ubOffset = input(title="Upper Band Offset", type=input.float, defval=2.0, step=0.5) // Number of standard deviations above MA
lbOffset = input(title="Lower Band Offset", type=input.float, defval=2.0, step=0.5) // Number of standard deviation below MA

testPeriod() =>
    time >= testPeriodStart and time <= testPeriodStop ? true : false

smaValue = sma(close, smaLength) // Middle band
stdDev = stdev(close, stdLength)
upperBand = smaValue + stdDev * ubOffset // Top band
lowerBand = smaValue - stdDev * lbOffset // Bottom band

// Plot bands to chart
plot(series=smaValue, title="SMA", color=color.green)
plot(series=upperBand, title="UB", color=color.blue, linewidth=2)
plot(series=lowerBand, title="LB", color=color.blue, linewidth=2)

longCondition = (crossover(close, lowerBand))
closeLongCondition = (close >= upperBand)

if (longCondition and testPeriod())
    strategy.entry(id="CALL", long=true)

strategy.close(id="CALL", when=closeLongCondition)