Perguntas de Iniciantes MQL5 MT5 MetaTrader 5 - página 1373

 
A tentar.
 
Nikita Chernyshov #:

O tampão não deve ser apanhado pela cor, mas sim pelo valor.

Vejam o que o tampão produz quando muda de cor.

Ou seja, digamos que existem dois amortecedores. Vermelho e verde.

Produzir estes dois amortecedores via Commen e rastrear o que o amortecedor mostra quando está 'activo'. Estes são valores numéricos. Estes são aqueles com os quais interage.

Não dê conselhos que sejam adequados para mql4 e nem sempre adequados para mql5

 
Oleg Kolesov #:
Olá. Como posso obter o índice de cores no Expert Advisor? (Para obter um sinal quando uma cor muda).

Como regra, um indicador tem primeiro um tampão de valor, seguido de um tampão de cor.

   SetIndexBuffer(0, buffMACD, INDICATOR_DATA);           // Буфер данных
   SetIndexBuffer(1, colorBuff, INDICATOR_COLOR_INDEX);   // Буфер цвета
   SetIndexBuffer(2, buffSignal, INDICATOR_DATA);         // Буфер данных
   SetIndexBuffer(3, colorSignal, INDICATOR_COLOR_INDEX); // Буфер цвета

Depois copia-se os valores do 1º ou 3º tampão depois de receber o manípulo indicador. Só pode haver valores inteiros a partir de zero, 0 e acima, dependendo do número de cores definidas no indicador. Tudo o que precisa de saber ao programar a EA.

 

Pode dizer-me como criar um objecto gráfico em MQL5 para evitar o erro 4202?

Utilizei este código em MQL4:

   string Obj_Rectangle="Object"; 

   if(ObjectFind(0,Obj_Rectangle)==-1)                               
     {
      ObjectCreate(0,Obj_Rectangle,OBJ_RECTANGLE_LABEL,0,0,0);        
      ObjectSetInteger(0,Obj_Rectangle,OBJPROP_CORNER,0);
      ObjectSetInteger(0,Obj_Rectangle,OBJPROP_XDISTANCE,100);
      ObjectSetInteger(0,Obj_Rectangle,OBJPROP_YDISTANCE,100);
      ObjectSetInteger(0,Obj_Rectangle,OBJPROP_XSIZE,200);
      ObjectSetInteger(0,Obj_Rectangle,OBJPROP_YSIZE,150);
      ObjectSetInteger(0,Obj_Rectangle,OBJPROP_BGCOLOR,clrBlue);
     }
     
   Alert(_LastError);

Mas em MQL5 ObjectFind() devolve erro 4202

 
leon_17 #:

Pode dizer-me como criar um objecto gráfico em MQL5 para evitar o erro 4202?

Utilizei este código em MQL4:

Mas em MQL5, ObjectFind() devolve erro 4202

Se nenhum objecto for encontrado, é um erro de pesquisa de objectos.

ERR_OBJECT_NOT_FOUND

4202

Objecto gráfico não encontrado


Não o alerte...

 
Alexei, obrigado por quereres ajudar. Também vós tendes o princípio: para os famintos uma vara, não um peixe.
 
Alexey Viktorov #:

Se nenhum objecto for encontrado, este é o erro de pesquisa do objecto.

ERR_OBJECT_NOT_FOUND

4202

Objecto gráfico não encontrado


Não é preciso alertá-lo...

Bem, uma vez ensinaram-me que _LastError não devia devolver nenhum erro. E até parecia ser uma exigência do mercado. Já não é tão rigoroso?

E também, tanto quanto sei, este erro poderia sobrescrever, algum outro erro mais importante no código, como lidar com isso?

 
leon_17 #:

Bem, uma vez ensinaram-me que _LastError não devia devolver nenhum erro. E até parecia ser uma exigência do mercado. Já não é tão rigoroso?

E também, tanto quanto sei, este erro poderia sobrescrever, algum outro erro mais importante no código, como lidar com ele?

A variável _LastError armazena o valor do último erro que ocorreu durante a execução do programa mql5.

Alguém lhe ensinou mal. A variável _LastError armazenará o valor obtido até que ocorra o próximo, próximo erro.

É um requisito do mercado que não sejam recebidos erros de execução por parte do servidor do corretor\dc. Ler documentação...

Документация по MQL5: Предопределенные переменные / _LastError
Документация по MQL5: Предопределенные переменные / _LastError
  • www.mql5.com
_LastError - Предопределенные переменные - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Oleg Kolesov #:
Alexei, obrigado por quereres ajudar. Também vós tendes o princípio: para os famintos uma vara, não um peixe.
Não apenas uma cana de pesca, mas uma explicação de onde ler sobre a resolução do problema. Se uma pessoa quiser compreender o problema, estou disposto a passar tempo até que compreenda as minhas palavras. Mas se lhe pedirem para o fazer e eu usar este modelo para o descobrir, então a pessoa não o descobrirá. Ele precisa de alguém que o faça, e depois a erva cresce.
 
Concordo.