Crossover de média móvel múltipla combinado com oscilador e estratégia de negociação dinâmica de suporte e resistência

EMA ATR
Data de criação: 2024-12-27 14:45:40 última modificação: 2024-12-27 14:45:40
cópia: 3 Cliques: 404
1
focar em
1617
Seguidores

Crossover de média móvel múltipla combinado com oscilador e estratégia de negociação dinâmica de suporte e resistência

Visão geral

Esta estratégia é um sistema de negociação integrado que combina a multiplicação da média móvel do índice (EMA) cruzada, a amplitude real de flutuação (ATR) e a resistência de suporte do eixo central (Pivot Points). A estratégia capta os pontos de mudança de tendência do mercado em combinação com os intervalos de flutuação do ATR e os níveis de preços-chave através de sinais de cruzamento de EMAs de curto e médio e longo prazo.

Princípio da estratégia

A estratégia baseia-se na análise técnica em três dimensões:

  1. Identificação de tendências: uso de EMAs triplos de 4, 9 e 18 períodos, para confirmar a direção da tendência por meio de um cruzamento simultâneo de EMAs de curto prazo (fase 4) com EMAs de médio prazo (fase 9) e de longo prazo (fase 18).
  2. Escala de flutuação: introdução do indicador ATR de 14 períodos para quantificar a volatilidade do mercado e definir um limiar de negociação dinâmico.
  3. Resistência de suporte de preços: através do sistema de cálculo do ponto central diário (PPSignal), estabelece-se 7 níveis de preços-chave (PP, R1-R3, S1-S3) e fornece uma referência para a negociação.

As regras de negociação são claras:

  • Multicondicionamento: EMA4 para cima atravessa EMA9 e EMA18, e o preço de fechamento quebra a distância ATR acima da EMA9
  • Condições de fechamento: EMA4 para baixo atravessa EMA9 e EMA18, e o preço de fechamento quebra a distância ATR abaixo da EMA9
  • Configuração de stop loss: acompanhamento dinâmico do nível EMA4

Vantagens estratégicas

  1. Análise multidimensional: combina as três dimensões de tendência, oscilação e estrutura de preços para aumentar a confiabilidade do sinal
  2. Adaptabilidade dinâmica: através da ATR e da resistência de suporte dinâmico, a estratégia pode se adaptar a diferentes condições de mercado
  3. Controle de risco perfeito: mecanismo de stop loss dinâmico, capaz de bloquear lucros e controlar riscos em tempo real
  4. Confirmação de sinal suficiente: requerem ressonância de múltiplos indicadores técnicos para desencadear a transação, reduzindo o risco de falsa brecha

Risco estratégico

  1. Risco de choque de mercado: Falso sinal de cruzamento pode ocorrer com frequência na fase de liquidação horizontal
  2. Risco de atraso: a média móvel em si tem atrasos, e você pode perder o melhor momento de entrada.
  3. Risco do Gap: saltos diurnos podem fazer com que o ponto de parada não funcione
  4. Sensibilidade de parâmetros: diferentes combinações de parâmetros de ciclo podem produzir efeitos significativamente diferentes

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

  1. Introdução de indicadores de tráfego: adicionar verificação de tráfego na confirmação do sinal de cruzamento
  2. Otimização de parâmetros dinâmicos: Ajuste os parâmetros do ciclo EMA de acordo com a volatilidade do mercado
  3. Melhoria do mecanismo de suspensão de perdas: pode ser considerado o uso de suspensão de perdas flutuantes com configuração ATR
  4. Filtro de cenário de mercado: adicionar indicadores de intensidade de tendência para abrir negociações apenas durante uma forte tendência
  5. Filtragem de tempo: configuração de períodos de negociação ótimos para diferentes períodos de tempo

Resumir

A estratégia, por meio da colaboração sincronizada de múltiplos indicadores técnicos, constrói um sistema de negociação mais completo. O principal benefício da estratégia reside no mecanismo de confirmação de sinal multidimensional e no sistema de controle de risco perfeito, mas ainda requer que os comerciantes otimizem os parâmetros e melhorem o sistema de acordo com a situação específica do 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"}]
*/

//@version=5
strategy("EMA Crossover + ATR + PPSignal", overlay=true)

//--------------------------------------------------------------------
// 1. Cálculo de EMAs y ATR
//--------------------------------------------------------------------
ema4      = ta.ema(close, 4)
ema9      = ta.ema(close, 9)
ema18     = ta.ema(close, 18)
atrLength = 14
atr       = ta.atr(atrLength)

//--------------------------------------------------------------------
// 2. Cálculo de Pivot Points diarios (PPSignal)
//    Tomamos datos del día anterior (timeframe D) para calcularlos
//--------------------------------------------------------------------
dayHigh  = request.security(syminfo.tickerid, "D", high[1])
dayLow   = request.security(syminfo.tickerid, "D", low[1])
dayClose = request.security(syminfo.tickerid, "D", close[1])

// Fórmula Pivot Points estándar
pp = (dayHigh + dayLow + dayClose) / 3.0
r1 = 2.0 * pp - dayLow
s1 = 2.0 * pp - dayHigh
r2 = pp + (r1 - s1)
s2 = pp - (r1 - s1)
r3 = dayHigh + 2.0 * (pp - dayLow)
s3 = dayLow - 2.0 * (dayHigh - pp)

//--------------------------------------------------------------------
// 3. Definir colores para las EMAs
//--------------------------------------------------------------------
col4  = color.green   // EMA 4
col9  = color.yellow  // EMA 9
col18 = color.red     // EMA 18

//--------------------------------------------------------------------
// 4. Dibujar indicadores en el gráfico
//--------------------------------------------------------------------

// EMAs
plot(ema4,  title="EMA 4",  color=col4,  linewidth=2)
plot(ema9,  title="EMA 9",  color=col9,  linewidth=2)
plot(ema18, title="EMA 18", color=col18, linewidth=2)

// ATR
plot(atr, title="ATR", color=color.blue, linewidth=2)

// Pivot Points (PPSignal)
plot(pp, title="Pivot (PP)", color=color.new(color.white, 0),  style=plot.style_line, linewidth=1)
plot(r1, title="R1",        color=color.new(color.red,   0),  style=plot.style_line, linewidth=1)
plot(r2, title="R2",        color=color.new(color.red,   0),  style=plot.style_line, linewidth=1)
plot(r3, title="R3",        color=color.new(color.red,   0),  style=plot.style_line, linewidth=1)
plot(s1, title="S1",        color=color.new(color.green, 0),  style=plot.style_line, linewidth=1)
plot(s2, title="S2",        color=color.new(color.green, 0),  style=plot.style_line, linewidth=1)
plot(s3, title="S3",        color=color.new(color.green, 0),  style=plot.style_line, linewidth=1)

//--------------------------------------------------------------------
// 5. Condiciones de cruce (EMA4 vs EMA9 y EMA18) y estrategia
//--------------------------------------------------------------------
crossedAbove = ta.crossover(ema4, ema9) and ta.crossover(ema4, ema18)
crossedBelow = ta.crossunder(ema4, ema9) and ta.crossunder(ema4, ema18)

// Señales de Buy y Sell basadas en cruces + condición con ATR
if crossedAbove and close > ema9 + atr
    strategy.entry("Buy", strategy.long)
    strategy.exit("Sell", "Buy", stop=ema4)

if crossedBelow and close < ema9 - atr
    strategy.entry("Sell", strategy.short)
    strategy.exit("Cover", "Sell", stop=ema4)