Quando un Expert Advisor non apre operazioni, procedi per livelli: installazione, autorizzazioni, condizioni di strategia, quindi la risposta esatta del broker. Modificare gli input a caso può nascondere il vero problema e creare nuovi rischi.
I primi controlli quando un EA per MT4 non funziona
- Conferma che l’EA compaia in Navigatore → Expert Advisor e sia collegato al grafico previsto.
- Conferma che sia abilitato il permesso di trading globale AutoTrading e Consenti trading automatico nelle proprietà dell’EA.
- Verifica il conto, il suffisso del simbolo, il timeframe, il Magic Number, gli orari di mercato e gli input.
- Apri Terminale → Experts e Journal; registra il messaggio completo e il codice numerico.
- Cambia una causa alla volta, quindi verifica nuovamente il registro.
Conservare la sequenza di Experts e Journal prima di intervenire. Per stop o volumi non validi, confrontare la richiesta con la specifica esatta del simbolo: il solo codice non fornisce prezzo, volume e contesto del conto mancanti.
Errore → significato → causa → soluzione
| Errore | Che cosa significa / perché succede | Come risolvere il problema |
|---|---|---|
| EA assente nel Navigatore | Il file è nel terminale o nella cartella sbagliata | Apri la cartella dati da quell'istanza MT4; sposta il file .ex4 in MQL4/Experts e aggiorna il Navigatore. |
| AutoTrading disattivato | L’autorizzazione globale o quella dell’EA è disattivata | Abilita il pulsante nella barra degli strumenti e Consenti trading automatico nelle proprietà dell’EA. |
| Conto o licenza non validi | Le credenziali, il tipo di conto o la licenza associata non corrispondono | Verifica il server del broker e le condizioni di licenza del fornitore; contatta il fornitore senza aggirare la licenza. |
| DLL non consentite | L’EA ha richiamato una libreria esterna senza permesso | Abilita soltanto le DLL richieste da una fonte affidabile; l’hosting virtuale di MetaTrader non può eseguire DLL. |
| Trading disabilitato · 133 | Il server rifiuta la negoziazione per il conto o il simbolo. | Verifica con il broker permessi del simbolo e restrizioni del conto. Controlla separatamente i permessi del terminale. |
| Mercato chiuso · 132 | Lo strumento richiesto è al di fuori degli orari di negoziazione | Attendi l’apertura della sessione del broker e controlla le festività e gli orari del simbolo. |
| Margine insufficiente · 134 | Il margine libero non può sostenere la posizione richiesta | Riduci il rischio o il volume; controlla la leva, il margine e l'esposizione esistente. |
| Stop non validi · 130 | SL, TP o prezzo di un ordine pendente viola le regole applicabili di prezzo o distanza. | Controlla Bid/Ask attuale, direzione, precisione del prezzo e Stops Level. Ricalcola la dimensione se cambia la distanza dello stop. |
| Volume non valido · 131 | Il lotto è inferiore al minimo, al di sopra del massimo o non conforme al passo del lotto | Usa i valori minimi, massimi e il passo del lotto previsti dal broker, quindi normalizza il volume richiesto. |
| Contesto di trading occupato · 146 | Un’altra operazione è ancora in fase di elaborazione | Esegui le richieste in sequenza, attendi brevemente e riprova con un numero limitato di tentativi, evitando un ciclo continuo. |
| Quotazioni non disponibili · 136 / riquotazioni · 138 | Quotazione non disponibile o prezzo cambiato | Controlla connessione e spread, aggiorna il prezzo e usa una tolleranza allo slippage ragionevole. |
| Problema di connessione · 6 | Il terminale ha perso la connessione con il broker | Conferma lo stato del server, internet, login, firewall e VPS; evita ordini ripetuti fino al ripristino. |
L’EA viene caricato correttamente ma non apre operazioni
Questo non è necessariamente un errore. Molti EA aspettano una nuova barra, una sessione specifica, un limite massimo di spread o l’allineamento di diversi indicatori. Conferma il simbolo e il timeframe indicati, quindi cerca messaggi di log come il filtro spread, finestra di trading, ordini massimi o filtro notizie. Non allentare ogni filtro solo per forzare un ingresso.
L’assenza di un segnale valido può essere il normale comportamento della strategia. L’errore 133 o un’autorizzazione disabilitata è un blocco di esecuzione. Il rimedio è diverso.
Conto non valido e licenza non valida
Gli EA commerciali possono legare una chiave a un numero di conto, broker, piattaforma o numero massimo di attivazioni. Controlla che il conto inserito sia quello registrato presso il fornitore e che il server di licenza sia accessibile. Non scaricare mai file modificati né disabilitare i controlli di sicurezza; richiedi un reset legittimo o l'attivazione dal fornitore.
DLL non consentite
Alcuni EA utilizzano librerie esterne per licenze o funzioni aggiuntive. Abilita l’importazione di DLL soltanto se il file proviene da una fonte affidabile e il manuale ufficiale lo richiede. L’hosting virtuale integrato di MetaTrader rifiuta l'uso di DLL, quindi esegui l’EA soltanto su un VPS tradizionale compatibile e approvato dal fornitore.
Errori di Stop Loss, volume, margine ed esecuzione
Errore 130 — Stop non validi
Il livello di Stop Loss, Take Profit o il prezzo di un ordine pendente può essere troppo vicino al mercato, sul lato sbagliato o normalizzato in modo errato. Leggi la specifica del simbolo e calcola in base al numero di cifre dello strumento; non risolvere il problema eliminando la protezione.
Errore 131 — Volume non valido
Normalizza il lotto rispettando minimo, massimo e passo del broker. Un lotto calcolato pari a 0,013 non è valido quando il passo è 0,01 a meno che non sia arrotondato correttamente, e arrotondare verso l'alto può superare il rischio previsto.
Errori 136 e 138 — Prezzi non disponibili e riquotazioni
Questi errori indicano di solito prezzi non disponibili o cambiati. Controlla connessione e spread, aggiorna la quotazione e limita i nuovi tentativi. Ripetere immediatamente gli invii può peggiorare il problema.
Errore 146 — Contesto di trading occupato
MT4 elabora le operazioni di trading in sequenza. Due grafici o routine possono collidere. L’EA dovrebbe attendere l'operazione precedente, ricontrollare il mercato e smettere di riprovare dopo un limite controllato.
Sincronizzazione VPS e problemi di duplicazione
Dopo una migrazione di hosting virtuale MetaTrader, le modifiche di configurazione non vengono automaticamente rimigrate. Esegui una nuova sincronizzazione dopo aver cambiato i grafici o gli input. Con un VPS Windows, verifica che il terminale sia aperto, connesso e configurato per avviarsi dopo un riavvio del sistema. In entrambi i casi, evita di utilizzare lo stesso conto / EA / Magic Number da terminali locali e remoti contemporaneamente.
Cosa inviare all’assistenza
Elimina le password, le chiavi di licenza e i dati personali prima di condividere screenshot o log.
Distingui restrizioni del server e permessi del terminale
L’errore 4109 significa che il programma non può operare: controlla Allow live trading dell’EA e AutoTrading globale. L’errore 4112 indica che il server ha disabilitato il trading automatizzato. L’errore 133 riguarda una restrizione di trading del server. Sono controlli diversi; il pulsante locale non rimuove una restrizione del broker.
L’errore 65 è una risposta di conto non valido del server di trading. Il messaggio «invalid license» del fornitore può invece derivare dalla propria associazione al conto, dall’abbonamento o dal servizio di attivazione. Registra messaggio esatto e origine prima di decidere chi contattare.
Gestisci esiti incerti e regole dinamiche degli stop
Dopo un timeout di trading 128, l’esito della richiesta può essere sconosciuto. Confronta ordini aperti, pendenti e cronologia recente prima di riprovare. Usa i dati del ticket disponibili, poi confronta simbolo, Magic Number, direzione, volume e ora. Ripetere subito può creare un secondo ordine se la prima richiesta è riuscita.
Uno Stops Level di 0 può indicare assenza di minimo fisso oppure una regola dinamica del server; non garantisce che ogni stop venga accettato. Freeze Level limita modifiche, cancellazioni o chiusure vicino al mercato. Controllalo separatamente. Non allontanare uno stop soltanto per eliminare l’errore 130 senza verificare il nuovo rischio monetario.
I codici di errore MQL4 e le proprietà dei simboli definiscono queste differenze.
Riferimento ufficiale sugli errori
Le descrizioni numeriche si basano sulla documentazione ufficiale MQL4 sui codici di errore. L’implementazione del broker e i messaggi specifici dell’EA possono aggiungere ulteriori condizioni.