Erreurs, bugs, questions - page 3055

 
Vladislav Andruschenko:
Voici comment cela fonctionne. L'achat est effectué, mais il ne fonctionne pas sur 32 bits.

Ce serait bien si le client recevait un avertissement tel que votre système d'exploitation ne vous permettra pas d'utiliser l'application que vous avez achetée.....

 
fxsaber:
Des macro-surcharges sont-elles prévues ?

Les #undef et #ifdef MACRO s'appliqueraient à toutes les surcharges en même temps.

Up

 

Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie

À propos de MT5 Code Profiler

Alain Verleien, 2021.07.08 22:58

Quelques questions sur des choses étranges concernant les données retournées par le profileur.

Rapport de profilage utilisé dans un EA fonctionnant sur des données historiques :

Résultats (Fonctions sur les appels) :

Q1. Le rapport montre 139098 mesures, mais onTick () Total CPU est 150026, comment est-ce possible ? (mais CopyHistoryData 80087 comme 57.58% correctement signifie 100% = 139098).

Q2. Le rapport parle de 571 051 autres "fonctions". Quelles sont ces fonctions si elles ne sont pas des fonctions mql, embarquées ou système ?

Q3. CopyHistoryData montre un total de 80087 CPU, avec 3 appels de fonction rapportés (CopyHigh, CopyLow, CopyTime) ayant des totaux de CPU différents, OK. Cependant, la CPU native de ces fonctions est la même et égale à la CPU totale (pile d'appels). Cela semble incorrect car sur 80087 (piles) pour CopyHistoryData la somme pour 3 fonctions est 62 161 (44286 + 9448 + 8427), comment est-ce possible, avec 62 161 appels il détecte 80 087 pauses dans ces 3 fonctions ? Impossible, la seule explication est que ce numéro est global pour CopyHistoryData et donc inutile. Est-ce que j'ai manqué quelque chose ?


 

Forum sur le trading, les systèmes de trading automatisés et les tests de stratégies de trading

Nouveau MetaTrader 5 build 2980 : notifications push sur les opérations de trading

Alain Verleyen, 2021.07.12 19:10

J'ai une petite demande pour ajouter une fonction mql qui renvoie la version Windows. Il serait utile d'identifier certains problèmes possibles avec l'application déployée.

2021.07.12 12 19:48:55.785 Terminal JFD MetaTrader 5 x64 build 2981 démarré pour JFD Group Ltd
2021.07.12 12 20:48:55.786 Terminal Windows 10 build 19042, Intel Core i7-9750H @ 2.60GHz, 6/15 Go de mémoire, 62/279 Go de disque, IE 11, UAC, GMT-5

S'il est possible de l'ajouter, ce serait bien. Merci


 

Il existe une colonne de coût dans le mode d'affichage des positions fermées.

Qu'est-ce que c'est ?

 
fxsaber:

Il existe une colonne de coût dans le mode d'affichage des positions fermées.

Qu'est-ce que c'est ?

Peut-être des frais supplémentaires qui ne sont pas comptés dans la commission...

 

Erreur ratée [538].

Solution :

  1. Retirer le programme du navigateur
  2. Redémarrer le terminal
  3. Téléchargez à nouveau le logiciel depuis la place de marché
 
Alain Verleyen:


Quelques questions sur des choses étranges concernant les données retournées par le profileur.
...

Q1. Le rapport montre 139098 mesures, mais onTick () Total CPU est 150026, comment est-ce possible ? (mais CopyHistoryData 80087 comme 57.58% correctement signifie 100% = 139098).

Q2. Le rapport indique 571 051 autres "fonctions". Quelles sont ces fonctions si elles ne sont pas des fonctions mql, embarquées ou système ?

Q3. CopyHistoryData montre un total de 80087 CPU, avec 3 appels de fonction rapportés (CopyHigh, CopyLow, CopyTime) ayant des totaux de CPU différents, OK. Cependant, la CPU native de ces fonctions est la même et égale à la CPU totale (pile d'appels). Cela semble incorrect car sur 80087 (piles) pour CopyHistoryData la somme pour 3 fonctions est 62 161 (44286 + 9448 + 8427), comment est-ce possible, avec 62 161 appels il détecte 80 087 pauses dans ces 3 fonctions ? Impossible, la seule explication est que ce numéro est global pour CopyHistoryData et donc inutile. J'ai raté quelque chose ?



  1. Pourquoi n'avez-vous pas joint un rapport ? Il montre les erreurs de mesure.

  2. Les fonctions qui n'ont pas pu être classées, elles peuvent être considérées comme "système".

  3. Obtenir des données historiques est une fonction CopyHistoryData, le type de données demandé est passé en paramètre.
    Malheureusement, nous ne pouvons pas déterminer (du moins pour le moment) quelle fonction CopyXXX a été appelée.

    Puisqu'il s'agit d'une seule fonction CopyHistoryData, le compteur "Self CPU" est également le même + dans le rapport vous voyez 3 endroits d'appels CopyHistoryData, chaque endroit d'appel (en fait une ligne de code) a son propre compteur "Total CPU".

    Pour ce qui est de l'écart entre les valeurs, la fonction CopyHistoryData est "lourde" et il semble que certaines mesures n'aient pas réussi à détecter le lieu d'appel - ceci est lié à certaines particularités du code natif x64, je vais réfléchir à ce qui peut être fait.

 

Ilyas:

Je vais réfléchir à ce qui peut être fait.

Dans certains modes de profil, EX5 crée des statistiques sur chaque appel de fonction. Les statistiques ne sont visibles que si elles sont exécutées à partir de ME.

Est-il possible dans ce mode EX5 de sortir les statistiques dans un fichier texte, en contournant ME ?

À l'heure actuelle, par exemple, il est très difficile de comprendre les statistiques des appels à SymbolInfoTick, par exemple. Je le mesure moi-même, je peux voir qu'il est en retard. Mais il faut des mouvements spéciaux pour le faire.

S'il était possible de voir des statistiques résumées pour chaque fonction dans un fichier texte, ce serait très utile et cool.


Je lance le profileur - cela se produit sur une machine normale. Et avec le HFT, il fonctionne sur une machine avec un ping minimal, beaucoup de terminaux, etc. En général, les propriétés spécifiques où les mesures exactes sont nécessaires.

Raison: