Questions des débutants MQL5 MT5 MetaTrader 5 - page 519
![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
Puis-je demander pourquoi cela est fait ?
int total=OrdersTotal();
Parce que pendant que la boucle est en cours d'exécution, la valeur deOrdersTotal(); peut changer et vous pouvez manquer une commande ou le corps de la boucle aura un problème.
Alexey Kozitsyn:
Je veux ajouter que s'il y a beaucoup de commandes, à chaque itération de la boucle, lafonction sera appelée, et ce n'est pas économique.
Vous plaisantez ou vous êtes sérieux ?
Alexey Kozitsyn:
J'ajouterai que si les commandes sont nombreuses, lafonction sera appelée à chaque itération de la boucle, ce qui n'est pas économique.
Vous plaisantez ou vous êtes sérieux ?
Alexey Kozitsyn:
У Вас другая точка зрения?
int i=OrdersTotal()-1
Cette action est exécutée une fois avant la première itération. Il est inutile d'ajouter quoi que ce soit d'autre. Vous rendez juste le code plus grand.
dans cette conception est possible, mais dans cette conception il ya une chance d'un pépin
Dans ce modèle, c'est possible, mais dans celui-ci, il y a une chance de problème.
:)))))))
Pour quels motifs ?
А.
Donc, il faut toujours recommencer depuis le début.
Dans ce cas, oui. Et dans ce cas :
il y a une différence. Vous n'avez pas précisé plus tôt ce que vous vouliez dire.
:)))))))
Pour quels motifs ?
А.
Donc, il faut toujours recommencer depuis le début.
Yep, donc c'est juste une question de logique. Je m'inquiétais davantage du fait qu'outre l'ordre des actions, il faut également tenir compte du temps de mise à jour des données sur le serveur.
J'ai enfin compris de quoi il s'agissait. ))))))))
Comme d'habitude, ridiculement simple))
C'est juste une mauvaise application des ordres en attente) le prix a baissé et l'ordre limite avec le prix d'achat a augmenté)))). Il ne pouvait tout simplement pas être placé dans ces conditions).
J'ai ajouté le paramètre "ordre d'arrêt" et voilà, tout est comme il se doit))))
Cette méthode n'est pas toujours adaptée. Par exemple, si vous devez effectuer un dépassement en commençant par la commande la plus ancienne.