Erreurs, bugs, questions - page 2685
![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
Optimisation des lots.
Le problème est que si l'action StepOver (F10) est appliquée à un appel de fonction au moins une fois, il n'y a aucun moyen de déboguer cette fonction ultérieurement.
Étapes de la lecture :
1) Exécutez le code en mode débogage ;
2) Après le déclenchement d'un point d'arrêt, exécutez deux fois StepOver (F10) ;
C'est tout - maintenant il n'y a aucun moyen d'entrer dans la fonction d'incrémentation, tous les points d'arrêt définis manuellement ne fonctionnent pas, et au lieu de l'opération StepInto (F11), on effectue en fait StepOver (F10).
Un défaut dans le débogueur ME (build 2370) - après qu'unpoint d'arrêt soitdéclenché,au lieu de continuer l'exécution du code en appuyant sur (F5), le mêmepoint d'arrêtest en fait déclenché à nouveausans exécuter aucun code.
Reprise des étapes :
1) Définissez manuellementle point d'arrêt pour les deux lignes " arr.Add()" ;
2) Démarrez le débogage (F5) ;
3) Utilisez PCM pour ouvrir le fichier imbriqué <Generic\ArrayList.mqh> dans un nouvel onglet.
4) Trouvez la ligne "if(m_size==ArraySize(m_items))" dans la fonction "bool CArrayList::Add(T item)" et placezle point d'arrêt manuellement.
5) Tout en restant dans l'onglet "ArrayList.mqh", continuez à exécuter le code (F5).
Celadéclenchera le mêmepoint d'arrêt que précédemment, sans exécution réelle du code.
Par conséquent, il n'est pas du tout possible de déboguer le codede la méthode de la structure statique:
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie
Question aux développeurs - Utilisation de tous les cœurs de calcul pendant l'optimisation
Andrey Dik, 2020.03.26 23:31
Vous pouvez définir jusqu'à 100 millions de pas pour que l'optimiseur ne passe pas à la génétique.
J'ai trouvé cette correspondance, et je pense l'avoir lue quand elle s'est produite - le résultat est un bannissement de membre, c'est pourquoi j'ai voulu trouver la source originale
J'ai testé en mode de recherche complète par un paramètre - les passes sont numérotés hors de l'ordre, en général la recherche complète - fonctionne selon une certaine logique des développeurs, pas le concept sémantique
testé en mode de recherche complète par un paramètre - les passes sont numérotées dans le désordre, en général la recherche complète - fonctionne selon une certaine logique des développeurs, pas le concept sémantique
Ainsi, les tâches sont distribuées par paquets aux agents.
1-100 au premier, 101-200 au second, etc.
Et les résultats apparaissent au fur et à mesure (1, 101, 2, 102, etc.).
Facile à trier.
Les tâches sont donc distribuées par paquets aux agents.
1-100 au premier, 101-200 au second, etc.
Et les résultats apparaissent au fur et à mesure (1, 101, 2, 102, etc.).
Facile à trier.
OK, c'est une bonne réponse, c'est à peu près ça, dommage que la source originale n'ait jamais été retrouvée,
il reste à savoir à quel nombre total de passes sera inclus GA, jusqu'à présent il semble que 100 000 000 de passes, pour mes tâches est suffisant
OK, c'est une bonne réponse, c'est à peu près ça, c'est dommage que la source n'ait jamais été trouvée,
il reste à savoir à quel nombre total de passes l'AG sera activé, jusqu'à présent il semble que 100 000 000 de passes, pour mes tâches c'est suffisant
à condition que le paramètre à optimiser soit égal à un. S'il y en a plus, il activera quand même la génétique.