Erreurs, bugs, questions - page 2759
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
Bug dans le débogueur MT5 (build 2450) : déclenchement incorrect des points d'arrêt définis manuellement :
Pouvez-vous expliquer pourquoi vous devez vous donner tout ce mal ?
Utilisez-vous un débogueur ?Pouvez-vous nous expliquer pourquoi nous devons tordre le code de cette façon ?
Utilisez-vous le débogage ?Le code montre un BAG où la condition ne peut pas être saisie, mais le point d'arrêt se déclenche toujours à un endroit complètement différent du code.
D'autres questions ?
J'ai écrit le message suivant au support de découverte.
J'ai testé le robot sur une histoire. J'ai obtenu des résultats étranges. La partie inférieure du tableau est sur la capture d'écran. Si vous considérez que je trade avec 100 000 roubles, le solde négatif de -6049 avec 17% de drawdown semble incroyable. En effet, lorsque j'ouvrele graphique testant cet ensemble de paramètres, j'obtiens un solde positif au niveau du drawdown spécifié. Le compte est réel 75287 (comme on le voit sur la photo). Quelle peut être la raison d'un tel comportement du programme ?
Je peux également ajouter que tous les jeux de paramètres se comportent de cette manière.
J'ai la réponse :
Malheureusement, ces questions ne relèvent pas de l'assistance technique.
Veuillez contacter les développeurs du terminal.
Quelle pourrait être la raison ?
Le code montre un BAG où une condition ne peut pas être saisie, mais déclenche quand même un point d'arrêt à un endroit complètement différent du code.
D'autres questions ?
Tout me semble correct. Le programme ignore if(false) et se déclenche au fragment de code le plus proche).
Il me semble que tout est correct. Le programme ignore if(false) et se déclenche à l'endroit le plus proche dans le code).
Ce n'est pas du tout correct. Si j'ai besoin de m'arrêter uniquement lorsqu'une condition est remplie, et que l'arrêt se fera à chaque tick, je vais devenir fou pendant...
D'autres questions ?
qu'est-ce qui vous fait penser que le compilateur n'a pas jeté le texte de la condition if(false) {....} lors de la compilation du projet ?
un point d'arrêt apparaît sur le premier caractère de texte ME du reste du code car ME ne peut pas décaler les chaînes de caractères, les pliages et autres merveilles VS
ME ne peut pas analyser le code en temps réel, au maximum des autosubstitutions sont disponibles.
bien que si c'est un bug, c'est un bug
qu'est-ce qui vous fait penser que le compilateur n'a pas jeté le texte de la condition if(false) {....} lors de la compilation du projet ?
le point d'arrêt était au premier caractère de texte ME du reste du code car ME ne peut pas décaler les chaînes de caractères, les pliages et autres merveilles VS
ME ne peut pas analyser le code en temps réel, tout au plus des autosubstitutions sont disponibles
bien que si c'est un bug, c'est un bug.
Vous devez le tester dans des conditions normales. J'ai eu ceci l'autre jour : en exécutant le code étape par étape
dans le débogueur, avec une condition explicite non remplie, les appels de fonction n'ont pas été exécutés, mais return ; l'est. J'ai décidé que puisqu'il n'y a plus de code après le crochet courbe et qu'il n'y a plus qu'un crochet courbe terminant void OnTick(), le compilateur a déplacé return
Ceci doit être testé avec une condition normale.
Oui, c'est ce dont je parle, pas faux, mais quelque chose comme ça :
habituellement le compilateur ne voit pas une telle condition lors de la compilation
.
Le code montre un BAG où une condition ne peut pas être saisie, mais déclenche quand même un point d'arrêt à un endroit complètement différent du code.
D'autres questions ?
L'optimiseur de code a tout jeté et la fonction est restée vide.
Le point d'arrêt s'est déplacé jusqu'à la toute fin de la fonction et s'est déclenché.