Testeur de stratégie MetaTrader 5 : bugs, anomalies, suggestions d'amélioration - page 16
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
Si ce sont les formules correctes
Le Testeur calcule ces chiffres de manière très différente. J'ai des différences frappantes dans les résultats entre ces formules et ce que montre le Testeur (à part le bénéfice).
Je suggère que nous allions au fond des choses. Le hic, c'est de savoir exactement ce que MT5 considère comme une transaction rentable.
Retirez-en un, ou les deux à la fois, et comparez.
Ou ici (si ce qui précède ne vous aide pas), supprimez "=".
De quoi parlons-nous maintenant ? Désactiver les agents ou autoriser l'utilisation de personnages dans les tests/optimisations ?
S'il y a deux problèmes, nous devrions probablement discuter et résoudre les deux. Ou est-ce impossible ?
1. Pourquoi il y a une désactivation des agents après l'optimisation.
2. Quelle est la raison de l'arrêt de l'ajout automatique de caractères au testeur ?
Retirez-en un, ou les deux à la fois, et comparez.
Ou ici (si ce qui précède ne vous aide pas), supprimez "=".
Voici comment fonctionne MT5
Par exemple, dans MT5, vous pouvez fermer une position et subir une perte (le solde avant ouverture est inférieur au solde après fermeture). Mais dans ce cas, le testeur MT5 (le terminal n'a pas été vérifié) considérera cette transaction comme profitable.
Par exemple, MT5_PF = 1,89 et MT4_PF = 2,01.
Si ce sont les bonnes formules
Le Testeur calcule ces chiffres de manière très différente. J'ai des différences frappantes dans les résultats entre ces formules et ce que montre le Testeur (à part le bénéfice).
Je propose de le préciser. Le hic, c'est ce que MT5 considère comme une transaction rentable.
Pourquoi y a-t-il un modificateur const ici ?
Lorsque cette variable quitte la portée, elle sera probablement réinitialisée... imho, const n'est pas nécessaire
Si nous supprimons OrderCommission() + OrderSwap() ? - nous parlons de bénéfices sur les transactions, pas de commissions ?
SZZ : comme option, le testeur peut travailler avec le solde, si l'ordre est fermé, le solde a changé, comparez-le avec l'ancien solde, en général, je ne peux pas deviner.... , je n'ai pas trouvé la source, mais il y a un articlehttps://www.mql5.com/ru/articles/4226 avec le même calcul de profit, mais je ne l'ai pas lu.
Pourquoi y a-t-il un modificateur const ici ?
Vous devez calculer la variable Profit à toutes les itérations de la boucle , bien qu'il soit possible que lorsque cette variable quitte la portée, elle soit réinitialisée... imho, vous n'avez pas besoin de const.
Il sera recréé. Tout est correct ici.
Que faire si je supprime OrderCommission() + OrderSwap() ? - nous parlons du profit réalisé par les transactions, pas par les commissions ?
Formule MT5 ci-dessus. Cela crée de sérieuses distorsions lors du calcul du PF des TS de scalping. Et comment se fait-il que l'IP dépende de la plateforme ? Il doit être sans ambiguïté.
Ce problème a déjà été soulevé par moi dans des branches de constructions antérieures. Il n'a jamais été réparé. J'ai trouvé ma béquille. Je désactive certains des agents (3 sur 10 dans mon cas) et les réactive après 0 itération, et tout se passe bien. Parfois, cependant, certains agents s'arrêtent en cours de route, mais rarement, l'algorithme de solution est le même.
C'est dommage, mais la direction manuelle n'est pas une option. Je dispose d'une optimisation automatique.
S'il y a deux problèmes, il faudrait peut-être en discuter et les résoudre tous les deux. Ou est-ce impossible ?
1. Pourquoi les agents sont déconnectés après l'optimisation.
2. Quelle est la raison de l'arrêt de l'ajout automatique de caractères au testeur ?
1. Regardez les journaux des testeurs, tout y est.
2. c'est déjà réparé. Mais jusqu'à ce que vous ayez une version corrigée, vous pouvez utiliser le drag-drop (nous n'avons pas discuté de la raison pour laquelle l'ajout de caractères s'est arrêté, nous avons discuté de la façon dont vous pouvez toujours tester dans ces conditions).
J'effectue des passages simples en alternance sur chaque symbole personnalisé. À partir d'un certain point, il est impossible de voir le chemin qui y mène dans le testeur, mais il est toujours possible de les sélectionner par glisser-déposer à partir de la surveillance du marché. Puis, après un certain temps, cela ne fonctionne pas non plus : vous pouvez sélectionner soit un symbole normal, soit un seul symbole personnalisé. Les autres ne sont pas possibles. L'animation ci-dessous illustre cette situation.
1. Regardez les journaux des testeurs, tout y est.
2. c'est déjà réparé. Mais jusqu'à ce que vous ayez une version corrigée, vous pouvez utiliser le drag-drop (nous n'avons pas discuté de la raison pour laquelle l'ajout de caractères s'est arrêté, nous avons discuté de la façon dont vous pouvez toujours tester dans ces conditions).
Pendant l'optimisation génétique, j'utilise beaucoup de paramètres. Dès que le nombre de variantes devient si grand qu'il apparaît en notation scientifique (6,8768769e+21), l'optimisation se poursuit avec la moitié des agents (4 sur 8) après la génération 0. Aucune mention de cela dans les journaux. L'optimisation elle-même fonctionne bien, mais avec la moitié de la charge, elle est deux fois plus longue.
Ce comportement n'est pas toujours reproduit, ce qui peut expliquer pourquoi il n'est pas corrigé. Hier, je l'avais, aujourd'hui, je ne l'ai plus. Peut-être que cela dépend aussi de l'EA. Je l'ai avec des cadres. La taille de ex5 est d'environ 0,5 Mb. J'ai 8 Go de mémoire. Intel i7, 4 cœurs, 8 threads. Divorcé. Non supervisé.