O recurso está a ser carregado... Carregamento...

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

Autora:ChaoZhang, Data: 2024-01-29 11:46:15
Tags:

img

Resumo

Trata-se de uma estratégia quantitativa de negociação baseada em tendências, que utiliza principalmente três linhas de média móvel com períodos diferentes, combinadas com o indicador ATR, para acompanhar as tendências do mercado e ajudar a determinar o calendário de entrada e saída.

Princípio

A estratégia usa três linhas médias móveis de 9 dias (a curto prazo), 15 dias (médio prazo) e 24 dias (longo prazo). Entre elas, as linhas de 9 dias e 15 dias são usadas para determinar a direção da tendência e o tempo de entrada, enquanto a linha de 24 dias é usada para determinar a tomada de lucro e a parada de perda. Ao mesmo tempo, a estratégia também incorpora o indicador ATR para ajustar dinamicamente as linhas médias móveis para se adaptar melhor às flutuações do mercado.

Especificamente, quando a linha média móvel de curto prazo cruza acima da linha média móvel de médio prazo e o preço de fechamento é maior do que a linha média móvel de curto prazo, indica que a tendência está começando a surgir e as posições longas podem ser estabelecidas neste ponto.

Além disso, a estratégia também usa a cor da barra para exibir intuitivamente a direção da tendência.

Vantagens

  1. Usando uma combinação de três linhas médias móveis com períodos diferentes pode julgar a direção da tendência com mais precisão
  2. A aplicação de um ajustamento dinâmico das linhas de média móvel baseado no ATR permite uma melhor adaptação aos mercados voláteis
  3. A definição de mecanismos de stop-loss/tiro de lucro de longo e curto prazo permite gerir eficazmente os riscos
  4. Efeitos visuais das cores das barras formam sinais de padrão eficazes, tornando as ações comerciais mais claras

Riscos e otimização

  1. Tendência a gerar falsos sinais em mercados de gama
  2. As definições incorretas dos parâmetros (por exemplo, parâmetros de período) podem conduzir a excesso de negociação ou a perder boas oportunidades de entrada
  3. Considerar a incorporação de outros filtros para sinais de entrada, tais como volume, MACD, etc.
  4. Diferentes combinações de parâmetros podem ser testadas para encontrar os parâmetros ideais

Conclusão

No geral, esta é uma estratégia de tendência relativamente robusta. Pode capturar efetivamente tendências de médio a longo prazo, enquanto define mecanismos de stop loss / take profit para controlar riscos. Mas a estratégia é sensível a parâmetros e condições de mercado, exigindo mais otimização para se adaptar a mais ambientes de mercado.


/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
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/
// © ceyhun

//@version=4
strategy("Chaloke System Strategy",overlay=true)

P1=input(9,title="ShortTerm Period")
P2=input(15,title="MidTerm Period")
P3=input(24,title="LongTerm Period")
P4=input(5,title="Invesment Term")
P5=input(5,title="ATR Period")
Barcolor=input(true,title="Barcolor")

Sm=2*P5/10
ATRX=Sm*atr(P4)
S=ema(close,P1)-ATRX
M=ema(close,P2)-ATRX
Lg=ema(close,P3)-ATRX

Sht=iff(close==highest(close,3),S,ema(close[1],P1)-ATRX)
Mid=iff(close==highest(close,3),M,ema(close[1],P2)-ATRX)
Lng=iff(close==highest(close,3),Lg,ema(close[1],P3)-ATRX)

colors=iff(Sht>Mid and close > Sht ,color.green,iff(close < Lng or Sht<Lng,color.red,color.black))

plot(Sht,"Short",color=color.green,linewidth=2)
plot(Mid,"Middle",color=color.black,linewidth=2)
plot(Lng,"Long",color=color.red,linewidth=2)

barcolor(Barcolor ? colors :na)
   
long =  crossover(Sht,Mid) and close > Sht
short = crossunder(Sht,Lng) or close < Lng

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

alertcondition(long, title='Long', message='Chaloke System Alert Long')
alertcondition(short, title='Short', message='Chaloke System Alert Short')

Mais.