Discussion de l'article "Guide étape par étape pour rédiger un conseiller expert en MQL5 pour les débutants" - page 31

 

Tout d'abord, je voudrais dire que j'ai lu cet article et que j'ai copié le code parce que je voulais apprendre le codage MQL5. Deuxièmement, j'ai l'impression d'avoir beaucoup appris, et j'ai écrit 7 EAs maintenant et quelques indicateurs. Je pense donc être sur la bonne voie pour l'apprendre à un degré tel que je puisse coder mes propres idées.


En outre. Je suis devenu très curieux à propos du testeur de stratégie. J'ai d'abord pensé qu'il était trop basique et qu'il ne pourrait jamais fonctionner. Ce n'est pas le cas. Il peut fonctionner. Cependant, il n'a fonctionné que pour les personnes dotées d'une patience à toute épreuve. En ce qui me concerne, il n'a fonctionné que pour les personnes dotées d'une énorme patience. Je l'ai donc testé sur l'USDCAD, en temps réel, et j'ai optimisé le take profit, le stop loss et la période ADX. L'histoire courte est la suivante. Il suffit de mettre l'ADX au milieu. Au-dessus de 29 et en dessous de 60. Tout ira bien. Prise de profit. Le plus haut possible. Entre 300 et 500. Stop loss. Certainement beaucoup moins. Un chiffre récurrent était soit 155, soit 30. Vient ensuite le gros problème. Je l'ai testé de 2019 à début 2025. Il a donné de 75 trades jusqu'à environ 45 pour les paramètres ADX les plus élevés. J'ai regardé le graphique de 5 de ces tests. Il oscille autour de 0 jusqu'en 2024. Ensuite, tous les gains ont été réalisés au cours de la dernière année. Le facteur de profit que j'ai examiné allait de 1,77 à 2,61. Beaucoup de problèmes partout. Toutes les positions courtes étaient des pertes. 86% des positions longues ont été rentables. Beaucoup de transactions ont eu une longue durée. Beaucoup plus que 10 jours en général. Je pense avoir vu 3440 heures comme durée de détention la plus longue. La moyenne était de 846 heures. Je pense que le rendement pourrait également être très élevé, mais qui voudrait être limité à moins de 20 transactions après 6 ans ?


J'ai passé des jours à parcourir les 33 000 combinaisons. Maintenant, je vais tester plus avant et réduire considérablement les tâches. Je n'ai pas besoin de valeurs ADX supérieures à 55. Le stop loss à 30 est tout simplement trop bas même si j'ai vu beaucoup de rentabilité avec cela aussi. Un dernier point. J'ai lu que l'on pouvait connecter plusieurs PCs/portables dans un LAN pour augmenter la vitesse. C'est ce que je recommande.

 

Je suis d'accord sur le fait que la validation doit aller au-delà du simple choix du meilleur résultat d'optimisation. Une autre préoccupation que j'ai est que la procédure de validation elle-même puisse aboutir à un surajustement.

Par exemple, si nous modifions à plusieurs reprises la fenêtre de walk-forward, les hypothèses de Monte Carlo, la plage de perturbation des paramètres ou les hypothèses relatives aux coûts de transaction après avoir examiné les résultats, nous risquons à terme d’optimiser le processus de validation lui-même.

Je pense qu’une approche plus rigoureuse consiste à définir le protocole de validation avant d’examiner les résultats finaux « hors série » (OOS), puis à conserver une période finale totalement intacte qui ne sera utilisée qu’une seule fois.

Pour les EA adaptatifs, je me demande également si les paramètres de détection de régime ne devraient pas être validés séparément des paramètres de trading. Quelqu’un a-t-il déjà testé cette approche ?

 
Erlend Christiansen # :

Primero, quiero decir que leí este artículo y copié el código porque quería aprender a programar en MQL5. Segundo, siento que aprendí mucho y ya he escrito 7 Asesores Expertos (EA) y algunos indicadores. Así que creo que voy por buen camino para dominarlo lo suficiente como para poder programar mis propias ideas.


