Adaptive Index Moving Average Ajuste de posição dinâmica Estratégia de negociação inovadora

EMA TP ROI
Data de criação: 2024-12-20 16:33:20 última modificação: 2024-12-20 16:33:20
cópia: 4 Cliques: 415
1
focar em
1617
Seguidores

Adaptive Index Moving Average Ajuste de posição dinâmica Estratégia de negociação inovadora

Visão geral

A estratégia é uma estratégia de negociação auto-adaptável baseada em um sistema de dupla equilíbrio, identificando sinais de compra através da interseção de uma média móvel rápida (EMA25) com uma média móvel lenta (EMA100) e combinando um stop loss dinâmico e um objetivo de ganho para otimizar a eficácia da negociação. A estratégia usa uma abordagem de negociação inovadora, com foco no controle do risco, enquanto garante o lucro, e é adequada para negociação de tendências de médio e longo prazo.

Princípio da estratégia

A lógica central da estratégia inclui três partes-chave:

  1. Sistema de sinalização: Utilize a EMA25 para fazer um sinal múltiplo através da formação EMA100, que geralmente indica o início de uma tendência ascendente.
  2. Controle de risco: Esta configuração previne efetivamente os prejuízos causados por falsas rupturas, com o ponto mais próximo de uma barra vermelha abaixo da EMA100 como ponto de parada.
  3. Gerenciamento de lucros: O risco de lucro é definido em relação ao risco de lucro em relação a 1: 3, e o ponto de parada é automaticamente ajustado para a linha de custo quando o lucro de 2% é atingido, permitindo a posse sem risco.

Vantagens estratégicas

  1. Alta confiabilidade do sinal: o uso de uma EMA lenta como confirmação de tendência pode filtrar eficazmente os falsos sinais.
  2. Controle de risco perfeito: configuração de stop loss dinâmico e mecanismo de confirmação de ruptura reduzem o risco de negociação.
  3. Características de ganhos estáveis: aumento da expectativa de ganhos da estratégia por meio da definição de uma relação de ganhos e riscos razoável.
  4. Alto grau de automação: Inclui a geração de sinais completa, stop loss e lógica de gerenciamento de posição.
  5. Adaptabilidade: os parâmetros podem ser ajustados de acordo com as diferentes condições do mercado.

Risco estratégico

  1. Risco de mercado em choque: em mercados em choque horizontal, pode ocorrer frequentemente um stop loss.
  2. Risco de deslizamento: em períodos de alta volatilidade, é possível executar deslizamentos.
  3. Risco de falha: O sinal de cruzamento de linha uniforme pode ter falhas.
  4. Sensibilidade de parâmetros: a configuração de ciclo de média linha tem um grande impacto no desempenho da estratégia.

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

  1. Introdução de confirmação de tráfego: Adição de indicadores de tráfego no sistema de sinalização, aumentando a confiabilidade da ruptura.
  2. Otimização do mecanismo de parada de perdas: pode-se considerar a introdução de parada dinâmica do ATR, para tornar a parada de perdas mais adaptável.
  3. Aumentar o filtro de intensidade da tendência: adicionar indicadores de intensidade da tendência, como o ADX, para otimizar o tempo de entrada.
  4. Melhorar o gerenciamento de posições: ajustar o tamanho das posições de acordo com a volatilidade.
  5. Adicionando o julgamento do mercado: introdução de mecanismos de identificação de regime de mercado, usando diferentes configurações de parâmetros em diferentes ambientes de mercado.

Resumir

A estratégia, através da captura de tendências de início de cruzamento de linha uniforme, em conjunto com o mecanismo dinâmico de gestão de perdas e lucros, realiza melhores características de ganhos de risco. O design da estratégia considera plenamente as necessidades de combate real e tem uma forte praticidade.

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

//@version=5
strategy("EMA Crossover with TP and SL (Buy only) and Break-even", overlay=true)

// EMA sozlamalari
emaFastLength = input.int(25, title="Fast EMA Length")
emaSlowLength = input.int(100, title="Slow EMA Length")

// Hisoblash
emaFast = ta.ema(close, emaFastLength)
emaSlow = ta.ema(close, emaSlowLength)

// Kesishishni aniqlash
bullishCross = ta.crossover(emaFast, emaSlow) // EMA 25 EMA 100 ni yuqoriga kesib o'tganda

// EMA 100 tagidagi oxirgi qizil shamning tagini olish
lastRedCandleLow = ta.valuewhen(close < open and close < emaSlow, low, 0) // EMA 100 pastidagi qizil shamning tagi

// TP va SL darajalarini hisoblash
longSL = lastRedCandleLow
longTP = close + 3 * (close - longSL) // TP SL ga nisbatan 1:2 masofada

// Savdoni ochish va 2% foyda bo'lganda SLni break-even ga o‘zgartirish
if (bullishCross)
    strategy.entry("Buy", strategy.long)  // Buy pozitsiyasini ochish
    strategy.exit("Exit Buy", "Buy", stop=longSL, limit=longTP)  // SL va TP qo'yish

    // 2% foyda bo'lganda SLni break-even ga o'zgartirish
    if (strategy.position_size > 0)
        profitPercentage = (close - strategy.position_avg_price) / strategy.position_avg_price * 100
        if (profitPercentage >= 2)
            strategy.exit("Exit Buy BE", "Buy", stop=strategy.position_avg_price) // SLni break-even ga o'zgartirish

// Signalni ko'rsatish
plotshape(bullishCross, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")

// // TP va SL chizish
// if (bullishCross)
//     line.new(x1=bar_index, y1=longSL, x2=bar_index+1, y2=longSL, color=color.red, width=1, extend=extend.none)
//     line.new(x1=bar_index, y1=longTP, x2=bar_index+1, y2=longTP, color=color.green, width=1, extend=extend.none)
//     label.new(bar_index, longSL, text="SL: " + str.tostring(longSL), style=label.style_label_down, color=color.red, textcolor=color.white, size=size.small)
//     label.new(bar_index, longTP, text="TP: " + str.tostring(longTP), style=label.style_label_up, color=color.green, textcolor=color.white, size=size.small)

// EMA chizish
plot(emaFast, color=color.blue, title="Fast EMA (25)")
plot(emaSlow, color=color.orange, title="Slow EMA (100)")

// Alert qo'shish
alertcondition(bullishCross, title="Buy Signal Alert", message="EMA 25 crossed above EMA 100! Buy Signal!")