Análise de tendência de impulso de cruzamento de média móvel exponencial Estratégia de negociação

EMA ICM
Data de criação: 2025-02-18 17:41:28 última modificação: 2025-02-18 17:41:28
cópia: 1 Cliques: 375
1
focar em
1617
Seguidores

Análise de tendência de impulso de cruzamento de média móvel exponencial Estratégia de negociação

Visão geral

Esta estratégia é um sistema de negociação de acompanhamento de tendências baseado em médias móveis indexadas (EMA) e modelos de correção de pulso (ICM). Capta as mudanças de tendências do mercado identificando os cruzamentos de preços com a EMA e a subsequente configuração de pulso-correção-pulso e executa as negociações quando determinadas condições são satisfeitas. O sistema usa uma relação de risco-receita fixa para gerenciar os stop-loss e o stop-loss de cada transação.

Princípio da estratégia

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

  1. Usando a EMA de 10 ciclos como indicador de referência para a direção da tendência
  2. Buscar uma forma de pulso-correção-pulso em 3 ciclos após o cruzamento com a EMA
  3. Requisitos de admissão:
    • Preço da EMA
    • A primeira linha K é para ver o pulso de Mercúrio (aumento maior do que o valor predefinido)
    • A segunda linha K é uma correção a baixa (preço de fechamento abaixo do preço de abertura)
    • A terceira linha K é a pulsação de Mercúrio e ultrapassa os dois primeiros pontos altos da linha K.
  4. Condições de entrada de cabeça vazia em oposição a cabeça cheia
  5. O uso de uma taxa de risco-benefício fixa (default 3x) para definir automaticamente as posições de stop loss e stop loss

Vantagens estratégicas

  1. Combinação de indicadores técnicos e configuração de preços para fornecer sinais de negociação mais confiáveis
  2. A continuidade da tendência através da confirmação de forma de pulso-correção-pulso
  3. Adotar uma relação de risco/benefício fixa para a gestão de posições, favorável à estabilidade de rendimentos a longo prazo
  4. A lógica de entrada é clara, fácil de entender e executar.
  5. Aplicável a diferentes tipos de transações e períodos de tempo

Risco estratégico

  1. Sinais de fuga falsos frequentes podem ocorrer em um mercado volátil
  2. O rácio de risco/benefício fixo pode não ser adequado em todas as circunstâncias do mercado
  3. A escolha de parâmetros de EMA e de desvalorização da amplitude de pulso afetam a performance da estratégia
  4. Oscilações contínuas podem levar a posições de parada imprudentes
  5. A rápida reversão do mercado pode causar uma retracção maior

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

  1. Introdução de um limite de amplitude de pulso de ajuste dinâmico do indicador de flutuação
  2. Aumentar a intensidade da tendência do filtro reduzir a falsa brecha
  3. Risco-benefício ajustado à dinâmica das características do mercado
  4. Adicionar filtro de tempo para evitar negociações em momentos adversos
  5. Combinação de indicadores de volumes para aumentar a confiabilidade do sinal

Resumir

A estratégia, combinando EMAs e modelos de correção de pulso, constrói um sistema de acompanhamento de tendências com clareza lógica. Sua vantagem é que o sinal é claro, o risco é controlável, mas ainda precisa ser otimizado de acordo com as características específicas do mercado. A estabilidade e a lucratividade da estratégia podem ser melhoradas ainda mais com a adição de condições de filtragem adequadas e mecanismos de ajuste de parâmetros dinâmicos.

Código-fonte da estratégia
/*backtest
start: 2024-02-19 00:00:00
end: 2025-02-17 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("EMA Cross Impulsive Strategy", overlay=true, margin_long=100, margin_short=100)

// Parameters
emaLength = input.int(10, title="EMA Length")
impulsiveBodyTicks = input.int(10, title="Minimum Impulsive Candle Body (Ticks)")
rMultiplier = input.int(3, title="Risk Reward Multiplier")

// Calculate EMA
ema10 = ta.ema(close, emaLength)

// Cross conditions
crossUp = ta.crossover(close, ema10)
crossDown = ta.crossunder(close, ema10)

// Impulsive and correction conditions
tickSize = syminfo.mintick
impulsiveBodyMin = impulsiveBodyTicks * tickSize

isImpulsiveBullish = (close > open) and (close - open >= impulsiveBodyMin)
isImpulsiveBearish = (close < open) and (open - close >= impulsiveBodyMin)
isCorrectionBearish = (close < open)
isCorrectionBullish = (close > open)

// Long setup tracking
var int barsSinceLongCross = 0
var bool impulsive1Long = false
var bool correctionLong = false
var bool impulsive2Long = false

if crossUp
    barsSinceLongCross := 0
    impulsive1Long := false
    correctionLong := false
    impulsive2Long := false
else
    barsSinceLongCross := barsSinceLongCross + 1

if barsSinceLongCross == 1
    impulsive1Long := isImpulsiveBullish

if barsSinceLongCross == 2
    correctionLong := isCorrectionBearish

if barsSinceLongCross == 3
    impulsive2Long := isImpulsiveBullish and (close > math.max(high[1], high[2]))

// Short setup tracking
var int barsSinceShortCross = 0
var bool impulsive1Short = false
var bool correctionShort = false
var bool impulsive2Short = false

if crossDown
    barsSinceShortCross := 0
    impulsive1Short := false
    correctionShort := false
    impulsive2Short := false
else
    barsSinceShortCross := barsSinceShortCross + 1

if barsSinceShortCross == 1
    impulsive1Short := isImpulsiveBearish

if barsSinceShortCross == 2
    correctionShort := isCorrectionBullish

if barsSinceShortCross == 3
    impulsive2Short := isImpulsiveBearish and (close < math.min(low[1], low[2]))

// Execute trades
if barsSinceLongCross == 3 and impulsive1Long and correctionLong and impulsive2Long
    strategy.entry("Long", strategy.long)
    strategy.exit("Exit Long", "Long", stop=low, profit=close + (close - low) * rMultiplier)

if barsSinceShortCross == 3 and impulsive1Short and correctionShort and impulsive2Short
    strategy.entry("Short", strategy.short)
    strategy.exit("Exit Short", "Short", stop=high, profit=close - (high - close) * rMultiplier)

// Plot EMA
plot(ema10, color=color.blue, title="10 EMA")