Errori, bug, domande - pagina 3055

 
Vladislav Andruschenko:
Ecco come funziona. L'acquisto va a buon fine, ma non funziona su 32 bit.

Non vedo quale sia il problema. La cosa principale è non cancellare l'attivazione se non parte.
Ma un avviso prima dell'acquisto con i requisiti minimi di sistema sarebbe utile.

 
Vladislav Andruschenko:
Ecco come funziona. L'acquisto va a buon fine, ma non funziona su 32 bit.

Sarebbe bello se il cliente ricevesse un avviso del tipo: il tuo sistema operativo non ti permetterà di usare l'applicazione che hai acquistato....

 
fxsaber:
Sono previsti sovraccarichi macro?

#undef e #ifdef MACRO si applicherebbero a tutti i sovraccarichi contemporaneamente.

Su

 

Forum sul trading, sistemi di trading automatico e test di strategia

Informazioni su MT5 Code Profiler

Alain Verleien, 2021.07.08 22:58

Alcune domande su cose strane sui dati restituiti dal profiler.

Rapporto di profilazione usato in un EA che gira su dati storici:

Risultati (Funzioni su chiamate):

Q1. Il rapporto mostra 139098 misure, ma onTick () Total CPU è 150026, come è possibile? (ma CopyHistoryData 80087 come 57,58% significa correttamente 100% = 139098).

Q2. Il rapporto dice 571.051 altre "funzioni". Cosa sono queste funzioni se non sono funzioni mql, embedded o di sistema?

Q3. CopyHistoryData mostra 80087 CPU totali, con 3 chiamate di funzione riportate (CopyHigh, CopyLow, CopyTime) che hanno CPU totali diverse, OK. Tuttavia, la CPU nativa per queste funzioni è la stessa e uguale alla CPU totale (stack delle chiamate). Questo sembra non essere corretto poiché su 80087 (stack) per CopyHistoryData la somma per 3 funzioni è 62.161 (44286 + 9448 + 8427), come può essere, con 62.161 chiamate rileva 80.087 pause in queste 3 funzioni? Impossibile, l'unica spiegazione è che questo numero è globale per CopyHistoryData e quindi inutile. Mi manca qualcosa?


 

Forum sul trading, sistemi di trading automatico e test di strategie di trading

Nuova build 2980 di MetaTrader 5: notifiche push sulle operazioni di trading

Alain Verleyen, 2021.07.12 19:10

Ho una piccola richiesta per aggiungere una funzione mql che restituisca la versione di Windows. Sarebbe utile identificare alcuni possibili problemi con l'applicazione distribuita.

2021.07.12 12 19:48:55.785 Terminale JFD MetaTrader 5 x64 build 2981 avviato per JFD Group Ltd
2021.07.12 12 20:48:55.786 Terminal Windows 10 build 19042, Intel Core i7-9750H @ 2.60GHz, 6/15 Gb di memoria, 62/279 Gb di disco, IE 11, UAC, GMT-5

Se c'è la possibilità di aggiungere, sarebbe bello. Grazie


 

C'è una colonna Cost nella modalità di visualizzazione delle posizioni chiuse.

Che cos'è?

 
fxsaber:

C'è una colonna Cost nella modalità di visualizzazione delle posizioni chiuse.

Che cos'è?

Forse le spese aggiuntive che non sono conteggiate nella commissione...

 

Errore fallito [538].

Soluzione:

  1. Rimuovere il programma dal navigatore
  2. Riavviare il terminale
  3. Scaricare di nuovo il software dal mercato
 
Alain Verleyen:


Alcune domande su cose strane riguardo ai dati restituiti dal profiler.
...

Q1. Il rapporto mostra 139098 misure, ma onTick () Total CPU è 150026, come è possibile? (ma CopyHistoryData 80087 come 57,58% significa correttamente 100% = 139098).

Q2. Il rapporto dice 571.051 altre "funzioni". Cosa sono queste funzioni se non sono funzioni mql, embedded o di sistema?

Q3. CopyHistoryData mostra 80087 CPU totali, con 3 chiamate di funzione riportate (CopyHigh, CopyLow, CopyTime) che hanno CPU totali diverse, OK. Tuttavia, la CPU nativa per queste funzioni è la stessa e uguale alla CPU totale (stack delle chiamate). Questo sembra non essere corretto poiché su 80087 (stack) per CopyHistoryData la somma per 3 funzioni è 62.161 (44286 + 9448 + 8427), come può essere, con 62.161 chiamate rileva 80.087 pause in queste 3 funzioni? Impossibile, l'unica spiegazione è che questo numero è globale per CopyHistoryData e quindi inutile. Mi sono perso qualcosa?



  1. Perché non hai allegato un rapporto? Mostra gli errori di misurazione.

  2. Funzioni che non potrebbero essere classificate, possono essere considerate "sistema"

  3. Ottenere dati storici è una funzione CopyHistoryData, il tipo di dati richiesti viene passato come parametro.
    Purtroppo non possiamo determinare (almeno per ora) quale funzione CopyXXX è stata chiamata.

    Dal momento che questa è una funzione CopyHistoryData, il contatore "Self CPU" è anche lo stesso + nel rapporto si vedono 3 posti di chiamata CopyHistoryData, ogni posto di chiamata (in realtà una linea di codice) ha il suo contatore "Total CPU".

    Per quanto riguarda la discrepanza nei valori, la funzione CopyHistoryData è "pesante" e sembra che alcune delle misurazioni non siano riuscite a rilevare il luogo di chiamata - questo è legato ad alcune peculiarità del codice nativo x64, penserò a cosa si può fare.

Motivazione: