Estratégia de negociação de tendências baseada na inclinação da média móvel e no cruzamento


Data de criação: 2023-09-20 14:32:22 última modificação: 2023-09-20 14:32:22
cópia: 0 Cliques: 951
1
focar em
1617
Seguidores

Visão geral

A estratégia julga a direção da tendência através do sentido de inclinação e da relação de interseção de vários grupos de EMAs, permitindo uma negociação de tendência sem parar. Pode sempre manter uma posição de alta ou baixa.

Princípio da estratégia

  1. Calcule o EMA de três grupos de diferentes períodos, sendo o EMA rápido, médio e lento.

  2. Quando a EMA rápida atravessa a EMA de média velocidade, e a inclinação da EMA de média velocidade é corrigida, gera-se um sinal de multiplicação.

  3. Quando a EMA rápida atravessa a EMA de média velocidade, e a inclinação da EMA de média velocidade se torna negativa, gera um sinal de fechamento.

  4. Quando o preço sobe, faça mais com a EMA lenta, e quando desce, faça menos.

  5. A relação de inclinação entre a EMA rápida e lenta reflete a mudança de tendência. Preço e entrada de confirmação cruzada da EMA.

Análise de vantagens

  1. A EMA de múltiplos grupos é mais acertada a julgar a direção da tendência.

  2. A EMA rápida e lenta faz uma boa distinção entre tendências e oscilações.

  3. Mudanças na inclinação da linha média indicam mudanças na tendência de entrada antecipada.

  4. O cruzamento de preços foi confirmado novamente para evitar falsas rupturas.

  5. A tendência é de que as pessoas que estão em um mercado de ações, ou seja, que estão em um mercado de ações, não tenham a capacidade de se posicionar.

Análise de Riscos

  1. O risco de uma posição em um cenário de turbulência é alto, com base apenas na EMA.

  2. Os parâmetros da EMA estão mal definidos e podem ter perdido o ponto de viragem.

  3. A tendência é fraca, não se sabe, e pode virar prematuramente.

  4. Não é possível controlar eficazmente os prejuízos individuais.

Direção de otimização

  1. Teste diferentes combinações de parâmetros do EMA para encontrar o melhor.

  2. Adicionar outros indicadores de fraqueza, como o MACD.

  3. Adição de um mecanismo de controle de risco.

  4. A avaliação da tendência é forte e fraca, evitando a inversão de posições prematuramente.

  5. Optimizar a gestão de fundos e ajustar o tamanho das posições.

  6. A suspensão da negociação quando a tendência se altera.

Resumir

A estratégia utiliza a combinação múltipla de tendências de avaliação da EMA, o que é razoável. Mas, dependendo apenas da EMA, há um certo ponto cego, há maior espaço para otimização e pode ser introduzido mais critérios de avaliação. Também é necessário incluir um mecanismo de controle de risco para aumentar a estabilidade.

Código-fonte da estratégia
/*backtest
start: 2023-08-20 00:00:00
end: 2023-09-19 00:00:00
period: 6h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("EMA Slope + EMA Cross Strategy (by ChartArt)", shorttitle="CA_-_EMA_slope_cross", overlay=true)

// ChartArt's EMA Slope + EMA Cross Strategy
//
// Version 1.0
// Idea by ChartArt on March 10, 2018.
//
// This strategy uses divergences between
// three moving averages and their slope
// directions as well as crosses between
// the price and the moving averages
// to switch between long/short positions.
//
// The strategy is non-stop in the market
// and always either long or short.
// 
// In addition the moving averages are colored
// depending if they are trending up or down.
//
// List of my work: 
// https://www.tradingview.com/u/ChartArt/

// Input
price = input(close)
MA1_Length = input(2,step=1, title="EMA 1 Length")
MA2_Length = input(4,step=1, title="EMA 2 Length")
MA3_Length = input(20,step=1, title="EMA 3 Length")

switch1=input(true, title="Show Bar Color?")
switch2=input(true, title="Show Moving Averages?")

// Calculation
MA1 = ema(price, MA1_Length)
MA2 = ema(price, MA2_Length)
MA3 = ema(price, MA3_Length)

// Strategy
long = crossunder(price, MA3) or ( change(price)<0 and change(MA1)<0 and crossunder(price,MA1) and change(MA2)>0 )
short = crossover(price, MA3) or ( change(price)>0 and change(MA1)>0 and crossover(price,MA1)  and change(MA2)<0 ) 

if long
    strategy.entry("Long", strategy.long, comment="Long")

if short
    strategy.entry("Short", strategy.short, comment="Short")

// Strategy Alert
alertcondition(long, title='EMA Slope + EMA Cross Strategy, Long Alert', message='Go Long!')
alertcondition(short, title='EMA Slope + EMA Cross Strategy, Short Alert', message='Go Short!')

// MA trend bar color
up =  change(MA2)>0 and change(MA3)>0
dn =  change(MA2)<0 and change(MA3)<0
bar_color = up?green:dn?red:blue
barcolor(switch1?bar_color:na)

// MA trend output color
MA2_color = change(MA2)>0?lime:change(MA2)<0?red:blue
MA3_color = change(MA3)>0?lime:change(MA3)<0?red:blue

// MA output
EMA2 = plot(switch2?MA2:na, title="EMA 2", style=linebr, linewidth=2, color=MA2_color)
EMA3 = plot(switch2?MA3:na, title="EMA 3", style=linebr, linewidth=4, color=MA3_color)
fill(EMA2, EMA3, color=silver, transp=50)

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)