Le Magic Number est un entier qu’un Expert Advisor inscrit dans un ordre au moment de sa création. L’EA peut ensuite parcourir les positions ouvertes et l’historique, retrouver son identifiant et déterminer les ordres qu’il est autorisé à gérer.
Rôle du Magic Number
Ce numéro n’améliore pas la rentabilité, ne limite pas le drawdown et n’autorise pas un compte. Il sert à séparer les stratégies et, si le code est correct, empêche un EA de modifier les ordres d’un autre.
Volume, Stop Loss, corrélation et drawdown maximal exigent des limites de risque distinctes.
Parcours de l’ordre
Attribuez un entier unique et documenté à chaque stratégie indépendante. Conservez-le après un redémarrage de MT4 ou un transfert vers un VPS. Un suffixe de symbole ne demande pas à lui seul un autre Magic Number, mais une nouvelle instance de stratégie le demande généralement. Respectez la valeur fixe ou masquée prévue par l’éditeur.
Définir la responsabilité des ordres
Lisez la documentation. Certains EA exigent un identifiant fixe ; un système de portefeuille peut volontairement le partager entre plusieurs graphiques.
Consigner chaque attribution
Tenez un tableau simple indiquant terminal, compte, EA, symbole, unité de temps et Magic Number. C’est plus fiable que de mémoriser plusieurs installations.
Régler avant l’installation
Saisissez le numéro dans Inputs avant le réel. Ne copiez pas aveuglément un fichier set si un autre EA utilise déjà le même numéro.
Conserver l’identifiant avec des positions ouvertes
Si des positions sont actives, ne changez pas l’identifiant sans procédure de migration du développeur. La nouvelle instance pourrait ne plus reconnaître le panier existant.
Conflits fréquents
| Scénario | Attribution conseillée | Risque de confusion |
|---|---|---|
| Un EA sur un graphique | Un numéro stable pour cette instance | Le modifier avec des positions ouvertes peut les rendre orphelines |
| Même EA sur deux paires | Un numéro par symbole, sauf consigne contraire | Les paniers peuvent être mélangés ou fermés à tort |
| Deux EA différents | Un identifiant propre à chaque EA | Les deux programmes pourraient gérer les mêmes ordres |
| Trades manuels | Généralement Magic Number 0 | Un EA autorisé à gérer 0 pourrait les toucher |
Erreurs fréquentes
Configuration sûre
Vérifiez le périmètre documenté d’attribution des ordres avant de choisir les identifiants. Certains programmes filtrent par Magic Number et symbole ; les EA de portefeuille peuvent gérer volontairement plusieurs symboles ensemble. L’identifiant ne fonctionne que si le code vérifie le périmètre prévu avant de modifier ou clôturer un ordre.
N’utilisez pas les commentaires comme verrou d’attribution. Le serveur peut les modifier, et le Magic Number 0 est couramment utilisé pour les ordres manuels. Vérifiez le véritable champ magic avec un script ou rapport de diagnostic fiable, pas seulement le commentaire affiché.
Vérification
Un Magic Number ne verrouille pas les autres terminaux
Deux terminaux connectés au même compte peuvent lire et gérer le même ensemble d’ordres. Un Magic Number partagé ne crée pas de mutex côté serveur et ne désigne pas un terminal propriétaire. Même des identifiants différents n’empêchent pas deux copies d’ouvrir une exposition dupliquée si elles détectent indépendamment le même signal.
Gardez une seule instance de trading prévue par déploiement, sauf prise en charge explicite de la coordination par le développeur. Lors d’un transfert vers VPS, conservez les identifiants des positions ouvertes, arrêtez l’ancienne instance et confirmez la gestion par la nouvelle. Ne changez pas l’identifiant d’un panier actif pour résoudre un problème de terminal en double.
La référence OrderSend décrit magic comme identifiant défini par l’utilisateur et indique que le serveur peut modifier la fin d’un commentaire.
Vérifier l’attribution des ordres avant de réunir des instances
Supposons que le fournisseur autorise explicitement deux instances démo indépendantes, identifiées par 11401 et 11402. Consignez compte, serveur, version de l’EA, symboles exacts et unités de temps. Lorsqu’un signal normal crée un ordre de test, examinez son véritable champ magic et son symbole. Chaque instance doit reconnaître uniquement les ordres de son périmètre documenté, y compris après redémarrage. Deux numéros différents ne prouvent pas que le code filtre correctement.
Si une position étrangère est modifiée ou qu’un panier existant n’est pas reconnu, n’ajoutez plus d’exposition et conservez les preuves. Ne modifiez pas à titre expérimental les identifiants de positions ouvertes. Un EA de portefeuille coordonné peut suivre un autre modèle ; ses instructions priment sur cet exemple d’instances indépendantes.
Lors d’un transfert, appliquez les contrôles de reprise et de migration VPS, puis évaluez séparément l’exposition globale du portefeuille. Une attribution correcte évite les confusions opérationnelles ; elle ne rend pas indépendantes des stratégies corrélées et ne limite pas leurs pertes de marché.