Erros, bugs, perguntas - página 2560

 
Stanislav Korotky:

Isto funciona, é claro, mas acima de tudo.

Outro problema KB dos últimos tempos é que não se pode alojar mqh que não se compila.

Isto é, a mqh não compila em ME, mas a mq5 com um inlude desta mqh compila. Tais bibliotecas são agora proibidas.

Por exemplo, esta biblioteca não pode ser colocada de acordo com as novas regras.

 
Stanislav Korotky:

Já vi o que é sugerido no artigo. Funciona certamente, mas através de e através. Não uma solução para um problema, mas a criação de novos (converter ao preparar recursos, inchar a fonte, mantê-la actualizada com o recurso original, e deixar de fora a suposta dependência da biblioteca, horrível em todos os sentidos).

O uso padrão do MQL, está "no mesmo lugar"?

E empurrar fechos de correr para a kodobase, pedindo ao utilizador para editar a fonte, não é através do mesmo sítio?

Propus um método padrão suportado, sem qualquer dança com o pedido ao utilizador para editar as fontes e descarregar arquivos adicionais, e depois desempacotá-los nos locais certos. Não é através do mesmo lugar?

E onde vê a dependência de uma classe em relação a uma biblioteca no método proposto? É uma parte dela. E com um pouco mais de conhecimento do que o básico, pode simplesmente fazê-lo sem lhe virar o nariz para cima. Mas é melhor e mais digno manter uma opinião sobre código horrível e assustador e não fazer coisas menos estúpidas - forçar os utilizadores a fazer um monte de coisas extra, enquanto arrogantemente se fala de "um só lugar".

 
fxsaber:

Outro problema KB do passado recente é que não se pode alojar mqh que não se compila.

Isto é, a mqh não compila em ME, mas a mq5 com esta mqh inlude compila. Tais bibliotecas são agora proibidas.

Por exemplo, esta biblioteca não pode ser colocada de acordo com as novas regras.

Porquê fazer um mqh que não compila sem mq5 ?

 

Para as últimas construções de MT5, foi encontrado o seguinte problema.

Após o próximo teste do Expert Advisor, este começa subitamente a informar que a conta está em netting, embora na realidade a conta esteja em hedging.

Em particular, esta secção de código no Expert Advisor é accionada:

   ENUM_ACCOUNT_MARGIN_MODE  mm = (ENUM_ACCOUNT_MARGIN_MODE)AccountInfoInteger(ACCOUNT_MARGIN_MODE);
   if (mm != ACCOUNT_MARGIN_MODE_RETAIL_HEDGING)
   {
      string i_log = "The EA works only on accounts with hedging positions. It can't be used on your trading account";
      logs.Log(i_log);
      m_global_error = true;
      res = false;
   }

Não consigo encontrar a regularidade do erro até agora. Pode ocorrer no momento do início da sessão de negociação do corretor.

A reinicialização do terminal ajuda.

 
Agora o MT5 foi novamente actualizado para 2143, embora já o tivesse sido no fim-de-semana. São as pequenas coisas, mas não posso abrir uma nova conta de demonstração da MQ - é sério. Selecciono MetaQuotes Software, carrego no botão seguinte e nada acontece. A mesma coisa com outro servidor MQ.
 
Alexey Volchanskiy:
Agora o MT5 foi novamente actualizado para 2143, embora eu já o tenha actualizado durante o fim-de-semana. São as pequenas coisas, mas não consigo abrir uma nova conta de demonstração da MQ - é sério. Selecciono MetaQuotes Software, carrego no botão seguinte e nada acontece. A mesma coisa com outro servidor MQ.

O fim-de-semana passado foi a mesma situação, o trabalho deve ter sido

 
Maksim Emeliashin:

Para as últimas construções de MT5, foi encontrado o seguinte problema.

Após o próximo teste do Expert Advisor, este começa subitamente a informar que a conta está em netting, embora na realidade a conta esteja em hedging.

Em particular, esta secção de código no Expert Advisor é accionada:

Não consigo encontrar a regularidade do erro até agora. Pode ocorrer no momento do início da sessão de negociação do corretor.

A reinicialização do terminal ajuda.

Afirmativo. Enfrentei este erro no domingo muito antes da abertura dos comércios.

 

Não consegui encontrar um tópico com testes de operações/operadores simples, a última vez que o testei destruí o mito #1https://www.mql5.com/ru/forum/160683/page933#comment_12780905

Eu queria usar o caso em vez de "se", mas no início da era do computador estava convencido que o caso era demasiado longo contra "se",

testado, funciona da mesma forma, pode usar o caso para a legibilidade do texto do código:

2019.09.16 08:13:42.157 SpeedTst (EURUSD,H1) #1 : se

2019.09.16 08:15:30.640 SpeedTst (EURUSD,H1) if : loops=1215752192 ms=108469

2019.09.16 08:15:30.640 SpeedTst (EURUSD,H1) no2 : case

2019.09.16 08:17:19.134 SpeedTst (EURUSD,H1) if : loops=1215752192 ms=108515

2019.09.16 08:17:19.134 SpeedTst (EURUSD,H1) #3 : se

2019.09.16 08:19:07.662 SpeedTst (EURUSD,H1) if : loops=1215752192 ms=108516

2019.09.16 08:19:07.662 SpeedTst (EURUSD,H1) #4 : caso

2019.09.16 08:20:56.122 SpeedTst (EURUSD,H1) if : loops=1215752192 ms=108453

2019.09.16 08:20:56.122 SpeedTst (EURUSD,H1) #5 : se

2019.09.16 08:22:44.570 SpeedTst (EURUSD,H1) if : loops=1215752192 ms=108469

2019.09.16 08:22:44.570 SpeedTst (EURUSD,H1) #6 : caso

2019.09.16 08:24:33.023 SpeedTst (EURUSD,H1) se: loops=1215752192 ms=108437

Arquivos anexados:
SpeedTst.mq5  12 kb
 
Artyom Trishkin:

O uso padrão de ferramentas MQL é "through and through" ?

Não compreende seriamente o quanto a sua solução perde com a simples capacidade de adicionar um fecho com a sua própria estrutura?
 
TheXpert:
Não compreende seriamente o quanto a sua solução perde com a simples capacidade de adicionar um fecho com a sua própria estrutura?

Claro que ele compreende. Mas neste momento a sua solução funciona e os fechos não. Então porquê a fricção?