Résumé

Les causes fréquentes : absence de vérification des positions ouvertes, mauvais magic number, condition répétée à chaque tick, variable d’état mal mise à jour ou logique différente entre MT4 et MT5.

1. La condition reste vraie plusieurs ticks

Si l’EA ouvre un ordre dès qu’une condition est vraie, et que cette condition reste vraie pendant plusieurs ticks, il peut répéter l’ordre sans garde-fou.

2. Le robot ne vérifie pas les positions existantes

Avant d’ouvrir, l’EA doit vérifier s’il existe déjà une position ou un ordre correspondant au symbole, au sens et au magic number attendu.

3. Le magic number est absent ou mal utilisé

Le magic number permet d’identifier les ordres d’un EA. S’il est absent, mélangé ou mal filtré, le robot peut ignorer ses propres positions.

4. L’état interne n’est pas fiable

Une variable qui se réinitialise au mauvais moment, un redémarrage de plateforme ou une mauvaise lecture de l’historique peuvent casser la logique anti-doublon.

5. La correction doit être vérifiée sur le même scénario

Une bonne correction ne se limite pas à “ajouter une condition”. Il faut reproduire le problème, corriger, puis relancer un test comparable.

DataVryx

Correction documentée

DataVryx peut reproduire le défaut, corriger la logique et fournir une note des changements.

Voir la correction EA