Errori, bug, domande - pagina 979

 

Saluti!

Anche oggi l'Expert Advisor XAUUSD ha scambiato ad un prezzo strano:

Picco XAUUSD

Server AlpariNZ-MT5, conto demo.

Si tratta di una semplice espulsione del prezzo non di mercato? Qualcuno l'ha incontrato?

 
Usato il profiler, è certamente una cosa unica, non ho mai visto niente di simile prima, convinto della gravità degli elementi grafici. La questione è come organizzare al meglio l'aggiornamento della stessa etichetta per ogni spunta?
 
vlad_123:

Saluti!

L'Expert Advisor XAUUSD ha scambiato ad un prezzo strano anche oggi:

Server AlpariNZ-MT5, conto demo.

Si tratta di una semplice espulsione del prezzo non di mercato? Qualcuno l'ha incontrato?

Se fosse una demo, potreste chiedere ad un broker un conto reale e sulla base della sua risposta fare domande al Service Desk. E non ci si può lamentare dei giocattoli.
 
Denisimus:
Ciao, la scheda segnali in MT4 è sparita, c'era la mattina, è arrivata la sera ed è sparita. E ora il popup non viene eseguito, cosa fare per favore consigliare
La risposta è molto probabilmente sul tuo computer, puoi reinstallare il terminale.
 
zfs:
Se fosse una demo, se fosse un conto reale si potrebbe chiedere al broker e già fare domande al Service Desk sulla base della sua risposta. Avrei potuto chiedere al broker sulla base della sua risposta.

Non direi di no a una tale 'abbuffata' neanche nella vita reale... ;-)

Ma questa situazione non è la prima volta, e confonde le statistiche di Expert Advisors.

Non ho nessuna lamentela, mi chiedo solo perché succede.

 
vlad_123:

Non direi di no a una tale 'abbuffata' nemmeno nella vita reale... ;-)

Ma questa situazione non è la prima volta, e confonde le statistiche di Expert Advisors.

Non ho lamentele, mi chiedo solo perché succede.

Non ho nessuna lamentela, mi chiedo solo cosa c'è che non va.
 
voix_kas:

Per migliorare la purezza della programmazione, vorrei chiedere al pubblico un parere in merito.

Supponiamo che ci sia un flag (bool Flag) dichiarato globalmente. Quando si verificano certi eventi/condizioni, deve essere impostato su un certo valore.

La prima variante:

Seconda opzione:

Quale opzione:

1. più veloce in termini di prestazioni?

2. Se posso dire così, "più professionale"?

Questa sezione di codice dovrebbe essere controllata abbastanza spesso, per esempio ogni tick.

Renat:
Naturalmente, la prima variante è più veloce. Meno istruzioni e anche un confronto/raffronto in meno.

voix_kas:
Grazie.

Comunque ha deciso di controllare con certezza. Per quanto strano possa sembrare, i risultati mostrano che l'operazione di confronto è più veloce dell'operazione di assegnazione.

void OnStart(void) {
  int Count = 1000000000;
  bool Value1 = true;
  uint start = GetTickCount();
  for (int i = 0; i < Count; i++) {
    Value1 = false;
  }
  Print("Without 'if' = " + IntegerToString(GetTickCount() - start));
  start = GetTickCount();
  for (int i = 0; i < Count; i++) {
    if (Value1) Value1 = false;
  }
  Print("With 'if' = " + IntegerToString(GetTickCount() - start));
}

Risultato:

2013.04.30 18:35:41     Test (EURUSD,M5)        With 'if' = 1856
2013.04.30 18:35:39     Test (EURUSD,M5)        Without 'if' = 2418
2013.04.30 18:31:03     Test (EURUSD,M5)        With 'if' = 1857
2013.04.30 18:31:02     Test (EURUSD,M5)        Without 'if' = 2418
2013.04.30 18:30:54     Test (EURUSD,M5)        With 'if' = 1888
2013.04.30 18:30:52     Test (EURUSD,M5)        Without 'if' = 2418

Esperti, potreste commentare la situazione?

Документация по MQL5: Основы языка / Операции и выражения / Операции присваивания
Документация по MQL5: Основы языка / Операции и выражения / Операции присваивания
  • www.mql5.com
Основы языка / Операции и выражения / Операции присваивания - Документация по MQL5
 
voix_kas:

Però ho deciso di controllare con certezza. Stranamente, i risultati mostrano che l'operazione di confronto è più veloce dell'operazione di assegnazione.

Risultato:

Esperti, potreste commentare la situazione?

Non vedi che nel secondo caso l'assegnazione viene eseguita solo una volta?

In altre parole, rimane solo il confronto, che è molto più veloce dell'assegnazione diretta, che è il caso del primo test. I risultati sono assolutamente corretti.

 
Renat:

Non vedi che nel secondo caso l'assegnazione viene fatta solo una volta?

Cioè, rimane solo il confronto, che è molto più veloce dell'assegnazione diretta, che è nel primo test. I risultati sono assolutamente corretti.

Quindi, si scopre che ho formulato la mia domanda in modo diverso la prima volta?
 
voix_kas:
Quindi, sembra che io abbia formulato la mia domanda in modo diverso la prima volta?

Assolutamente.

Ed è un peccato che tu non capisca cose così semplici.