
A estratégia é um sistema de identificação de turnos dinâmicos que combina a faixa de Brin e a deformação de preços. O objetivo é capturar os principais pontos de reversão do mercado e gerar sinais de negociação através da identificação de preços que quebram a faixa de Brin e quebram níveis de deformação importantes.
A estratégia baseia-se nos seguintes elementos-chave:
Faixa de Brin: usa uma média móvel simples de 20 ciclos (SMA) como traço central, com traços superiores e inferiores que aumentam e diminuem o dobro da diferença padrão. A faixa de Brin é usada para determinar se o preço está em um estado de sobrecompra ou sobrevenda.
A estratégia usa 5 linhas K para identificar as divisões de alta e baixa. A divisão de alta ocorre quando o máximo da linha K atual é maior que o máximo das duas linhas K anteriores e posteriores; a divisão de baixa é o oposto.
O sinal de ruptura:
Execução da transação:
Este design combina elementos de acompanhamento de tendências e inversão de negociação, com o objetivo de capturar os principais pontos de inflexão do mercado.
Confirmação múltipla: A estratégia combina dois indicadores técnicos independentes, a faixa de Brin e a fração de preço, para fornecer confirmação múltipla e reduzir o risco de falsas brechas.
Adaptação dinâmica: A banda de brinquedos pode se ajustar automaticamente à volatilidade do mercado, permitindo que a estratégia se adapte a diferentes condições de mercado.
Consideração de tendências e reversões: a estratégia pode tanto capturar a continuação da tendência (via ruptura de divisão) quanto identificar potenciais pontos de reversão (via ruptura de faixa de Brin), aumentando a flexibilidade da estratégia.
Pontos de entrada claros: define sinais de negociação claros através de condições claras (Breakouts e Breakouts de Brin) reduzindo a necessidade de julgamento subjetivo.
Auxílio visual: A estratégia traça as bandas de Brin e os pontos de divisão no gráfico, ajudando os comerciantes a entender intuitivamente a estrutura do mercado e as potenciais oportunidades de negociação.
Atraso: O uso de 20 ciclos de faixa de Brin e 5 linhas de K pode causar atraso no sinal, podendo perder algumas oportunidades em mercados rápidos.
Falso breakout: Em um mercado de turbulência, os preços podem frequentemente romper os níveis de Brinks ou de fracturas, mas sem formar uma verdadeira tendência, o que pode levar a falsos sinais frequentes.
Falta de mecanismo de stop-loss: A estratégia atual não tem regras de stop-loss claras, o que pode levar a perdas excessivas em transações erradas.
Excesso de negociação: Em mercados com muita volatilidade, a estratégia pode gerar muitos sinais de negociação, aumentando os custos de negociação.
Quadro de tempo único: a estratégia baseia-se apenas em dados de um único quadro de tempo, podendo ignorar a estrutura de mercado importante de um quadro de tempo maior.
Introdução de stop loss e paragem: pode-se considerar a configuração de um ponto de parada no meio da faixa de brinquedo ou do lado oposto da faixa de brinquedo e ajustar o nível de parada de forma dinâmica de acordo com o ATR.
Adição de filtros de negociação: Indicadores adicionais podem ser introduzidos (como RSI ou MACD) para filtrar potenciais falsos sinais de ruptura e melhorar a qualidade das negociações.
Análise de múltiplos períodos de tempo: Combinando informações de tendências de períodos de tempo maiores, apenas os sinais na direção da grande tendência podem ser executados, aumentando a taxa de vitória.
Parâmetros de otimização: Otimizar os parâmetros como o período de banda de Bryn, o número de linhas K de deformação, etc., para encontrar o conjunto de parâmetros mais adequado para o mercado específico.
Adição de filtros de volatilidade: pode ser necessário apertar as condições de negociação em períodos de baixa volatilidade para evitar o excesso de negociação no mercado de liquidação.
Considere a inclusão de stop loss móvel: o ponto de parada pode ser aumentado gradualmente com o aumento da lucratividade da negociação, bloqueando parte dos lucros.
Introdução de confirmação de volume de transação: pode ser combinado com informações de volume de transação para confirmar a validade da ruptura, aumentando a confiabilidade do sinal.
A estratégia de ponto de inflexão dinâmico baseada em bandas de Brin e breakouts de fracturas é um sistema integrado que combina a ideia de acompanhamento de tendências e negociação de reversão. Ele julga a posição relativa dos preços através do Brin, enquanto usa a fractura dos preços para identificar os níveis críticos de suporte e resistência.
A principal vantagem da estratégia reside na sua capacidade de multiplicar os mecanismos de confirmação e de se adaptar dinamicamente às flutuações do mercado. No entanto, ela também enfrenta o risco de atraso de sinais e de possíveis falsas rupturas. Para aumentar a robustez da estratégia, é recomendável a introdução de mecanismos de stop loss, análise de múltiplos prazos e filtros de negociação adicionais.
A estratégia tem o potencial de se tornar um sistema de negociação confiável através de otimização e ajuste contínuos. No entanto, como todas as estratégias de negociação, ela precisa ser testada e validada adequadamente em negociações reais.
/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Breakdown and Breakup Strategy", overlay=true)
// Bollinger Bands settings
length = input.int(20, title="Bollinger Bands Length")
src = close
mult = input.float(2.0, title="Bollinger Bands Multiplier")
// Calculate Bollinger Bands
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
plot(upper, color=color.red, linewidth=1)
plot(lower, color=color.red, linewidth=1)
plot(basis, color=color.blue, linewidth=1)
// Fractals identification
isBullishFractal = ta.highest(high, 5)[2] == high[2] and high[2] > high[1] and high[2] > high[3]
isBearishFractal = ta.lowest(low, 5)[2] == low[2] and low[2] < low[1] and low[2] < low[3]
// Variables to store the latest fractal values
var float latestBullishFractal = na
var float latestBearishFractal = na
if (isBullishFractal)
latestBullishFractal := high[2]
if (isBearishFractal)
latestBearishFractal := low[2]
// Conditions
breakdownCondition = close < lower
breakupCondition = close > latestBullishFractal
breakupUpperCondition = close > upper
breakdownBearishCondition = close < latestBearishFractal
// Variables to track state
var bool breakdownOccurred = false
var bool breakupUpperOccurred = false
// Signals
var bool plotBreakupSignal = false
var bool plotBreakdownSignal = false
// Logic for breakdown and breakup above bullish fractal
if (breakdownCondition)
breakdownOccurred := true
if (breakdownOccurred and breakupCondition)
plotBreakupSignal := true
breakdownOccurred := false
// Logic for breakup and breakdown below bearish fractal
if (breakupUpperCondition)
breakupUpperOccurred := true
if (breakupUpperOccurred and breakdownBearishCondition)
plotBreakdownSignal := true
breakupUpperOccurred := false
// Plot signals as icons
plotshape(series=plotBreakupSignal, location=location.abovebar, color=color.green, style=shape.triangleup, title="Breakup", size=size.small)
plotshape(series=plotBreakdownSignal, location=location.belowbar, color=color.red, style=shape.triangledown, title="Breakdown", size=size.small)
// Plotting fractals for reference
plotshape(series=isBullishFractal, location=location.abovebar, color=color.green, style=shape.triangleup, title="Bullish Fractal", offset=-2)
plotshape(series=isBearishFractal, location=location.belowbar, color=color.red, style=shape.triangledown, title="Bearish Fractal", offset=-2)
// Reset signals
plotBreakupSignal := false
plotBreakdownSignal := false
if isBullishFractal
strategy.entry("Enter Long", strategy.long)
else if isBearishFractal
strategy.entry("Enter Short", strategy.short)