Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1314

 
ponochka:
para entender o que está lá fora
bool VerifityToSchet()
  {
        Print((string)AccountNumber()+" = "+(string)account);
   if(AccountNumber() != account)
     {
      Print("На данном счете индикатор работать не будет, вы его приобрели незаконным путем!!!");   
     }else
     {
     Print("На данном счете индикатор авторизован");
     }
   return(false);
  } 
 
Pavel Kolchin:
para ver o que está lá

ao reiniciar o terminal, o consoleAccountNumber() recebe 0, mas o terminal em si carrega sob a conta e funciona

 
ponochka:

ao reiniciar o terminal, o consoleAccountNumber() recebe 0, mas o terminal em si carrega sob a conta e funciona

Bolly, você está escrevendo no lugar errado.

 
ponochka:

Ao reiniciar o terminal, o consoleAccountNumber() recebe 0, mas o terminal em si é carregado sob a conta e funciona

Dados da conta, saldo, etc. não são capazes de obter informações reais do servidor -init() funciona antes que o terminal receba valores do servidor.

 
Vitaly Muzichenko:

Dados da conta, saldo, etc. não têm tempo para obter informações atualizadas do servidor -init() funciona antes que o terminal receba valores do servidor.

Ótimo! Fixo! Funciona! E aqui está outra questão importante:

Há uma verificação de conta no indicador! Ele fica e funciona no terminal, mas em um determinado momento o usuário muda a conta manualmente, de acordo com as regras de verificação o indicador deve argumentar que a conta está errada, mas ele não faz nada e pode continuar funcionando até que você altere suas configurações, mesmo após o reinício do terminal! Como posso combater isto?

 
ponochka:

Muito bem! Conserte-o! Está funcionando! E aqui vai outra pergunta escaldante:

Há uma verificação de conta no indicador! Ele fica e funciona no terminal, mas em um determinado momento o usuário muda a conta manualmente, de acordo com as regras de verificação o indicador deve argumentar que a conta está errada, mas ele não faz nada e pode continuar funcionando até que você altere suas configurações, mesmo após o reinício do terminal! Como posso combater isto?

Algo não está escrito corretamente

P.S. Tente não imprimir Imprimir( AccountNumber() ); o que vai mostrar quando a conta mudar? Mas não no iniit compreensível
 

Olá!

No livro sobre MT4 em uma das tarefas está escrito: que para determinar se há uma nova barra, comparar o preço de abertura da barra zero com a barra número 1 (ou seja, se o preço de abertura mudou e uma nova barra apareceu) utilizou este método, mas encontrou uma mensagem de pulo no testador, começou a entender, e lembrou que - várias barras podem ter o mesmo preço de abertura e, portanto, este método pode levar não só a erros mas também a perdas, respectivamente. Tenha cuidado e use não o preço de abertura, mas o tempo ou outros métodos!!!

 
Roni Iron:

Olá!

No livro sobre MT4 em uma das tarefas está escrito: que para determinar se há uma nova barra, comparar o preço de abertura da barra zero com a barra número 1 (ou seja, se o preço de abertura mudou e uma nova barra apareceu) utilizou este método, mas encontrou uma mensagem de pulo no testador, começou a entender, e lembrou que - várias barras podem ter o mesmo preço de abertura e, portanto, este método pode levar não só a erros, mas também a perdas, respectivamente. Tenha cuidado e use não o preço de abertura, mas o tempo ou outras formas!!!

iTime

 
Vitaly Muzichenko:

Algo não está escrito corretamente.

P.S. Tente não imprimir Imprimir( AccountNumber() ); o que vai mostrar quando a conta mudar? Mas não no init compreensível

mostra a nova (alterada) conta, mas nada mais acontece

 
ponochka:

Muito bem! Conserte-o! Está funcionando! E aqui vai outra pergunta escaldante:

Há uma verificação de conta no indicador! Ele fica e funciona no terminal, mas em um determinado momento o usuário muda a conta manualmente, de acordo com as regras de verificação o indicador deve argumentar que a conta está errada, mas ele não faz nada e pode continuar funcionando até que você altere suas configurações, mesmo após o reinício do terminal! Como posso combater isto?

tenho este problema no MT4, não sei se quando oninit aciona após a mudança de conta o número da conta não teve tempo de atualizar no ambiente ou algum outro bug, decidi usar o timer

void  OnTimer()

       {

        static long account=AccountNumber();

        if(AccountNumber()!=account)

         {
                
            Print(account," was");
            account=AccountNumber();
            Print(account," now");
		 Полундра и т.п. }}
        
Razão: