Quand Python et MT5 réel divergent de 92 à 98 %
Sommaire
- Spécifications de la stratégie — Cassure du range asiatique vers la session NY
- Résultats du Walk-Forward Python — des chiffres spectaculaires
- Mais voilà — le backtest réel MT5 sur 14 ans (USDJPY_NY_BREAKOUT_EA.mq5 v2.0)
- Pourquoi un tel écart — 5 hypothèses
- Les leçons à l'échelle du secteur
- La décision de FXEA365
- Recommandation au secteur — à l'attention des utilisateurs de backtest Python
- Liens connexes
Quand Python et MT5 réel divergent de 92 à 98 %
Note (2026-10-11) : les EA présentés dans cet article ne sont plus distribués. Les chiffres sont des relevés de l'époque. Pour les EA actuels, voir la liste et classement des EA.
Ici l'équipe FXEA365.
Cet article dévoile intégralement la comparaison réalisée le 2026-05-29 entre la stratégie NY Session Breakout en Walk-Forward Python et son backtest réel MT5 sur 14 ans, révélant un écart de PF de 92 à 98 %.
Cette donnée démontre une nouvelle fois, à l'échelle du secteur, que « des chiffres spectaculaires en backtest Python ne garantissent en rien un fonctionnement réel sous MT5 ».
Spécifications de la stratégie — Cassure du range asiatique vers la session NY
| Élément | Paramètre |
|---|---|
| Unité de temps | H1 |
| Range Asie | 0-4h UTC (formation du range asiatique) |
| Fenêtre de trading | 15-20h UTC (pendant la session NY) |
| Entrée | Cassure du plus haut/plus bas de la session asiatique |
| Sortie | SL = ATR × 0,5 / TP1 = ATR × 0,5 (clôture de 50 %) / TP2 = ATR × 7,0 |
| Lot | Risque 2 % (semi-intérêts composés CASCADE) |
Une stratégie qui possède un edge théorique :
- La session NY (15h-20h UTC) correspond au créneau d'activité des investisseurs institutionnels, avec une forte concentration de liquidité
- Le range asiatique constitue une référence naturelle, et sa cassure haute ou basse est un signal directionnel fort
- La sortie en deux temps (TP1 = ATR×0,5 / TP2 = ATR×7) protège contre les fausses cassures tout en captant la tendance
Comparaison courtiers recommandés →
🎁 Télécharger EA gratuit📧 Cours gratuit par e-mail (8 e-mails) + pack de 13 indicateurs MT5 réservé aux abonnés
* Confidentialité strictement protégée. Vous pouvez vous désabonner à tout moment.
Résultats du Walk-Forward Python — des chiffres spectaculaires
Entre le 2026-05-27 et le 28, le script scripts/gen_h1_ny_walkforward.py a exécuté un Walk-Forward (Train 60 % / Test 40 %) sur 9 paires :
| Paire | PF train | PF test | DD test | WR test | Cohérence | Taux de survie OOS |
|---|---|---|---|---|---|---|
| EURUSD | 7,42 | 9,03 | 5,47 % | 79,6 % | 0,82 | 500/500 |
| GBPUSD | 11,78 | 13,00 | 31,85 % | 84,2 % | 0,91 | 500/500 |
| XAUUSD | 7,76 | 11,96 | 13,18 % | 80,9 % | 0,65 | (validation précédente) |
| EURJPY | 9,41 | 7,93 | 7,46 % | 79,2 % | 0,84 | 500/500 |
| GBPJPY | 9,74 | 8,24 | 12,30 % | 79,3 % | 0,85 | 500/500 |
| USDJPY | 6,12 | 11,62 | 36,24 % | 80,7 % | 0,53 | (validation précédente) |
| CADJPY | 7,59 | 5,76 | 32,81 % | 75,9 % | 0,76 | 499/500 |
| AUDJPY | 8,49 | 6,32 | 27,33 % | 74,4 % | 0,74 | 351/500 |
| NZDJPY | 9,22 | 6,51 | 15,05 % | 70,6 % | 0,71 | 500/500 |
Les 9 paires affichent un PF≥5, un taux de réussite ≥70 % et un taux de survie OOS de 500/500.
Selon les pratiques courantes du secteur, un tel résultat mériterait d'être publié avec fanfare : « découverte d'un edge universel de rêve ! », « extension de la gamme à toutes les paires ! ».
Mais voilà — le backtest réel MT5 sur 14 ans (USDJPY_NY_BREAKOUT_EA.mq5 v2.0)
Conformément à la règle CLAUDE.md « validation en conditions réelles absolument obligatoire », les 4 paires les plus performantes du Walk-Forward Python ont été retestées en backtest réel MT5 sur 14 ans :
| Paire | Walk-Forward Python (test) | Backtest réel MT5 14 ans | Écart | Résultat du compte |
|---|---|---|---|---|
| USDJPY | PF 11,62 / DD 36 % | PF 0,77 / DD 99,72 % | −93 % | -9 966 $ (quasi-perte totale) |
| EURUSD | PF 9,03 / DD 5,47 % | PF 0,73 / DD 99,84 % | −92 % | -9 984 $ (quasi-perte totale) |
| GBPUSD | PF 13,00 / DD 31,85 % | PF 0,21 / DD 101,12 % | −98 % | -10 112 $ (compte soufflé) |
| EURJPY | PF 7,93 / DD 7,46 % | PF 0,49 / DD 100,01 % | −94 % | -10 001 $ (compte soufflé) |
Échec sur les 4 paires, avec un écart de PF de 92 à 98 % par rapport au Walk-Forward Python.
Pourquoi un tel écart — 5 hypothèses
1. Spread et slippage non pris en compte
Le backtest Python se calcule sur une base close-to-close. En conditions réelles, chaque exécution se dégrade avec le spread (0,5 à 2 pips) et le slippage. Une perte de 1 à 3 pips par trade s'accumule rapidement.
2. Qualité des données
Python s'appuie sur des données Dukascopy M5 agrégées en H1. Le backtest réel MT5 utilise les données tick du broker (mouvements de prix bien plus précis). Une même « bougie H1 » peut donc masquer un comportement interne différent.
3. Écart de modèle d'exécution
Python simule une exécution idéale (toujours au prix souhaité). En conditions réelles MT5, les contraintes de volume et de spread créent un écart entre le prix visé et le prix réellement exécuté, particulièrement marqué lors des plages de forte volatilité (juste après l'ouverture de New York par exemple).
4. Fragilité en conditions réelles du TP en deux paliers basé sur l'ATR
Une conception théoriquement élégante, mais le TP2 = ATR×7 n'est quasiment jamais atteint en réel.
- Backtest Python : calcul optimal du SL/TP a posteriori, sur des données passées
- Conditions réelles : le SL=ATR×0,5 est déclenché fréquemment, la tendance ne se poursuit pas assez longtemps pour atteindre le TP2=ATR×7, d'où une série de coupes de pertes
5. Effet négatif du semi-intérêts composés CASCADE en conditions réelles
Le mécanisme d'ajustement dynamique du lot en fonction du solde accélère les dégâts en phase de pertes :
- Solde 10 000 $ → risque 2 % → lot 0,2
- Après une série de pertes, solde 8 000 $ → risque 2 % → lot 0,16 (légère baisse)
- Après une nouvelle série de pertes, solde 5 000 $ → risque 2 % → lot 0,10 (l'effet limiteur de pertes ne joue pas)
La « magie des intérêts composés » théorique se retourne contre le trader en conditions réelles.
Les leçons à l'échelle du secteur
1. Le backtest/Walk-Forward Python ne constitue pas une référence pour MT5 en conditions réelles
- Même un « PF≥5 × WR≥70 % × taux de survie OOS 500/500 » n'a aucune valeur en réel
- Le verdict « robuste », « robustesse OOS confirmée » du Walk-Forward n'évalue que la robustesse au sein des données Python, et ne se substitue pas à une validation réelle
2. Même une « hypothèse économiquement rationnelle » exige une validation en conditions réelles
- « Activité institutionnelle pendant la session NY », « la cassure du range asiatique est un signal directionnel » sont des principes théoriquement corrects
- Pourtant, échec total sur 14 ans de backtest réel MT5 = un écart considérable entre la théorie et la réalité
3. Renforcement de la justification de la règle CLAUDE.md « validation en conditions réelles absolument obligatoire »
- 25 EA + 4 stratégies NY Session = 29 validations au total confirmant que le backtest Python n'est pas fiable
- Cette donnée soutient, à l'échelle du secteur, l'axe de marque de FXEA365 (« pas de chiffres spectaculaires, mais une preuve en conditions réelles »)
La décision de FXEA365
Les 9 paires de la stratégie NY Session ayant toutes échoué en validation réelle MT5, leur publication sur le site est exclue.
La gamme publiée à l'époque : uniquement les 4 piliers principaux EURJPY ASIA / GBPJPY ASIA / BLAZE GOLD / AUDCAD PEACE-CLONE (tous les quatre ne sont plus distribués).
Un rendement annuel cumulé de +35,5 % (risque 5 %) n'a rien de spectaculaire, mais ce sont des chiffres authentiques, confirmés par 14 ans de backtest réel.
Recommandation au secteur — à l'attention des utilisateurs de backtest Python
Il ne s'agit pas de rejeter le backtest Python. Nous recommandons cependant la répartition d'usage suivante :
| Usage approprié du backtest Python | Recommandation |
|---|---|
| Validation initiale d'une idée de stratégie (cette direction est-elle prometteuse ?) | ✅ Recommandé |
| Screening des plages de paramètres (quelle zone valider précisément) | ✅ Recommandé |
| Vérification de robustesse en Walk-Forward (contrôle du surajustement via séparation Train/Test) | ✅ Recommandé |
| Justification de chiffres publiés sur un site | ❌ Interdit (écart avec le réel) |
| Utiliser le « taux de survie OOS » comme argument commercial | ❌ Interdit (ne remplace pas une validation réelle) |
| Décision de publication d'un EA | ❌ Interdit (validation réelle MT5 obligatoire) |
Les chiffres issus du backtest Python ne sont qu'un « indicateur de screening initial ». Une publication officielle exige une validation en conditions réelles sous MT5.
Liens connexes
- EA actuellement publiés : liste et classement des EA (les 4 EA principaux de l'époque ne sont plus distribués)
- Articles liés :
FXEA365 — nous ne publions gratuitement que des stratégies dont le fonctionnement réel a été prouvé par 14 ans de backtest réel sous MT5, et non des chiffres officiels spectaculaires.
Associés
📧 Cours gratuit par e-mail (8 e-mails) + pack de 13 indicateurs MT5 réservé aux abonnés
* Confidentialité strictement protégée. Vous pouvez vous désabonner à tout moment.
Une question sur les EA ou le Forex ?
Vous pouvez la publier sur le forum de trading Nattzy (inscription gratuite). Les questions qui dépassent cet article sont aussi les bienvenues : réglages d'EA, choix du courtier, etc.
Poser ma question sur Nattzy ↗