Estratégia de oscilação de rompimento bilateral


Data de criação: 2024-01-03 11:29:24 última modificação: 2024-01-03 11:29:24
cópia: 1 Cliques: 630
1
focar em
1621
Seguidores

Estratégia de oscilação de rompimento bilateral

Visão geral

A estratégia de ruptura bilateral é uma estratégia de negociação quantitativa que usa o canal de Boehringer e o MACD para determinar os pontos de compra e venda. A estratégia é aplicada principalmente a variedades de situações de turbulência, como índices de futuros, divisas e moedas digitais. A principal idéia da estratégia é emitir sinais de compra e venda quando o preço quebra o canal de Boehringer.

Princípio da estratégia

A estratégia de ruptura bilateral usa o canal de Brin para determinar a amplitude da oscilação de preços. O canal de Brin inclui o meio, o topo e o fundo, onde o meio é a média móvel simples de n dias, e o topo e o fundo são os n dias de amplitude de onda real de k vezes mais e menos do meio. Quando o preço atravessa o fundo, acredita-se que a tendência pode ser invertida e emite um sinal de compra; Quando o preço atravessa o fundo, acredita-se que a tendência pode ser invertida e emite um sinal de venda.

Além de usar o canal de Brin para determinar o ponto de compra e venda, a estratégia também combina os sinais de negociação do indicador MACD. O indicador MACD inclui linhas DIF, DEA e MACD. A linha DIF é o diferencial entre a média móvel do índice de 12 dias e a média móvel do índice de 26 dias, a linha DEA é a média móvel do índice de 9 dias e a linha MACD é o diferencial entre a linha DIF e a linha DEA.

A regra de geração de sinais de negociação para uma estratégia de ruptura de choque bilateral com o indicador MACD é: emitir um sinal de compra quando o preço sobe através da trajetória de ruptura do canal; emitir um sinal de venda quando o preço sobe através da trajetória de ruptura do canal.

Análise de vantagens

A estratégia de ruptura bilateral tem as seguintes vantagens:

  1. Estratégias simples, claras, fáceis de entender e implementar, adequadas para aprendizagem de iniciantes;
  2. O uso do canal de Boolean para determinar a amplitude de oscilação dos preços, combinado com o MACD para identificar sinais de filtragem de indicadores, permite identificar oportunidades de reversão;
  3. A operação bilateral pode capturar repetidamente oportunidades de turbulência no mercado, reduzir a taxa de desinformação e aumentar a probabilidade de lucro;
  4. A estratégia tem menos parâmetros, é mais fácil de otimizar e funciona de forma mais estável.
  5. A estratégia tem uma certa robustez, e tem um bom desempenho em vários mercados.

Análise de Riscos

Apesar das vantagens de uma estratégia de choque bilateral, há também alguns riscos na negociação real, principalmente nos seguintes aspectos:

  1. As mudanças de comportamento de choque podem causar falhas de estratégia. Se o preço reentrar no canal logo após a ruptura do canal, pode haver risco de bloqueio;
  2. A configuração inadequada dos parâmetros do canal de Brin também afeta o desempenho da estratégia; se a configuração de banda larga for grande ou pequena, isso afetará o efeito de captura do ponto de compra e venda;
  3. Os parâmetros do indicador MACD incorretos podem causar sinais antecipados ou atrasados, afetando os níveis de lucro da estratégia;
  4. A estratégia não leva em consideração a gestão de fundos, com o risco de expansão de perdas.

Para minimizar os riscos acima, podemos otimizar as seguintes áreas:

  1. Combinando com indicadores de tendência, evitar sinais de retorno de preços de curto prazo;
  2. Teste e otimização dos parâmetros do indicador do canal de Bryn e do MACD para seleção dos melhores parâmetros;
  3. Controle de perdas individuais, em combinação com estratégias de stop loss;
  4. Adição de um módulo de gestão de posições para controlar o risco da conta de negociação.

Direção de otimização

A estratégia bilateral de ruptura com os tremores também tem espaço para uma maior otimização, principalmente a partir das seguintes direções:

  1. Combinação de mais indicadores para identificar sinais de compra e venda. Por exemplo, adicionar o julgamento do volume de transação, ampliando o sinal de ponto em sincronia com o preço e o volume de transação; ou adicionar o indicador RSI, para enviar sinais em áreas de supercompra e supervenda;
  2. Aumentar o mecanismo de parada automática. O uso de parada móvel ou parada percentual pode controlar efetivamente os prejuízos individuais;
  3. Aumentar os mecanismos de gerenciamento de postos, como gerenciamento de postos fixos, gerenciamento de Martingale, etc., para que os fundos sejam distribuídos racionalmente a cada construção de postos;
  4. Parameter tuning. Busca de combinações ótimas de parâmetros para o canal de Boolean e o indicador MACD, através da retroalimentação de mais dados históricos, para aumentar o nível de rentabilidade da estratégia.
  5. Análise de caminhada para a frente. Adaptação de parâmetros em tempo real, através de métodos de otimização dinâmica, para tornar o desempenho da estratégia mais estável

Resumir

A estratégia de ruptura bilateral do choque integra o canal de Brin e o indicador MACD para determinar o momento de compra e venda, aproveitando a operação de ruptura bilateral do preço, para capturar efetivamente a oportunidade de reversão na tendência do choque. A estratégia é simples, fácil de usar, flexível na escolha de parâmetros e tem um bom desempenho em várias variedades.

Código-fonte da estratégia
/*backtest
start: 2023-12-26 00:00:00
end: 2024-01-02 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3

strategy("Seitwärtsdoppelpenetration", overlay=false)

//Keltner Channel
source = open

useTrueRange = input(true)
length = input(20, minval=1)
mult = input(4.0)

ma = sma(source, length)
range = useTrueRange ? tr : high - low
rangema = sma(range, length)
upper = ma + rangema * mult
lower = ma - rangema * mult

crossUpper = crossover(source, upper)
crossLower = crossunder(source, lower)

//Entry
buyEntry = cross(lower,source)
sellEntry = cross(upper,source)

if (cross(lower,source))
    strategy.entry("buyEntry", strategy.long, comment="buyEntry")

if (cross(source, upper))
    strategy.entry("sellEntry", strategy.short, comment="sellEntry")

buyExit = cross(source, upper)
sellExit = cross(lower,source)

strategy.close("buyEntry", buyExit)
strategy.close("sellEntry", sellExit)