Erros, bugs, perguntas - página 1941

 

Pode dizer-me como é que o MT5 pode produzir tais resultados durante a optimização, as pessoas que sabem?

Este não é um caso isolado. Além disso, se pegar em qualquer linha e executar um único teste, o resultado será completamente diferente do que está na tabela.

Além disso, um único teste com e sem visualização dará resultados de teste completamente diferentes.

Além disso, se fizer o teste várias vezes, os resultados também podem por vezes diferir radicalmente.

=====

Isto começou com o terminal durante a última semana. Antes disso, parecia funcionar adequadamente. Ou talvez eu não tenha notado nada de errado com ela.

Tive o mesmo problema há um ano atrás. Aí o testador também mostrou resultados com configurações EA impossíveis. Por exemplo, se o Take Profit for desactivado num EA, produziu um resultado de teste, mas se o definirmos para 10000000000 pontos (ou seja, nunca pode ser alcançado, por isso é desactivado), o testador produziu resultados completamente diferentes.


Como posso combater tais insectos? Porque é que este problema pode surgir? Talvez eu esteja a fazer algo de errado?

Arquivos anexados:
ky1b.jpg  590 kb
 
Andrey Koldorkin:

Pode dizer-me como é que o MT5 pode produzir tais resultados durante a optimização, as pessoas que sabem?

Este não é um caso isolado. Além disso, se pegar em qualquer linha e executar um único teste, o resultado será completamente diferente do que está na tabela.

Além disso, um único teste com e sem visualização dará resultados de teste completamente diferentes.

Além disso, se fizer o teste várias vezes, os resultados também podem por vezes diferir radicalmente.

=====

Isto começou com o terminal durante a última semana. Antes disso, parecia funcionar adequadamente. Ou talvez eu não tenha notado nada de errado.

Tive o mesmo problema há um ano atrás. Aí o testador também mostrou resultados com configurações EA impossíveis. Por exemplo, se o Take Profit for desactivado num EA, produziu um resultado de teste, mas se o definirmos para 10000000000 pontos (ou seja, nunca pode ser alcançado, por isso é desactivado), o testador produziu resultados completamente diferentes.


Como posso combater tais insectos? Porque é que este problema pode surgir? Talvez eu esteja a fazer algo de errado?

Insira duas linhas no início da sua EA

#define  REPORT_TESTER // В тестере будут автоматически записываться отчеты
#include <Report.mqh> // https://www.mql5.com/ru/code/18801

Isto forçará o testador a guardar um relatório detalhado para cada passagem do optimizador e para uma única corrida.

Comparar o relatório de execução resultante do optimizador e a sua versão de uma única execução.

 
O MQL5-compiler é silencioso, e o MQL4++ adverte
m_pixels[y*m_width+x]=(r<<16|g<<8|b<<0|255<<24) &0xffffffff; // check operator precedence for possible error; use parentheses to clarify precedence

Quem está certo?

 
Erro de compilação (MT5b1641)
void NewFunc( int ) {}

#define  MACROS(A) New##A

void OnStart()
{  
  NewFunc(0);      // OK
  MACROS(Func(0)); // Error: 'NewFunc(0)' - undeclared identifier
}
 

Favor incluir macros

__SCRIPT__ - o ficheiro mq5-file compilado é um Script.

__INDICADOR__ - o ficheiro mq5 compilado é um Indicador.

__EXPERT__ - o ficheiro mq5 compilado é um Expert Advisor.

__SERVIÇO__ - o ficheiro .mq5 compilado é um Serviço.


Situação em que a MQLInfoInteger não pode ser utilizada

#ifdef __EXPERT__

void OnTick()
{
  static bool FirstRun = true;
  
  if (FirstRun)  
  {
    Print("FirstTick!");
    
    FirstRun = false;
  }
  
  OldOnTick();
}

#endif // __EXPERT__

#ifdef __SERVICE__

void OnTick( const string &Symb )
{
  static bool FirstRun = true;
  
  if (FirstRun)  
  {
    Print("FirstTick!");
    
    FirstRun = false;
  }
  
  OldOnTick(Symb);
}

#endif // __SERVICE__

#define OnTick OldOnTick

// Дальше код советника/сервиса.

 
Como posso obter um agente de relações públicas através da MQL? Medindo a velocidade do Agente, eu queria ter um RP, mas não está aqui.
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Состояние клиентского терминала
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Состояние клиентского терминала
  • www.mql5.com
Стандартные константы, перечисления и структуры / Состояние окружения / Состояние клиентского терминала - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
fxsaber:
Como posso obter um agente de relações públicas através da MQL? Estou a medir a velocidade do Agente, queria ter relações públicas, mas não há relações públicas aqui.

Qual é o objectivo? De qualquer forma, não se pode escolher agentes. Pode interromper uma tarefa se demorar demasiado tempo a completar, mesmo sem relações públicas.

 
Stanislav Korotky:

Qual é o objectivo? De qualquer forma, não se pode escolher agentes. É possível cortar uma tarefa se demorar demasiado tempo a completar, mesmo sem relações públicas.

O objectivo é ser capaz de mostrar inconsistência no desempenho real do agente de RP. Ou vice-versa - para mostrar a adequação do cálculo da classificação.

 
Incapaz de abrir uma conta demo MT4 em MetaQuotes-Demo.
 

O testador MT4 no modo "Todos os tiquetaques" faz transacções em bares que não estão na história