Especialistas: Assistente MQL5 - Sinais de negociação baseado em Martelo/Enforcado + RSI

 

Assistente MQL5 - Sinais de negociação baseado em Martelo/Enforcado + RSI:

Vamos nos concentrar nos sinais de negociação obtidos a partir dos padrões de velas "Martelo/Enforcado" e confirmado pelo indicador Índice de Força Relativa (RSI). O código do Expert Advisor baseado nesta estratégia pode ser gerado automaticamente utilizando o Assistente MQL5.

Fig. 1. Padrão de vela "Martelo" Fig. 2. Padrão de vela "Enforcado"

Autor: MetaQuotes Software Corp.

 

Tentei realizar o exercício com essa classe de sinal e algo não funcionou.

Primeiro, usando o depurador, superei o erro de que a inicialização do campo m_applied da classe de sinal não é fornecida, o que faz com que o indicador RSI não seja criado.

Em seguida, descobri que no método CCandlePattern::CheckPatternHangingMan() parece estar faltando um colchete de fechamento para chamar a função MathMin():

//+------------------------------------------------------------------+
//| Checks formation of Hanging Man candlestick pattern              |
//+------------------------------------------------------------------+
bool CCandlePattern::CheckPatternHangingMan()
  {
//--- Hanging man
   if((MidPoint(1)>CloseAvg(2))                                 && // up trend
      (MathMin(Open(1),Close(1)>(High(1)-(High(1)-Low(1))/3.0)) && // body in upper 1/3
      (Close(1)>Close(2)) && (Open(1)>Open(2))))                   // body gap
      return(true);
//---
   return(false);
  }

Além disso, no depurador, vejo que as posições curtas são abertas pela condição de fechamento de uma posição longa. A que isso pode estar relacionado?

E outra pergunta: por que o código com comentários está em russo na descrição, mas nos arquivos anexados não é o mesmo, mas em inglês?