Estratégia quantitativa da EMA e MACD com funcionamento duplo e liderança do índice de mercado

Autora:ChaoZhang, Data: 2023-12-12 12:13:25
Tags:

img

Resumo

Esta estratégia utiliza principalmente a linha média móvel EMA e o indicador MACD para determinar as mudanças nos padrões de mercado e executa estratégias de negociação de impulso. A ideia central é ir longo quando a linha EMA de curto prazo cruza acima da linha EMA de longo prazo e o MACD cruza simultaneamente acima de 0, e ir curto quando a EMA de curto prazo cruza abaixo da EMA de longo prazo e o MACD cruza simultaneamente abaixo de 0.

Princípio

Esta estratégia integra o indicador de linha média móvel e o indicador MACD.

Em primeiro lugar, ele usa dois indicadores de EMA com comprimentos de ciclo diferentes, um é a linha EMA de 25 ciclos e o outro é a linha EMA de 50 ciclos. A linha EMA de 25 ciclos pode refletir tendências de curto prazo, enquanto a linha EMA de 50 ciclos reflete tendências de médio e longo prazo. Quando a linha EMA de curto prazo cruza acima da linha EMA de longo prazo da parte inferior, ela indica que o mercado está se voltando de declínio para alta, o que é um sinal cruzado de ouro para ir longo. Quando a EMA de curto prazo cruza abaixo da EMA de longo prazo de cima, ela indica que o mercado está se voltando de cima para baixo, o que é um sinal cruzado de morte para ir curto.

O indicador MACD também inclui uma linha DIF e uma linha DEA, que representam a diferença entre as médias móveis exponenciais de curto e longo prazo, calculadas por EMAs duplas. Esta estratégia define a DIF como a diferença entre a EMA de 12 dias e a EMA de 26 dias. A linha DEA é a média móvel exponencial de 9 dias da DIF. A linha DIF representa o impulso, enquanto a linha DEA representa a média MACD. Quando a DIF cruza acima da linha DEA da parte inferior, gera um sinal de compra. Quando a DIF cruza abaixo da DEA de cima, gera um sinal de venda.

Combinando esses dois indicadores, um sinal de entrada longo é gerado quando a EMA de 25 dias tem uma cruz de ouro da EMA de 50 dias, enquanto a linha DIF do MACD cruza acima da linha DEA. Um sinal de entrada curto é gerado quando a EMA de 25 dias tem uma cruz de morte da EMA de 50 dias, enquanto a linha DIF do MACD cruza abaixo da linha DEA.

Análise das vantagens

Esta é uma estratégia muito típica de dupla via que se integra com o indicador MACD para gerar sinais de negociação mais confiáveis com as seguintes vantagens:

  1. O uso de linhas EMA duplas pode evitar fugas e falsos breakouts para gerar sinais de negociação mais confiáveis.

  2. A integração do indicador MACD permite verificar ainda mais os sinais de negociação e evitar o risco de falsos sinais de dupla via da EMA, melhorando a eficácia prática da estratégia.

  3. Usando a linha de 25 dias e a linha de 50 dias como linha rápida e lenta, a selecção dos parâmetros é mais precisa, podendo captar alterações significativas da tendência em ciclos de médio e curto prazo.

  4. Através da busca do impulso e da mentalidade de reversão média, esta estratégia pode ultrapassar o índice de referência e alcançar retornos significativos durante fortes tendências ascendentes e descendentes no mercado mais amplo.

  5. A lógica estratégica é simples e direta, fácil de compreender e implementar, adequada para iniciantes quantitativos.

  6. Os parâmetros podem ser cuidadosamente otimizados para melhor adaptar a estratégia a diferentes produtos e ambientes de mercado.

Análise de riscos

Ainda existem alguns riscos a considerar para esta estratégia:

  1. A possibilidade de falsos sinais de EMA permanece, e ainda pode ocorrer em movimentos violentos do mercado.

  2. Os parâmetros MACD necessitam de otimização e ajuste contínuos, caso contrário podem ocorrer sinais incorretos ou lags de sinal.

  3. Precisa ser cuidadoso se a configuração do ponto de stop loss é razoável para evitar avanços ineficazes que causam perdas maiores.

  4. É necessário prestar atenção às alterações do ambiente de mercado e de política para evitar riscos sistémicos que causem perdas maiores.

  5. A necessidade de controlar o tamanho das posições e o nível de alavancagem para evitar o risco de liquidação forçada decorrente de tendências unilaterais.

Orientações de otimização

Esta estratégia pode também ser otimizada nos seguintes aspectos:

  1. Teste combinações de parâmetros mais precisas com maior eficiência prática, como usar linhas EMA de 20 e 60 dias como trilhas de negociação, com DIF como a diferença entre EMA de 10 e EMA de 20 dias.

  2. Aumentar a confirmação dos indicadores de volume de negociação para evitar falsos breakouts de baixo volume.

  3. Incorporar indicadores de volatilidade como o ATR para determinar métodos mais científicos de stop loss.

  4. Utilize algoritmos de aprendizagem de máquina para otimizar automaticamente parâmetros para se adaptar dinamicamente a ambientes de mercado em mudança.

  5. Adicionar um módulo de controlo de dimensionamento de posição para ajustar dinamicamente as dimensões com base no desempenho e nas métricas da estratégia.

  6. Pode traçar sinais de estratégia em gráficos de prazos mais longos para auxiliar nas decisões sobre negociações direcionais de longo prazo.

Resumo

Esta estratégia integra os pontos fortes dos indicadores de linha média móvel e indicadores MACD julgando padrões de velas de maior qualidade através de linhas EMA duplas combinadas com DIF e DEA correspondendo à direção do momento MACD, formando uma estratégia de negociação de momento estável e eficiente. A lógica é simples e fácil de entender e otimizar, muito adequada para os traders quant começarem e implementarem. Através de testes e otimização contínuos, esta estratégia pode se tornar uma das estratégias de valor que superam os índices.


/*backtest
start: 2022-12-05 00:00:00
end: 2023-12-11 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="EMA+MACD", shorttitle="EMA+MACD", overlay=true)
// Getting inputs
fast_length = input(title="Fast Length", type=input.integer, defval=12)
slow_length = input(title="Slow Length", type=input.integer, defval=26)
src = input(title="Source", type=input.source, defval=close)


signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 9)
sma_source = input(title="Oscillator MA Type", type=input.string, defval="EMA", options=["SMA", "EMA"])
sma_signal = input(title="Signal Line MA Type", type=input.string, defval="EMA", options=["SMA", "EMA"])

fast_ma = sma_source == "SMA" ? sma(src, fast_length) : ema(src, fast_length)
slow_ma = sma_source == "SMA" ? sma(src, slow_length) : ema(src, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal == "SMA" ? sma(macd, signal_length) : ema(macd, signal_length)
hist = macd - signal
len1 = input(title="Len Ema 1 ",type=input.integer,defval=25)
len2 = input(title="Len Ema 2 ",type=input.integer,defval=50)
ema1 = ema(src,len1)
ema2 = ema(src,len2)

bull = crossover(ema1,ema2) and macd > 0
bear = crossover(ema2,ema1) and macd < 0
l1 = bull ? label.new(x=bar_index,y=low,yloc=yloc.belowbar,text="BUY",color=color.green,textcolor=color.white,style=label.style_triangleup) : na
l2 = bear ? label.new(x=bar_index,y=high,yloc=yloc.abovebar,text="SELL",color=color.red,textcolor=color.white,style=label.style_triangledown) : na


strategy.entry("LONG",strategy.long,when=bull)
strategy.entry("SHORT",strategy.short,when=bear)




Mais.