ForexBestRobots.comConfronta EA →
IT

MT4 & Expert Advisor · Identificazione dell'ordine

Magic Number in MT4: come gli Expert Advisor riconoscono gli ordini

Scopri come il Magic Number identifica gli ordini e aiuta a separare le strategie quando il codice verifica l’ambito di gestione previsto.

Diagramma del Magic Number in MT4 con ordini manuali e operazioni di diversi Expert Advisor separatiMT4 & Expert AdvisorGuida pratica MT4

Illustrazione originale creata per ForexBestRobots.com.

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.

Diagramma del Magic Number in MT4 con ordini manuali e operazioni di diversi Expert Advisor separati
Il Magic Number è un identificatore di ordine, non un controllo di rischio o una licenza del conto.
Un numero unico impedisce la confusione, non le perdite di mercato

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.

1

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.

2

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.

3

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.

4

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

ScenarioAssegnazione consigliataRischio in caso di conflitto
Un EA su un graficoUn numero stabile per quell'istanza di strategiaCambiarlo mentre sono presenti operazioni aperte può lasciare posizioni non gestite
Stesso EA su due coppieNumero diverso per simbolo a meno che il venditore non indichi diversamenteL’EA può combinare i panieri o chiudere il gruppo di simboli sbagliato
Due diversi EAUn numero unico per ogni EAEntrambi i programmi possono tentare di gestire gli stessi ordini
Operazioni manualiDi solito Magic Number 0Un EA codificato per gestire 0 può modificare ordini manuali

Errori comuni

Numeri duplicati utilizzati da EA non correlati sullo stesso conto
Un file set copiato che sovrascrive silenziosamente l'identificatore pianificato
Eseguire lo stesso conto in due terminali con impostazioni diverse
Utilizzo di Magic Number 0 quando l’EA è autorizzato a gestire gli ordini manuali
Modifica del valore dopo che un EA ha aperto un paniere di ordini

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

Apri Terminale → Operazioni e visualizza il commento dell’ordine se l’EA ne scrive uno.
Nello storico del conto, ispeziona l’ordine con uno script o un report che espone il campo Magic Number.
Conferma che la chiusura o la modifica di un ordine di prova non influisce sulla posizione di un altro EA.
Controlla le schede Experts e Journal dopo il riavvio per i messaggi su ordini mancanti o non gestiti.
Ripeti il test su un conto demo prima di eseguire diversi EA su un conto reale.

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.

Riferimento ufficiale

Leggi la documentazione ufficiale.