Indicadores: Divergência MACD - página 2

 

tudo está bem, mas se você sobrepor o MACD original e esse MACD um ao outro, verá que, por algum motivo, a linha principal e a linha de sinal entre eles não coincidem.

 

Olá, Alain,

obrigado por fornecer esse belo indicador.

No entanto, estou com um pequeno problema. Estou tentando implementá-lo em um EA e tenho problemas para copiar o buffer e obter um valor significativo para criar um sinal.

Os buffers 0 e 1 são os buffers que fornecem um valor assim que uma divergência é detectada. Quando não há divergência, esses buffers não fornecem um valor de volta na janela de dados.

Até aí tudo bem, mas quando eu copio os dois buffers, o valor que é devolvido é sempre o mesmo para os dois buffers e não reflete o valor devolvido na janela de dados.

É assim que eu copio o buffer:

         if(CopyBuffer(macddiv_handle,0,1,1,macddiv_value1)<0 || CopyBuffer(macddiv_handle,1,1,1,macddiv_value2)<0)
            {
               Alert("Error Copying Buffer macddivergence - error:",GetLastError());
               ResetLastError();
               return;
            }     

Depois disso, apenas imprimo os valores no diário e obtenho esses resultados estranhos para cada candle:

2013.11.18 13:33:36 2013.01.02 02:20:00 val2: 1.797693134862316e+308
2013.11.18 13:33:36 2013.01.02 02 02:20:00 val1: 1.797693134862316e+308
2013.11.18 13:33:36 2013.01.02 02 02:15:00 val2: 1.797693134862316e+308
2013.11.18 13:33:36 2013.01.02 02 02:15:00 val1: 1.797693134862316e+308
2013.11.18 13:33:36 2013.01.02 02 02:10:00 val2: 1.797693134862316e+308
2013.11.18 13:33:36 2013.01.02 02 02:10:00 val1: 1.797693134862316e+308

Você pode me ajudar a obter um valor significativo?

 
Klammeraffe:

Olá, Alain,

obrigado por fornecer esse belo indicador.

No entanto, estou com um pequeno problema. Estou tentando implementá-lo em um EA e tenho problemas para copiar o buffer e obter um valor significativo para criar um sinal.

Os buffers 0 e 1 são os buffers que fornecem um valor assim que uma divergência é detectada. Quando não há divergência, esses buffers não fornecem um valor de volta na janela de dados.

Até aí tudo bem, mas quando eu copio os dois buffers, o valor que é devolvido é sempre o mesmo para os dois buffers e não reflete o valor devolvido na janela de dados.

É assim que eu copio o buffer:

Depois disso, apenas imprimo os valores no diário e obtenho esses resultados estranhos para cada candle:

2013.11.18 13:33:36 2013.01.02 02:20:00 val2: 1.797693134862316e+308
2013.11.18 13:33:36 2013.01.02 02 02:20:00 val1: 1.797693134862316e+308
2013.11.18 13:33:36 2013.01.02 02 02:15:00 val2: 1.797693134862316e+308
2013.11.18 13:33:36 2013.01.02 02 02:15:00 val1: 1.797693134862316e+308
2013.11.18 13:33:36 2013.01.02 02 02:10:00 val2: 1.797693134862316e+308
2013.11.18 13:33:36 2013.01.02 02 02:10:00 val1: 1.797693134862316e+308

Você pode me ajudar a obter um valor significativo?

É um valor significativo, ele corresponde a EMPTY_VALUE, que é igual a DBL_MAX por padrão. É uma boa prática usá-lo para o valor do buffer do indicador que não precisa ser desenhado no gráfico.

Você pode gerenciá-lo da seguinte maneira em seu EA:

if(macddiv_value1[index] != EMPTY_VALUE) ...
 
angevoyageur:

É um valor significativo, corresponde a EMPTY_VALUE, que é igual a DBL_MAX por padrão. É uma boa prática usá-lo para o valor do buffer do indicador que não precisa ser desenhado no gráfico.

Você pode gerenciá-lo da seguinte forma em seu EA:

Obrigado por sua ajuda. Agradeço muito!

Certo, eu estava procurando por !=0.

No entanto, o problema é que mesmo as velas que produzem sinais fornecem esse valor, embora a janela de dados forneça outro.


   if (entry_signal==2)
      {
         Print("val1: ",macddiv_value1[0]);
         Print("val2: ",macddiv_value2[0]);
         
         buy_condition_1 = macddiv_value1[0] != EMPTY_VALUE;
         
         sell_condition_1 = macddiv_value2[0] != EMPTY_VALUE; 
      }
 
Klammeraffe:

Obrigado por sua ajuda. Ela é muito apreciada!

Certo, eu estava procurando por !=0.

