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
Mais votre version originale avec build 1596 est beaucoup plus lente, donc votre comparaison originale avec MT4 doit être mise à jour.
Vous utilisez peut-être une ancienne version de la bibliothèque. Vous pouvez toujours trouver la dernière version ici.
J'ai converti votre code en MT4 via MT5Bridge. MT4build1072
Code original
Les résultats après la conversion sont identiques ! La vitesse a diminué de moitié.
il est plus logique d'écrire un algorithme optimal !
Comment ?
Comment faire ?
Une fois par cycle, obtenez les données nécessaires. Ne le faites qu'en cas de besoin, et non à chaque tic.
Mon EA ne fonctionne que sur les prix d'ouverture. Plus l'histoire est importante, plus le travail est lent - beaucoup plus lent.
Obtenir l'historique au démarrage, une fois et s'en souvenir.
Lorsque vous commencez, le testeur n'a pas d'historique.
Si l'on ne parle que du testeur, il n'y en a évidemment pas.
Dans tous les cas, vous ne devez pas parcourir l'ensemble de l'historique à chaque tick ou même à chaque barre.
Si le test est effectué sur les ticks, il suffit alors de sélectionner un seul ordre entré dans l'historique.
Mon conseiller expert ne fonctionne qu'avec les prix d'ouverture. Plus l'histoire est grande, plus elle fonctionne lentement.
Si le test porte sur les barres, plusieurs ordres peuvent être entrés dans l'historique, ce qui signifie que seuls ces ordres doivent être tracés.
Mon EA ne fonctionne que sur les prix d'ouverture. Plus l'histoire est importante, plus le travail est lent - beaucoup plus lent.
Plus il y a de positions fermées dans la liste historique, plus le cycle est long. Limitez le cycle à une profondeur d'histoire suffisamment faible.
Je soupçonne que le testeur commence à ralentir non pas à cause des ordres eux-mêmes, mais de leur modification - ce processus se produit sur chaque barre.
Si l'on ne parle que du testeur, il n'existe évidemment pas.
Dans tous les cas, il ne faut pas parcourir tout l'historique à chaque tick, ni même à chaque barre.
Si le test est effectué sur des ticks - il suffit alors de sélectionner un seul ordre entré dans l 'historique.
Si le test est sur les barres - plusieurs ordres peuvent être entrés dans l'historique, ce qui signifie que seuls ces ordres doivent être tracés.
Je passe rarement en revue l'histoire - le ralentissement est dû à l'accumulation de l'histoire en tant que telle - telle que je la vois.
Si vous pouviez obtenir des informations sur le numéro de commande par sa date (le premier chiffre de cette date), vous pourriez éviter le dépassement important - parcourir les commandes par le nombre tombant dans la fourchette.
Je soupçonne que le testeur commence à ralentir non pas à cause des ordres eux-mêmes mais à cause de leur modification - ce processus a lieu sur chaque barre.
Je passe rarement par l'histoire - le ralentissement est dû à l'accumulation de l'histoire, en tant que telle - à mes sens.
S'il était possible d'obtenir des informations sur le numéro de commande par sa date (le premier chiffre de cette date), on pourrait alors éviter le grand dépassement - rechercher les commandes par le nombre tombant dans la fourchette.