Además, me entró mucha curiosidad por el probador de estrategias . Al principio pensé que era demasiado básico y que nunca funcionaría. Pero no es cierto. Puede funcionar. Sin embargo, para mi gusto, solo funcionaba para gente con muchísima paciencia. Así que lo probé en USDCAD, en un marco temporal diario, y optimicé el take profit, el stop loss y el período del ADX. En resumen: solo hay que poner el ADX en el medio, por encima de 29 y por debajo de 60. Así irá bien. Take profit: lo más alto posible, entre 300 y 500. Stop loss: mucho menor, sin duda. Un número recurrente era 155 o 30. Y entonces viene el gran problema. Lo probé desde 2019 hasta principios de 2025. Me dio entre 75 y 45 operaciones con la configuración más alta del ADX. Analicé el gráfico de 5 de estas pruebas. Se mantiene cerca de 0 hasta 2024. Después, todas las ganancias se producen en el último año. El factor de beneficio que analicé osciló entre 1,77 y 2,61. Hubo muchos problemas. Todas las posiciones cortas resultaron en pérdidas. El 86% de las posiciones largas fueron rentables. Muchas operaciones tuvieron una duración prolongada, generalmente superior a 10 días. Creo que el tiempo máximo de tenencia fue de 3440 horas, con un promedio de 846 horas. La rentabilidad también podría ser muy alta, pero ¿quién quiere limitarse a menos de 20 operaciones después de 6 años?


Pasé días probando las 33 000 combinaciones. Ahora haré más pruebas y reduciré mucho las tareas. No necesito valores ADX superiores a 55. El stop loss en 30 es demasiado bajo, aunque también he visto mucha rentabilidad con él. Por último, leí que se pueden conectar varios ordenadores/portátiles en una red LAN para aumentar la velocidad. Lo recomiendo.

Voici un résumé assez détaillé de votre première expérience avec le testeur de stratégie.

Si je peux me permettre quelques suggestions :

La première étape consiste à vérifier la qualité des données tick de votre courtier. Un excellent script automatise ce processus :

Base de code

Audit des tiques : Vérifier l'historique réel des tiques et la qualité des tests rétrospectifs mois par mois.

Ayaz , 05/09/2026 06:13

Les rapports mensuels indiquent si votre symbole comporte des ticks ou seulement des barres, ce qui vous permet de savoir quelle partie de votre backtest s'appuyait sur des ticks générés avant que vous ne fassiez confiance à la courbe. L'outil de test de stratégie vous attribue un score de qualité de l'historique une fois le test terminé, mais n'indique jamais les mois où le problème est survenu. Ce script pose la question au préalable.

L'étape n° 2 consiste à tester l'option « Chaque tick basé sur les ticks réels » à l'aide des données historiques de votre courtier (si ce n'est pas déjà fait). Selon les caractéristiques de votre ordinateur, vous devrez peut-être procéder en plusieurs étapes, notamment sur les machines plus anciennes.

L'étape n° 3 consiste à évaluer le rapport de test que vous avez déjà commencé. Portez une attention particulière au nombre moyen de pertes consécutives et au nombre maximal de pertes consécutives. Il peut être judicieux de réduire la taille de votre position lorsque votre nombre de pertes consécutives en temps réel dépasse votre nombre moyen de pertes consécutives (vous trouverez une explication complète sur ma page de profil). Notez également les périodes (heures, jours et mois) pendant lesquelles votre EA est rentable. Les heures d'entrée en position n'étant pas prises en charge nativement, j'ai créé un utilitaire qui génère un rapport d'assistance ( https://www.mql5.com/en/blogs/post/774010 ). Vous pouvez également implémenter un filtre horaire de trading ( https://www.mql5.com/en/blogs/post/770147 ).

Il convient de préciser qu'il existe de nombreux traders de position à long terme rentables. Si vos objectifs personnels correspondent à ce style de trading, ne vous préoccupez pas outre mesure de la fréquence de vos transactions. À mon avis, il est bien plus facile de mettre en place une stratégie LFT rentable qu'une stratégie HFT ou même MFT.