No entanto, o problema é que até mesmo as velas que produzem sinais fornecem esse valor, embora a janela de dados forneça outro.


Onde está o valor de val2 em 2013.01.02 13:50:00 no seu registro? Ele não aparece.
 
angevoyageur:
Onde está o valor de val2 em 2013.01.02 13:50:00 no seu registro? Ele não aparece.

Essa é uma boa pergunta. Eu não notei isso. Mas esse é exatamente o valor que está faltando para produzir um sinal, não é?

Porque o valor2 é o valor do buffer 1 que mostra a divergência de baixa.

Estranho.

 
Klammeraffe:

Essa é uma boa pergunta. Eu não notei isso. Mas esse é exatamente o valor que está faltando para produzir um sinal, não é?

Porque o valor2 é o valor do buffer 1 que mostra a divergência de baixa.

Estranho.

Sim, estranho. De qualquer forma, você leu essa "resposta inútil" acima no tópico?

Fórum

Indicadores: Divergência MACD

angevoyageur, 2013.11.05 19:14

Então amigo.

O sinal é dado no fechamento de um candle, 1 candle no passado (2 se você contar o candle aberto e não o 3). É normal e é assim que tem que funcionar. A divergência é baseada na pesquisa de extremos (topo/base). Se você tiver uma maneira de detectar um extremo no candle atual, sugiro que aprenda a programar e nos forneça, gratuitamente, essa grande inovação.

Obrigado por sua contribuição.

Deixo que você a leia, entenda e use-a para corrigir seu código. Se não encontrar, eu lhe darei a resposta amanhã
 
angevoyageur:

Sim, é estranho. De qualquer forma, você leu essa "resposta inútil" acima no tópico?

Deixo que você a leia, entenda e use-a para corrigir seu código. Se não encontrar, eu lhe darei a resposta amanhã
Eu não li. Mas essa resposta não é inútil de forma alguma. Obrigado por sua ajuda. Eu o corrigi :)
 

O que é o indicador MACD? Como posso usá-lo? (baseado no artigo do dailyforex)

Um dos indicadores técnicos mais comuns usados pelos day traders nos mercados financeiros é o Moving Average Convergence Divergence (MACD), mais comumente chamado de MACD. Mas um erro que muitos traders novos cometem é simplesmente começar a usar esse indicador sem realmente entender como ele funciona ou como faz seus cálculos. Isso pode levar a erros dispendiosos que deveriam ser completamente evitados. Portanto, faz sentido estudar a lógica e os cálculos por trás do MACD (e de todos os outros indicadores) para configurar com mais precisão suas posições de day trading e gerar ganhos de forma consistente.




A divergência de convergência da média móvel (MACD) definida

Qualquer pessoa com alguma experiência nos mercados de câmbio e em estratégias de análise técnica provavelmente já ouviu falar muito sobre a divergência de convergência da média móvel (MACD). Mas o que exatamente o MACD nos diz e como ele é calculado? Sem uma compreensão dessas áreas, pode ser difícil perceber os sinais de negociação quando eles surgem. Aqui, vamos desconstruir o indicador MACD e explicar como e por que ele é comumente usado.

"Em sua forma mais básica", disse Haris Constantinou, analista de mercados, "o MACD é um indicador de momentum projetado para seguir as tendências existentes e encontrar novas tendências". O MACD faz isso mostrando as diferenças e as relações entre uma combinação de dois níveis de médias móveis e a própria atividade de preço.

Cálculos do MACD

Para determinar e calcular o MACD, devemos subtrair uma média móvel exponencial (EMA) de 26 períodos de uma EMA de 12 períodos. Em seguida, é traçada uma MME de 9 períodos do MACD, que se torna a linha de sinal do indicador. A linha de sinal é plotada sobre o MACD e será usada como leitura de acionamento para sinais de negociação (sinais de compra e venda). Esses elementos formam a base da construção do MACD, e é importante ter uma sólida compreensão desses elementos se você planeja usar o indicador em suas negociações diárias.

Três abordagens comuns do MACD

Agora que entendemos os fundamentos de como o MACD é calculado, é uma boa ideia examinar algumas das formas comuns como o MACD é visto pelos traders para que possamos ter uma noção de como exatamente o indicador é usado para identificar oportunidades de negociação. Há algumas maneiras diferentes de interpretar o indicador, e os três métodos mais comuns que se mostraram mais eficazes para os traders incluem

  • Crossovers,
  • Divergências,
  • e na identificação de condições de sobrecompra/sobrevenda
Como o indicador se tornou uma parte importante da comunidade de negociação técnica, é uma boa ideia analisar algumas dessas abordagens com mais profundidade. Mas, antes de fazer isso, é essencial que você entenda os conceitos básicos. Não fazer isso é o que leva a um grande número de perdas para muitos traders que estão apenas começando.