A tendência da DEMA a seguir a estratégia

Autora:ChaoZhang, Data: 2023-10-17 17:17:34
Tags:

img

Resumo

A estratégia de seguimento da tendência DEMA é projetada com base no indicador DEMA. Ela gera sinais de compra quando o preço atravessa a faixa inferior da DEMA e sinais de venda quando o preço atravessa a faixa superior. Esta estratégia pertence ao sistema de seguimento da tendência.

Estratégia lógica

Esta estratégia usa o indicador DEMA para determinar a tendência do preço. O DEMA é a média móvel exponencial dupla, que é calculada com duas linhas EMA e pode capturar mudanças de preço mais rapidamente. A estratégia calcula a diferença percentual entre o preço e o DEMA e, em seguida, gera sinais de negociação.

Quando a diferença percentual cruza acima do parâmetro comprador, um sinal de compra é gerado. Quando a diferença percentual cruza abaixo do parâmetro vendedor, um sinal de venda é gerado. Os parâmetros comprador e vendedor representam a força para gerar sinais, que podem ser ajustados com base nas condições do mercado.

Além disso, a estratégia também define intervalos de datas como condições de filtro.

Análise das vantagens

  • O uso do DEMA pode capturar as mudanças de preço de forma mais sensível e identificar reversões de tendência em tempo hábil.
  • Em comparação com a SMA, a DEMA tem menor atraso.
  • A definição de parâmetros de força de compra/venda pode controlar a frequência de negociação.
  • Adicionar filtros de data pode otimizar para padrões sazonais.
  • Em geral, as definições dos parâmetros são razoáveis e podem ser otimizadas para diferentes ambientes de mercado.

Análise de riscos

  • A DEMA em si tem algum efeito de atraso e pode perder inversões de tendência de curto prazo.
  • Há um certo atraso na geração de sinal, o tempo de entrada não é preciso.
  • A estratégia baseia-se exclusivamente no DEMA sem outros indicadores para verificar a fiabilidade do sinal.
  • Não é definido nenhum stop loss, o que pode conduzir a grandes perdas.

Os riscos podem ser mitigados através da combinação de outros indicadores para verificação de sinais, otimização de parâmetros e adição de stop loss.

Orientações de otimização

  • Considerar a adição de indicadores MA para filtragem de sinal, utilizando a qualidade de tendência do MA.
  • Teste o impacto de diferentes parâmetros no retorno para encontrar a combinação ideal de parâmetros.
  • Adicionar estratégias de stop loss com uma percentagem razoável de stop loss ao controlo por perda de trade.
  • Teste a estratégia em diferentes ações para otimizar o conjunto de ações.
  • Tente várias estratégias de saída, como inversão de tendência, ruptura etc.

Conclusão

A estratégia de seguimento de tendência DEMA é razoavelmente projetada com rentabilidade estável. Ele usa com sucesso o indicador DEMA para determinar a direção da tendência e funciona bem em várias ações e prazos de médio a longo prazo. Melhorias adicionais nos parâmetros, indicadores adicionais, stop loss podem melhorar o retorno e o controle de risco. Esta estratégia tem valor prático para negociação ao vivo, mas precisa de testes e otimização contínuos para estabilidade a longo prazo.


/*backtest
start: 2023-09-16 00:00:00
end: 2023-10-16 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version= 2
strategy("DEMA PRICE DİFFERENCE Strategy ",shorttitle="DPD% STR " ,overlay=false)

buyper =input(-1)
sellper=input(1)

demalen = input(50,title="Dema Length")

e1= ema(close,demalen)
e2=ema(e1,demalen)
demaprice  =   2 * e1 - e2

price=close

demadifper =  ((price-demaprice)/price)*100



plot(demadifper, color=red)
OverDemaPer = input(1, title="Band for OverBought")
UnderDemaPer= input(-1,title="Band for OverSold")




band1 = hline(OverDemaPer)
band0 = hline(UnderDemaPer)
zeroline=0
fill(band1, band0, color=green, transp=90)








yearfrom = input(2018)
yearuntil =input(2019)
monthfrom =input(6)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)



if (  crossover(demadifper,buyper)) 
    strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND",  comment="BUY")
    
else
    strategy.cancel(id="BUY")


if ( crossunder(demadifper,sellper)  ) 

    strategy.entry("SELL", strategy.short,stop=close, oca_name="TREND",  comment="SELL")
else
    strategy.cancel(id="SELL")
    
    
    

Mais.