Estratégia de tendência quantitativa de cruzamento de bandas de Bollinger em nuvem com média móvel dupla

MA BB
Data de criação: 2024-12-27 15:54:08 última modificação: 2024-12-27 15:54:08
cópia: 2 Cliques: 431
1
focar em
1617
Seguidores

Estratégia de tendência quantitativa de cruzamento de bandas de Bollinger em nuvem com média móvel dupla

Visão geral

Esta estratégia é um sistema de negociação quantitativa baseado no Ichimoku Cloud. Essa estratégia usa principalmente os sinais de cruzamento do Leading Span A e do Leading Span B para determinar a direção da tendência do mercado e gerar sinais de negociação. A estratégia adota um método de julgamento dinâmico de faixa de preço, combinado com o princípio de cálculo do Canal Donchian, que pode capturar efetivamente os pontos de inflexão das tendências de mercado.

Princípio da estratégia

A lógica central da estratégia é baseada nos seguintes componentes principais:

  1. Linha de conversão: usa a mediana do canal Donchian de 9 períodos como um indicador de reação rápida
  2. Linha de base: usa a mediana do canal Donchian de 26 períodos como um indicador de tendência de médio prazo
  3. Leading Span A: Calculado a partir da média da linha de conversão e da linha de base
  4. Leading Span B: usa a mediana do canal Donchian de 52 períodos como um indicador de tendência de longo prazo
  5. Período de atraso: mova o preço de fechamento para trás 26 períodos

As condições de ativação dos sinais de negociação são as seguintes:

  • Sinal longo: Quando a banda líder A cruza a banda líder B para cima
  • Sinal curto: Quando a banda líder A cruza a banda líder B para baixo

Vantagens estratégicas

  1. Confirmação de tendência multidimensional: por meio da combinação de indicadores de diferentes períodos, a tendência do mercado pode ser avaliada de forma abrangente
  2. Alta confiabilidade do sinal: usar a travessia de nuvens como uma condição de disparo de sinal pode filtrar efetivamente sinais falsos
  3. Controle de risco perfeito: A própria estrutura da nuvem tem a função de suportar a pressão, fornecendo uma posição natural de stop loss para negociação
  4. Forte adaptabilidade: os parâmetros da estratégia podem ser ajustados de acordo com diferentes características do mercado, com forte universalidade

Risco estratégico

  1. Risco de atraso: Devido ao uso de um método de cálculo de período mais longo, pode haver um certo atraso nos sinais de entrada e saída
  2. Risco de mercado volátil: Em um mercado lateral e volátil, podem ocorrer sinais de rompimento falsos frequentes
  3. Sensibilidade dos parâmetros: Diferentes combinações de parâmetros podem levar a grandes diferenças no desempenho da estratégia
  4. Risco de rebaixamento: quando a tendência se inverte, você pode enfrentar um rebaixamento maior

Direção de otimização da estratégia

  1. Introdução de indicadores de volume: A eficácia da tendência pode ser confirmada pela combinação de mudanças no volume
  2. Otimizar a seleção de parâmetros: ajustar dinamicamente vários parâmetros de acordo com as características dos diferentes ciclos de mercado
  3. Adicionar indicadores auxiliares: Você pode adicionar indicadores como RSI ou MACD como sinais de confirmação auxiliares
  4. Melhorar o mecanismo de stop-loss: conceber estratégias de stop-loss mais flexíveis, como trailing stop-loss

Resumir

Esta estratégia é um sistema de negociação quantitativa que combina ferramentas clássicas de análise técnica para capturar oportunidades de mercado por meio de análise de tendências multidimensionais. Embora haja um certo atraso, ele tem boa confiabilidade e adaptabilidade no geral. Por meio de otimização e melhoria contínuas, espera-se que essa estratégia mantenha um desempenho estável em diferentes ambientes de mercado.

Código-fonte da estratégia
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-25 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © mrbakipinarli

//@version=6
strategy(title="Ichimoku Cloud Strategy", shorttitle="Ichimoku Strategy", overlay=true)

// Inputs for Ichimoku Cloud
conversionPeriods = input.int(9, minval=1, title="Conversion Line Length")
basePeriods = input.int(26, minval=1, title="Base Line Length")
laggingSpan2Periods = input.int(52, minval=1, title="Leading Span B Length")
displacement = input.int(26, minval=1, title="Lagging Span")

// Functions
donchian(len) => math.avg(ta.lowest(len), ta.highest(len))

// Ichimoku Components
conversionLine = donchian(conversionPeriods)
baseLine = donchian(basePeriods)
leadLine1 = math.avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)

// Plotting Ichimoku Components
plot(conversionLine, color=color.new(#2962FF, 0), title="Conversion Line")
plot(baseLine, color=color.new(#B71C1C, 0), title="Base Line")
plot(close, offset = -displacement + 1, color=color.new(#43A047, 0), title="Lagging Span")
p1 = plot(leadLine1, offset = displacement - 1, color=color.new(#A5D6A7, 0), title="Leading Span A")
p2 = plot(leadLine2, offset = displacement - 1, color=color.new(#EF9A9A, 0), title="Leading Span B")

// Kumo Cloud
plot(leadLine1 > leadLine2 ? leadLine1 : leadLine2, offset = displacement - 1, title = "Kumo Cloud Upper Line", display = display.none) 
plot(leadLine1 < leadLine2 ? leadLine1 : leadLine2, offset = displacement - 1, title = "Kumo Cloud Lower Line", display = display.none) 
fill(p1, p2, color = leadLine1 > leadLine2 ? color.rgb(67, 160, 71, 90) : color.rgb(244, 67, 54, 90))

// Trading Logic
longCondition = ta.crossover(leadLine1, leadLine2)
shortCondition = ta.crossunder(leadLine1, leadLine2)

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

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