Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 1314

 
ponochka:
per capire cosa c'è là fuori
bool VerifityToSchet()
  {
        Print((string)AccountNumber()+" = "+(string)account);
   if(AccountNumber() != account)
     {
      Print("На данном счете индикатор работать не будет, вы его приобрели незаконным путем!!!");   
     }else
     {
     Print("На данном счете индикатор авторизован");
     }
   return(false);
  } 
 
Pavel Kolchin:
per vedere cosa c'è

quando si riavvia il terminale, la consoleAccountNumber() riceve 0, ma il terminale stesso si carica sotto l'account e funziona

 
ponochka:

quando si riavvia il terminale, la consoleAccountNumber() riceve 0, ma il terminale stesso si carica sotto l'account e funziona

Bolly, stai scrivendo nel posto sbagliato.

 
ponochka:

Quando si riavvia il terminale, la consoleAccountNumber() riceve 0, ma il terminale stesso è caricato sotto l'account e funziona

I dati del conto, il saldo, ecc. non sono in grado di ottenere informazioni reali dal server -init() funziona prima che il terminale riceva i valori dal server.

 
Vitaly Muzichenko:

I dati del conto, il saldo, ecc. non hanno il tempo di ottenere informazioni aggiornate dal server -init() funziona prima che il terminale riceva i valori dal server.

Bene! Risolto! Funziona! Ed ecco un'altra domanda importante:

C'è un assegno per il conto sull'indicatore! Sta in piedi e funziona nel terminale, ma a un certo momento l'utente cambia manualmente l'account, secondo le regole di controllo l'indicatore dovrebbe sostenere che l'account è sbagliato, ma non fa nulla e può continuare a lavorare finché non si cambiano le sue impostazioni, anche dopo il riavvio del terminale! Come posso combattere questo?

 
ponochka:

Va bene! Risolto! Funziona! Ed ecco un'altra domanda scottante:

C'è un controllo del conto sull'indicatore! Sta in piedi e funziona nel terminale, ma a un certo momento l'utente cambia manualmente l'account, secondo le regole di controllo l'indicatore dovrebbe sostenere che l'account è sbagliato, ma non fa nulla e può continuare a lavorare finché non si cambiano le sue impostazioni, anche dopo il riavvio del terminale! Come posso combattere questo?

Qualcosa non è scritto correttamente

P.S. Provate a staccare Print( AccountNumber() ); cosa mostrerà quando il conto cambia? Ma non nell'iniit comprensibile
 

Ciao a tutti!

Nel libro su MT4 in uno dei compiti è scritto: che per determinare se c'è una nuova barra, confrontare il prezzo di apertura della barra zero con una barra numero 1 (cioè, se il prezzo di apertura è cambiato e una nuova barra è apparso) usato questo metodo, ma ha incontrato un salto messaggi nel tester, ha iniziato a capire, e ricordato che - diverse barre possono avere lo stesso prezzo di apertura e quindi questo metodo può portare non solo a errori ma perdite rispettivamente. Fate attenzione e non usate il prezzo di apertura ma il tempo o altri metodi!!!

 
Roni Iron:

Ciao a tutti!

Nel libro su MT4 in uno dei compiti è scritto: che per determinare se c'è una nuova barra, confrontare il prezzo di apertura di zero bar con bar numero 1 (cioè, se il prezzo di apertura è cambiato e una nuova barra è apparso) usato questo metodo, ma ha incontrato un salto messaggi nel tester, ha iniziato a capire, e ricordato che - diverse barre possono avere lo stesso prezzo di apertura e quindi questo metodo può portare non solo a errori ma anche perdite rispettivamente. Fate attenzione e usate non il prezzo di apertura ma il tempo o altri modi!!!

iTime

 
Vitaly Muzichenko:

Qualcosa non è scritto correttamente.

P.S. Provate a staccare Print( AccountNumber() ); cosa mostrerà quando il conto cambia? Ma non nell'init comprensibile

mostra il nuovo (cambiato) account, ma non succede nient'altro

 
ponochka:

Va bene! Risolto! Funziona! Ed ecco un'altra domanda scottante:

C'è un controllo del conto sull'indicatore! Sta in piedi e funziona nel terminale, ma a un certo momento l'utente cambia manualmente l'account, secondo le regole di controllo l'indicatore dovrebbe sostenere che l'account è sbagliato, ma non fa nulla e può continuare a lavorare finché non si cambiano le sue impostazioni, anche dopo il riavvio del terminale! Come posso combattere questo?

Ho questo problema in MT4, non so se quando oninit si attiva dopo il cambio di conto il numero di conto non ha avuto il tempo di aggiornarsi nell'ambiente o qualche altro bug, ho deciso di usare il timer

void  OnTimer()

       {

        static long account=AccountNumber();

        if(AccountNumber()!=account)

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