Erreurs, bugs, questions - page 1627
![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Alexey Navoykov:
Насчёт ВСЕХ кодов - вы не погорячились? Откуда такая уверенность? Вы их все пробовали?
J'ai essayé beaucoup de choses...
Ok, je te donnerai un code pour le jouer dès que je serai devant mon ordinateur. Mais je suis déjà confus par vos histoires de dizaines de ms sur du matériel faible. Parlons-nous des mêmes choses ? Le fichier script est-il un .mq5 ? Et quel processeur avez-vous ?
Qu'est-ce qu'il y a à revenir ?
J'ai cherché dans kodobase jusqu'à ce que je trouve de grands projets pour MT5. Mais ce qui m'a surpris, les sections des Expert Advisors et des indicateurs sont en fait pleines d'objets artisanaux de la même personne. Et il en produit plusieurs chaque jour depuis plusieurs années maintenant !Je ne sais pas pourquoi il est si pressé de faire ça et dans quel but... Peut-être que MQ le paie pour ça, je ne sais pas... Bien sûr, tout est préparé dans un seul ordre, mais personnellement, je serais fatigué de ne faire que des descriptions et des captures d'écran).
Le conseiller expert pèse environ 150-200 kb, mais d'abord, le code est assez étalé, et il y a beaucoup de fragments qui se répètent. C'est mon estimation, il me faudrait plusieurs fois moins en volume.Deuxièmement, le code lui-même est simple, il n'y a pas de fonctions virtuelles, de templates et également pas d'objets dynamiques et de pointeurs.C'est-à-dire, en fait, tout le code peut être inline. Il compile assez rapidement, dans les environs de 600-700 ms. Eh bien, en général, vous devez trouver un exemple vraiment volumineux et assez complexe. Et de mes développements, je n'ai finalisé que ce projet sous le nouveau compilateur, tous les autres j'utilise sous l'ancien, et passer du temps sur leurs révisions, je ne vois pas la nécessité, compte tenu de la situation actuelle.
...
Et parmi mes développements je n'ai finalisé que ce projet pour le nouveau compilateur, tous les autres j'utilise l'ancien, et passer du temps sur leur ajustement, je n'en vois pas l'utilité pratique, vu la situation actuelle.
Version actuelle:Interfaces graphiques IX : éléments "Barre de progression" et "Graphique linéaire" (Chapitre 2)
Dernière version en date :Interfaces graphiques IX : éléments "Indicateur de progression" et "Graphique linéaire" (chapitre 2)
Le premier test Expert Advisor TestLibrary01 a été compilé en 6,5 secondes. Cependant, nous devons encore estimer la quantité de code réellement utilisée par cet Expert Advisor. En outre, le mot "intelligent" sera un peu comique si nous le comparons à la vitesse de compilation dans l'ancienne version. Elle était instantanée. Si quelqu'un veut se familiariser avec lui, je joins le compilateur de la version 1159. Veuillez renommer le fichier, bien sûr.
En fait, nous pouvons tirer la conclusion suivante : le temps de compilation peut bien sûr varier plusieurs fois en fonction de la taille et de la complexité du code, mais une chose est immuable - il est beaucoup plus lent dans le nouveau compilateur que dans l'ancien. En même temps, j'ai vérifié qu'il n'y a pas de gain significatif en termes de vitesse du logiciel. Si quelqu'un veut prouver le contraire, allez-y.
Eh bien, le premier test Expert Advisor TestLibrary01 a été compilé pour moi en 6,5 secondes. Cependant, nous devons encore estimer la quantité de code réellement utilisée par cet Expert Advisor. De plus, le mot "intelligent" semble un peu comique quand on le compare à la vitesse de compilation dans l'ancienne version - elle est instantanée là-bas. Si quelqu'un veut se familiariser avec lui, je joins le compilateur de la version 1159. Veuillez renommer le fichier, bien sûr.
En fait, on peut en tirer la conclusion suivante : le temps de compilation peut bien sûr varier de nombreuses fois en fonction de la taille et de la complexité du code. Mais une chose reste inchangée : il est beaucoup plus rapide dans l'ancien compilateur que dans les nouveaux. Je l'ai vérifié et il n'y a pas de gain considérable en termes de vitesse du logiciel. Si quelqu'un veut prouver le contraire, allez-y.
Bien sûr, les projets les plus complexes dans MetaTrader 5 prennent trop de temps à compiler. Cela peut même prendre jusqu'à 11 secondes. Les mêmes versions dans MetaTrader 4 sont jusqu'à 25 fois plus rapides.
Par exemple, le même projet.
MetaTrader5:
//---
MetaTrader4:
//---
Jusqu'à présent, on ne sait pas très bien à quoi elle est liée. Vous pouvez essayer de préparer du matériel pour les tests et l'envoyer à Servicedesk pour vérification. Si vous ne voulez pas montrer le code de vos projets, vous pouvez utiliser le code des articles de cette série comme exemple.
Bien sûr, mes projets les plus complexes dans MetaTrader 5 prennent également beaucoup de temps à compiler. Cela prend même jusqu'à 11 secondes. Exactement les mêmes versions, mais dans MetaTrader 4, elles peuvent être jusqu'à 25 fois plus rapides.
Par exemple, le même projet.
MetaTrader5:
//---
MetaTrader4:
//---
Jusqu'à présent, on ne sait pas très bien à quoi elle est liée. Vous pouvez essayer de préparer du matériel pour les tests et l'envoyer à Servicedesk pour vérification. Si vous ne souhaitez pas montrer le code de vos projets, vous pouvez utiliser le code des articles de cette série à titre d'exemple.
J'ai une supposition : parce que MT4 est 32-bit, il n'a pas été "totalement optimisé". Pour autant que je sache, cette woe-optimisation du compilateur a été déclarée comme étant censée améliorer le travail dans un environnement 64-bit. D'ailleurs, je devrais vérifier la version 32-bit de MT5. Peut-être que tout est ok avec elle. Mais je n'ai pas cette possibilité.
Si vous disposez de la version 32bit de metaeditor pour 5, veuillez la partager.
Bien sûr, mes projets les plus complexes dans MetaTrader 5 prennent également beaucoup de temps à compiler. Cela prend même jusqu'à 11 secondes. Exactement les mêmes versions, mais dans MetaTrader 4, elles peuvent être jusqu'à 25 fois plus rapides.
Par exemple, le même projet.
MetaTrader5:
//---
MetaTrader4:
//---
Jusqu'à présent, on ne sait pas très bien à quoi elle est liée. Vous pouvez essayer de préparer du matériel pour les tests et l'envoyer à Servicedesk pour vérification. Si vous ne souhaitez pas montrer le code de vos projets, vous pouvez utiliser le code des articles de cette série à titre d'exemple.
Il s'agit d'une optimisation du code.
Si vous écrivez OPTIMIZE=0 dans le champ [Experts] de metaeditor.ini, votre vitesse de compilation sera comme dans 4. J'ai des projets qui compilent en 20 secondes et d'autres qui entrent dans une boucle d'optimisation infinie :)