Estratégia de acompanhamento de tendência de média móvel


Data de criação: 2024-02-20 14:36:11 última modificação: 2024-02-20 14:36:11
cópia: 0 Cliques: 614
1
focar em
1617
Seguidores

Estratégia de acompanhamento de tendência de média móvel

Visão geral

A estratégia é construída com base no indicador DMI para determinar a direção da tendência do preço de ações, monitorando o cruzamento de + DI e - DI, em conjunto com o indicador ADX para identificar a tendência forte e fraca, permitindo o acompanhamento da tendência.

Princípio da estratégia

A estratégia usa dois componentes do indicador DMI: + DI e - DI + DI mede o impulso ascendente + DI ascendente - DI indica que o impulso ascendente do mercado de compra é fortalecido - DI mede o impulso descendente - DI descendente + DI indica que o impulso descendente do mercado de venda é fortalecido

Quando + DI sobre o DI atravessa-se, indica a formação de uma tendência ascendente, quando a estratégia é uma entrada múltipla. Após a entrada, o stop loss móvel linear segue uma determinada proporção do preço mais alto. Quando o preço retorna, o preço de parada cai, bloqueando os ganhos anteriores.

Quando o -DI atravessa o +DI, indica a substituição da tendência de queda, quando a estratégia está em equilíbrio. A força e a fraqueza da tendência podem ser identificadas pelo indicador ADX. Quanto mais alto o ADX, mais evidente é a tendência do preço da ação.

Em geral, a estratégia captura os pontos de inflexão da tendência dos preços das ações e permite o acompanhamento da tendência das médias móveis.

Análise de vantagens estratégicas

A vantagem desta estratégia está em três aspectos principais:

  1. O uso do DMI para determinar a direção da tendência dos preços das ações é preciso e confiável. O DMI é mais preciso para determinar a reversão da tendência do que indicadores como a média móvel simples.

  2. Aplicar o indicador ADX para identificar os pontos fortes e fracos da tendência, evitando a negociação frequente em situações de turbulência. Tornar a estratégia mais estável.

  3. Mecanismo de parada móvel linear, capaz de ajustar dinamicamente a posição de parada, parar antecipadamente quando a tendência se inverte. E bloquear parte dos lucros, controlar eficazmente o risco.

  4. As regras da estratégia são simples, claras, fáceis de entender e implementar, adequadas para transações quantitativas.

Análise de Riscos

Os principais riscos desta estratégia são:

  1. O DMI pode falhar em alguns mercados especiais. O DMI não se aplica a todos os mercados e pode gerar sinais errados quando a tendência não é clara.

  2. O risco de que o preço das ações volte a subir e, depois de ultrapassar o ponto de parada, volte a cair. Há uma certa margem de segurança que pode reduzir esse risco.

  3. Risco de configuração inadequada dos parâmetros ADX. Os parâmetros ADX afetam diretamente o resultado da escolha da estratégia, e a configuração de tamanho grande ou pequeno pode afetar o desempenho.

  4. Como o método linear de travamento de perda é usado, há um risco de ser levemente travado em uma partida rápida. Nesse caso, os parâmetros de rastreamento de perda podem ser ajustados de acordo com as circunstâncias.

Pode-se reduzir ainda mais o risco por meio de ajustes de parâmetros, paralisia rigorosa e estrutura de procedimentos otimizados.

Direção de otimização

A estratégia pode ser melhorada em vários aspectos:

  1. O MACD, o KDJ e outros indicadores são usados como critérios auxiliares para melhorar a estabilidade da estratégia.

  2. Teste diferentes métodos de perda, como perda de movimento de curva, perda de movimento de tempo, etc.

  3. Aumentar o mecanismo de gerenciamento de posições, aumentando gradualmente as posições após a determinação da direção da tendência, aumentando a taxa de ganho.

  4. A combinação de métodos como fator de alta frequência e aprendizado de máquina para otimizar dinamicamente os parâmetros do DMI e ADX torna as estratégias mais inteligentes.

  5. Aumentar o módulo de controle de vento programado e usar métodos como o orçamento de risco para controlar rigorosamente a retirada máxima.

A colaboração, por meio de vários meios, pode efetivamente aumentar a eficiência, a estabilidade e a segurança da estratégia.

Resumir

A estratégia de operação geral lógica é clara e fácil de entender, o uso de indicadores DMI para determinar a direção da tendência do preço das ações, indicadores ADX auxiliar para determinar a intensidade da tendência, linear de parada de perda móvel de forma eficaz controlar o risco. O desempenho da estratégia é relativamente estável, mas ainda é necessário para evitar certos riscos.

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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
//@version=5
//1.0 - 240202 @caddjax

strategy(title = "+DI Crossover", overlay=false)

//DMI + ADX Chart w/ overlay
// © jrregencia

lensig = input.int(14, title="ADX Smoothing", minval=1, maxval=50)
len = input.int(6, minval=1, title="DI Length")
up = ta.change(high)
down = -ta.change(low)
plusDM = na(up) ? na : (up > down and up > 0 ? up : 0)
minusDM = na(down) ? na : (down > up and down > 0 ? down : 0)
trur = ta.rma(ta.tr, len)
plus = fixnan(100 * ta.rma(plusDM, len) / trur)
minus = fixnan(100 * ta.rma(minusDM, len) / trur)
sum = plus + minus
adx = 100 * ta.rma(math.abs(plus - minus) / (sum == 0 ? 1 : sum), lensig)
adxmax = input.int(50, title="ADX Max Buying Area", minval=1, maxval=100)
adxmin = input.int(0, title="ADX Min Buying Area", minval=0, maxval=99)



//DI cross alert
DIPcross = ta.crossover(plus, minus) ? plus : na
plotshape(DIPcross, style = shape.cross , color=color.white, location=location.absolute)

plot(adx, color=color.rgb(255, 238, 0, 23), title="ADX", linewidth=2)
p1 = plot(plus, color=color.rgb(16, 137, 0, 31), title="+DI", linewidth=1)
p2 = plot(minus, color=color.rgb(143, 82, 255, 25), title="-DI", linewidth=1)
adxmaxl = hline(adxmax, title="ADX MaxLine", color=color.silver, linestyle=hline.style_solid)
adxminl = hline(adxmin, title="ADX MinLine", color=color.silver, linestyle=hline.style_solid)
fill(p1, p2, title="Cloud Fill", color = plus > minus ? color.teal : color.red, transp=50)
fill(adxmaxl, adxminl, title="ADX Fill", color=color.silver, transp=90)

// Configure trail stop level with input options (optional)
longTrailPerc = input.float(3, title="Trail Long Loss (%)",
     minval=0.0, step=0.1) * 0.01
// Determine trail stop loss prices
longStopPrice = 0.0

// Determine entry condition
enterLong = ta.crossover(plus, minus) ? plus : na

longStopPrice := if strategy.position_size > 0
    stopValue = high[1] * (1 - longTrailPerc)
    math.max(stopValue, longStopPrice[1])
else
    0
// Submit entry orders
if enterLong
    strategy.entry("EL", strategy.long)    
// Submit exit orders for trail stop loss price
if strategy.position_size > 0
    strategy.exit("XL TRL STP", stop=longStopPrice)