MagicNumber : bien gérer plusieurs EA sur un même compte
Sommaire
En bref : le MagicNumber est le « badge » de l'EA. Jamais de doublon au sein d'un compte
Si vous faites tourner plusieurs EA sur un même compte, la première chose à décider est l'attribution des MagicNumber. Le MagicNumber est un numéro attaché aux ordres et aux positions pour indiquer « quel EA les a passés ». La plupart des EA s'appuient sur ce numéro pour déterminer quelles positions leur appartiennent.
Si un numéro est en double, un EA peut confondre la position d'un autre EA avec la sienne et la clôturer, ou modifier son stop, de sa propre initiative. Aucune erreur n'apparaît, et les deux EA semblent fonctionner normalement à l'écran : c'est un incident difficile à repérer.
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.
Fonctionnement : comment un EA reconnaît « ses » positions
Sous MT5, un EA peut associer un MagicNumber numérique à chaque ordre qu'il envoie. Cette valeur est conservée dans la position (POSITION_MAGIC) et dans l'historique des transactions (DEAL_MAGIC). Pour un ordre passé manuellement, elle vaut généralement 0.
Un EA classique filtre ainsi les positions lorsqu'il les compte ou les gère :
- le symbole est-il le même que celui de son graphique ?
- le MagicNumber est-il identique à la valeur de son paramètre ?
Seules les positions qui satisfont ces deux conditions sont traitées comme « les siennes ». Le point essentiel : MT5 lui-même n'empêche pas les doublons de MagicNumber. Le numéro n'est qu'une convention ; son respect dépend de l'exploitant et de la conception de l'EA.
Ce qui se passe en cas de doublon
Lorsque deux EA tournent sur le même symbole avec le même MagicNumber, on peut par exemple observer ceci :
- Entrées bloquées : un EA limité à « 1 position maximum » compte la position de l'autre EA comme la sienne et renonce à ouvrir une nouvelle position
- Clôture des positions d'un autre EA : lors d'un signal de sortie, il ferme aussi les positions de l'autre EA
- Écrasement des stops : le trailing stop déplace aussi le SL des positions de l'autre EA
- Calcul de lot faussé : pour un EA qui détermine son lot d'après le nombre de positions ouvertes, l'exposition devient plus importante que prévu
Rien de tout cela ne se reproduit en backtest, car le testeur exécute les EA un par un. C'est l'une des raisons pour lesquelles les résultats de test s'écartent de la réalité.
Suivi des clôtures partielles
Pour les EA qui utilisent la clôture partielle, la façon de retracer les enregistrements demande aussi de l'attention. Sur un compte hedging, l'identifiant de la position (POSITION_IDENTIFIER) ne change pas après une clôture partielle, et il figure aussi dans les transactions de clôture de l'historique sous le nom DEAL_POSITION_ID. Pour calculer a posteriori la performance de chaque EA, le plus fiable est de filtrer par MagicNumber, puis de regrouper par cet identifiant de position.
Toutefois, le MagicNumber enregistré dans une transaction de clôture peut correspondre à celui de la partie qui a émis l'ordre de clôture. Si vous clôturez manuellement une partie d'une position ouverte par un EA, cette transaction-là aura le numéro 0, et un calcul basé uniquement sur le MagicNumber ne tombera plus juste. Le champ commentaire peut lui aussi être réécrit par le courtier ou le serveur : il n'est pas fiable comme indice d'identification.
Check-list avant le paramétrage
| Point à vérifier | Méthode | Risque en cas d'oubli |
|---|---|---|
| Les MagicNumber de chaque EA sont-ils tous différents ? | Les lister depuis l'écran de paramètres de chaque EA et les noter | Interférences sur les clôtures et les modifications de SL |
| Un numéro distinct a-t-il été attribué quand un même EA tourne sur plusieurs graphiques ? | Utiliser un numéro différent même pour un autre symbole ou une autre unité de temps | Confusion avec les EA qui ne regardent pas le symbole |
| Le compte est-il de type hedging ? | Vérifier dans les informations du compte | Sur un compte netting, les positions d'un même symbole sont fusionnées en une seule et ne peuvent pas être séparées par numéro |
| A-t-on évité de changer le numéro en cours d'exécution ? | S'assurer qu'aucune position n'est ouverte avant de le modifier | Les positions existantes restent sans gestion |
| Le trading manuel est-il mélangé aux EA ? | Réserver un compte distinct au trading manuel | Décalages dans les calculs, enregistrements incomplets en cas de clôture manuelle |
Adopter une règle simple, par exemple « une tranche de chiffres par EA », évite de s'y perdre en relisant l'historique. L'emplacement de l'écran de paramétrage est expliqué dans Comment configurer un EA.
Limites et précautions
Séparer les MagicNumber n'évite pas tout. Voici ce qu'il faut savoir en toute honnêteté.
- Sans effet sur les EA qui ignorent le MagicNumber : un EA qui filtre uniquement par symbole, ou qui gère toutes les positions du compte, interférera même avec des numéros distincts. Si vous mélangez des EA d'autres éditeurs, nous ne pouvons pas connaître leur conception interne.
- Collision des valeurs par défaut : beaucoup d'EA sont distribués avec leur valeur par défaut. Il est tout à fait possible que des EA de développeurs différents aient, par hasard, la même valeur par défaut. Vérifiez toujours la valeur vous-même.
- EA multi-symboles : lorsqu'un seul EA gère plusieurs symboles, comme ATLAS ou TRINITY, il se retrouve en concurrence avec les autres EA sur les mêmes symboles. Même avec des numéros distincts, la marge est partagée, et des drawdowns simultanés restent possibles.
- La gestion du capital n'est pas séparée : les numéros ne séparent que la gestion des positions. Le niveau de marge et le stop-out se décident à l'échelle du compte entier. Si un EA subit une grosse perte, les autres en pâtissent aussi.
Pour éviter à coup sûr toute interférence, la solution la plus simple reste un compte distinct par EA. La conception des numéros est le minimum de précaution une fois que vous avez choisi de tout faire tourner sur le même compte.
En résumé
- Le MagicNumber est un identifiant d'EA conservé dans les ordres, les positions et l'historique ; MT5 n'empêche pas les doublons
- En cas de doublon, on peut observer des entrées bloquées, la clôture des positions d'un autre EA, l'écrasement du SL et un calcul de lot faussé. Le backtest ne les reproduit pas
- Le suivi des clôtures partielles combine MagicNumber et identifiant de position. Une clôture manuelle peut fausser l'enregistrement
- Sur un compte netting, on ne peut pas séparer les positions par numéro. Avec plusieurs EA, utilisez un compte hedging
- Même avec des numéros distincts, la marge reste partagée. Pour éviter à coup sûr les interférences, séparez les comptes
Retrouvez d'autres conseils d'exploitation dans Savoir-faire EA et MT5.
Associés
2026-11-02
MT5 : ordres, positions et pièges du compte netting
2026-10-29
MQL5 : OnTick ou OnTimer, que choisir pour un EA ?
2026-10-20
Fuseau horaire du serveur : le filtre horaire se décale
2026-10-19
Backtest non reproductible : 5 points à vérifier
📧 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 ↗