Il Magic Number è un numero intero che un Expert Advisor assegna a un ordine MT4 quando crea l’operazione. L’EA può successivamente esaminare gli ordini aperti e lo storico, trovare il proprio identificatore e decidere quali posizioni può gestire.
A cosa serve il Magic Number
Il numero non rende redditizie le operazioni, non limita il drawdown né autorizza un conto. Il suo scopo è operativo: separa una strategia automatizzata da un'altra e, quando il codice è scritto correttamente, impedisce a un EA di modificare ordini non correlati.
La dimensione della posizione, lo Stop Loss, la correlazione e il drawdown massimo richiedono comunque controlli separati del rischio.
Flusso di gestione degli ordini
Usa un numero intero univoco e documentato per ogni strategia indipendente. Mantieni lo stesso valore quando riavvii MT4 o sposti la stessa installazione su un VPS. Un suffisso di simbolo non richiede un nuovo Magic Number da solo, ma di solito lo fa un’istanza separata della strategia. Se il venditore fornisce un valore fisso o nasconde l'input, segui tale impostazione invece di forzare una sostituzione.
Definisci quali ordini appartengono all’EA
Leggi prima le istruzioni del fornitore. Alcuni EA richiedono un Magic Number fisso, mentre i sistemi di portafoglio condividono intenzionalmente lo stesso numero su diversi grafici.
Registra ogni assegnazione
Tieni una semplice tabella con terminale, conto, EA, simbolo, timeframe e Magic Number. Questo è più affidabile che cercare di ricordare diverse installazioni.
Imposta il valore prima di collegare l’EA
Inserisci il numero negli input dell’EA prima di operare su un conto reale. Non copiare ciecamente un file .set se un altro EA utilizza già lo stesso numero.
Mantienilo invariato mentre ci sono operazioni aperte
Se ci sono posizioni attive, non cambiare l’identificatore senza una procedura di migrazione del fornitore. La nuova istanza potrebbe non riconoscere il paniere esistente.
Conflitti comuni
| Scenario | Assegnazione consigliata | Rischio in caso di conflitto |
|---|---|---|
| Un EA su un grafico | Un numero stabile per quell'istanza di strategia | Cambiarlo mentre sono presenti operazioni aperte può lasciare posizioni non gestite |
| Stesso EA su due coppie | Numero diverso per simbolo a meno che il venditore non indichi diversamente | L’EA può combinare i panieri o chiudere il gruppo di simboli sbagliato |
| Due diversi EA | Un numero unico per ogni EA | Entrambi i programmi possono tentare di gestire gli stessi ordini |
| Operazioni manuali | Di solito Magic Number 0 | Un EA codificato per gestire 0 può modificare ordini manuali |
Errori comuni
Configurazione sicura
Controlla l’ambito documentato di gestione degli ordini prima di scegliere gli identificatori. Alcuni programmi filtrano per Magic Number e simbolo; gli EA di portafoglio possono gestire intenzionalmente più simboli insieme. L’identificatore funziona soltanto se il codice controlla l’ambito previsto prima di modificare o chiudere un ordine.
Non usare i commenti come blocco di gestione. Il server può modificarli e il Magic Number 0 è comunemente usato per ordini manuali. Verifica il campo magic effettivo con uno script o report diagnostico affidabile, non solo il commento visualizzato.
Come verificare
Un Magic Number non esclude gli altri terminali
Due terminali collegati allo stesso conto possono leggere e gestire lo stesso insieme di ordini. Un Magic Number condiviso non crea un mutex sul server né designa un terminale come proprietario. Nemmeno identificatori diversi impediscono a due copie di aprire esposizione duplicata se rilevano indipendentemente lo stesso segnale.
Mantieni una sola istanza di trading prevista per installazione, salvo supporto esplicito del coordinamento da parte dello sviluppatore. Durante il passaggio a VPS, conserva gli identificatori delle posizioni aperte, ferma la vecchia istanza e verifica la gestione della nuova. Non cambiare l’identificatore di un paniere attivo per risolvere un problema di terminale duplicato.
La documentazione di OrderSend descrive magic come identificatore definito dall’utente e segnala che il server può modificare la parte finale del commento.
Verifica l’attribuzione degli ordini prima di unire le istanze
Supponiamo che il fornitore supporti espressamente due istanze demo indipendenti con identificativi 11401 e 11402. Documentare conto, server, versione dell’EA, simboli esatti e timeframe. Quando un normale segnale di test genera un ordine, verificarne campo magic reale e simbolo. Ogni istanza deve riconoscere solo gli ordini del proprio ambito documentato, anche dopo un riavvio. Numeri diversi non dimostrano da soli un filtro corretto nel codice.
Se viene modificata una posizione estranea o non viene riconosciuto un basket esistente, non aggiungere esposizione e conservare le evidenze. Non cambiare per esperimento gli identificativi delle posizioni aperte. Un EA di portafoglio coordinato può usare un modello diverso: le istruzioni del fornitore prevalgono su questo esempio di istanze indipendenti.
Nel trasferimento seguire i controlli di recupero e passaggio del VPS e valutare separatamente l’esposizione complessiva del portafoglio. La corretta attribuzione evita confusione operativa, ma non rende indipendenti strategie correlate né limita le loro perdite di mercato.