AutoTrading disattivato: l'EA non parte
Contenuti
- Differenza tra 10027 e 10026 (disattivazione lato client vs lato server)
- ① TRADE_RETCODE_CLIENT_DISABLES_AT = 10027 (disattivato sul tuo terminale)
- ② TRADE_RETCODE_SERVER_DISABLES_AT = 10026 (disattivato lato broker)
- L'autorizzazione al trading in MT5 ha 4 livelli — funziona solo se sono tutti attivi
- Livello 1: il pulsante "Algo Trading" sulla toolbar (intero terminale)
- Livello 2: l'opzione "Consenti trading algoritmico" nelle impostazioni
- Livello 3: l'impostazione dell'EA per singolo grafico "Consenti trading algoritmico"
- Livello 4: lo stato dell'icona dell'EA in alto a destra sul grafico
- Triage in 30 secondi (controlla in quest'ordine)
- 5 cause facilmente trascurate
- ① Login effettuato con la password investitore (sola lettura)
- ② Il broker vieta l'uso di EA su quel tipo di conto (10026)
- ③ Il pulsante torna spento dopo riavvio, aggiornamento o cambio conto
- ④ Il trading automatico resta OFF all'avvio automatico su VPS
- ⑤ Confusione tra conto demo e conto reale
- Rilevare questa condizione in MQL5 (per sviluppatori di EA)
- Note operative
- Checklist per priorità
- Riepilogo
- FAQ
- D: Ho attivato il pulsante Algo Trading ma l'EA non apre ordini.
- D: In cosa differiscono 10027 e 10026?
- D: Funzionava fino a ieri, ma il trading automatico si è disattivato da solo.
- D: Riesco a inviare ordini manuali ma non quelli dell'EA.
"Trading automatico disattivato" e l'EA non parte (MT5)
Hai applicato l'EA su un grafico ma dopo ore di attesa non è stato aperto nemmeno un ordine: la prima cosa da sospettare è la disattivazione del trading automatico (algo trading). La caratteristica di questo problema è che non genera un vero errore visibile, resta semplicemente silenzioso, ed è di gran lunga la causa numero 1 per cui un EA non funziona. Per di più, in MT5 l'autorizzazione al trading si articola su 4 livelli indipendenti: se anche uno solo è disattivato, nessun ordine può essere inviato.
Questo articolo si rivolge sia a chi usa un EA su MT5 sia a chi scrive EA in MQL5, e riassume il significato dei due codici di ritorno collegati, 10027 (TRADE_RETCODE_CLIENT_DISABLES_AT) e 10026 (TRADE_RETCODE_SERVER_DISABLES_AT), la struttura a 4 livelli di autorizzazione, le cause più facilmente trascurate e come rilevarle via codice. Per l'elenco completo dei codici di errore consulta la guida completa alla risoluzione dei codici di errore MQL5 / MT5.
Questo articolo fa riferimento a MT5 (build serie 4xxx) aggiornato a luglio 2026. I nomi delle schermate e l'aspetto delle icone possono variare leggermente a seconda della build.
Differenza tra 10027 e 10026 (disattivazione lato client vs lato server)
Esistono due codici di ritorno che indicano "trading automatico disattivato", e la differenza sta in quale lato sta bloccando l'operatività. Distinguerli è già metà del lavoro per risolvere il problema.
① TRADE_RETCODE_CLIENT_DISABLES_AT = 10027 (disattivato sul tuo terminale)
Il trading automatico è disattivato dalle impostazioni del client (cioè il tuo terminale MT5). Le cause tipiche sono il pulsante "Algo Trading" sulla toolbar spento, oppure l'autorizzazione rimossa nelle opzioni. In questo caso la richiesta d'ordine viene rifiutata all'interno del terminale prima ancora di essere inviata al server del broker.
Significato: trading automatico disattivato sul terminale client (AutoTrading disabled by client)
Costante: TRADE_RETCODE_CLIENT_DISABLES_AT
Valore : 10027
Nella scheda Experts comparirà un log simile a questo:
2026.07.07 09:15:32.441 EA_NAME (XAUUSD,H1) OrderSend failed 10027
2026.07.07 09:15:32.441 EA_NAME (XAUUSD,H1) CTrade::OrderSend: ... [autotrading disabled by client]
La soluzione consiste semplicemente nel correggere le impostazioni del tuo MT5. Attivando tutti e 4 i livelli descritti nella sezione successiva il problema si risolve.
② TRADE_RETCODE_SERVER_DISABLES_AT = 10026 (disattivato lato broker)
In questo caso è il server (cioè il broker) a vietare il trading automatico su quel conto. Per quanto tu riveda le impostazioni del terminale, non cambierà nulla. Rientrano in questo caso alcuni conti bonus, conti cent o conti da contest il cui regolamento vieta l'uso di EA, oppure situazioni in cui il broker ha bloccato l'algo trading a livello di singolo conto per violazione dei termini.
Significato: trading automatico disattivato lato server (AutoTrading disabled by server)
Costante: TRADE_RETCODE_SERVER_DISABLES_AT
Valore : 10026
L'unica soluzione è contattare il broker. Chiedi al supporto se il tipo di conto supporta gli EA (ed eventualmente se serve cambiare tipo di conto o aprirne uno nuovo).
| Codice | Costante | Lato che blocca | Soluzione |
|---|---|---|---|
| 10027 | TRADE_RETCODE_CLIENT_DISABLES_AT | Il tuo terminale MT5 | Attiva tutti e 4 i livelli sul terminale (risolto in questo articolo) |
| 10026 | TRADE_RETCODE_SERVER_DISABLES_AT | Server del broker | Verifica con il broker se l'EA è consentito sul conto |
L'autorizzazione al trading in MT5 ha 4 livelli — funziona solo se sono tutti attivi
In MT5 esistono 4 interruttori indipendenti che devono essere tutti attivi perché un EA possa inviare ordini. Basta che uno solo sia disattivato e nessun ordine passa. Anche quando "funzionava fino a ieri", di solito è uno di questi 4 livelli ad essersi spento.
Livello 1: il pulsante "Algo Trading" sulla toolbar (intero terminale)
Il pulsante "Algo Trading" nella toolbar in alto in MT5. Quando è attivo mostra un'icona verde di play (▶), quando è disattivato mostra un'icona rossa di stop. La scorciatoia è Ctrl+E (capita spesso di premerla per sbaglio e disattivarlo senza accorgersene). Se questo livello è spento, tutti gli ordini di tutti i grafici e di tutti gli EA vengono bloccati in blocco, restituendo il codice 10027.
Livello 2: l'opzione "Consenti trading algoritmico" nelle impostazioni
La casella "Consenti trading algoritmico" nella scheda Strumenti → Opzioni → Expert Advisor. È l'impostazione alla base del pulsante del Livello 1: se qui è disattivata, il pulsante non può essere acceso oppure, anche se acceso, non permette l'invio di ordini.
Nella stessa scheda si trovano anche caselle del tipo "disattiva il trading algoritmico quando..." (al cambio di conto, al cambio di profilo, al cambio di simbolo/periodo del grafico). Se una di queste è spuntata, il pulsante del Livello 1 torna automaticamente su OFF ad esempio nel momento in cui cambi conto. Il fenomeno "a volte si disattiva da solo" è quasi sempre riconducibile a questa impostazione.
Livello 3: l'impostazione dell'EA per singolo grafico "Consenti trading algoritmico"
La casella "Consenti trading algoritmico" nella scheda "Comune" (Common) della finestra di configurazione mostrata quando applichi l'EA al grafico (oppure con clic destro sul nome dell'EA sul grafico → Proprietà). È un interruttore che agisce solo su quel determinato EA su quel determinato grafico. Se è disattivata, altri EA continuano a funzionare mentre solo questo resta fermo (in tal caso MQLInfoInteger(MQL_TRADE_ALLOWED) restituisce false).
Livello 4: lo stato dell'icona dell'EA in alto a destra sul grafico
Quando un EA viene caricato correttamente, in alto a destra del grafico compaiono il nome dell'EA e una piccola icona (a forma di cappello).
- Cappello colorato (tonalità blu) = l'EA è attivo e può operare
- Cappello grigio / con simbolo di divieto = l'EA è caricato ma non può operare (uno dei livelli 1-3 sopra è disattivato)
- Il nome dell'EA non compare affatto = l'EA non è nemmeno presente sul grafico (inserimento fallito o EA rimosso)
L'icona è la "rappresentazione del risultato" e non un interruttore da azionare direttamente, ma resta il punto di controllo più rapido per verificare lo stato a colpo d'occhio. La resa grafica può variare leggermente a seconda della build.
| Livello | Posizione | Ambito d'effetto | Rilevamento in MQL5 |
|---|---|---|---|
| ① Pulsante Algo Trading | Toolbar (Ctrl+E) | Intero terminale | TERMINAL_TRADE_ALLOWED |
| ② Autorizzazione nelle opzioni | Strumenti → Opzioni → Expert Advisor | Intero terminale | TERMINAL_TRADE_ALLOWED |
| ③ Autorizzazione per grafico | Impostazioni EA → scheda Comune | Solo l'EA su quel grafico | MQL_TRADE_ALLOWED |
| ④ Icona dell'EA | In alto a destra sul grafico | Indicatore di stato | — (risultato di ①-③) |
Triage in 30 secondi (controlla in quest'ordine)
- Il pulsante "Algo Trading" sulla toolbar è verde (▶)? → Se è rosso, clicca per attivarlo (Ctrl+E)
- In alto a destra sul grafico compaiono il nome dell'EA e l'icona colorata del cappello? → Se è grigia, passa al punto successivo; se manca il nome, reinserisci l'EA
- Nelle impostazioni dell'EA → scheda Comune → "Consenti trading algoritmico" è spuntato? → Se non lo è, spuntalo e conferma
- In Strumenti → Opzioni → Expert Advisor → "Consenti trading algoritmico" è attivo? → Controlla anche le caselle del tipo "disattiva al cambio di conto"
- Verifica le informazioni del conto — non hai fatto login con la password investitore (sola lettura)? → Rifai il login con la password di trading
- Se i punti 1-5 sono tutti a posto ma continua a comparire il 10026 → Chiedi al broker se l'EA è utilizzabile su quel conto
Nella maggior parte dei casi il problema si risolve già con i punti 1-3.
5 cause facilmente trascurate
① Login effettuato con la password investitore (sola lettura)
Ogni conto MT5 dispone di due password distinte: una password di trading e una password investitore (sola lettura). Effettuando il login con la password investitore nessun ordine può essere inviato, né manualmente né in automatico, anche se il pulsante Algo Trading è attivo. Capita spesso dopo aver mostrato il conto a qualcun altro, oppure se il gestore delle password ha memorizzato la password sbagliata. Da MQL5 è possibile verificarlo controllando che AccountInfoInteger(ACCOUNT_TRADE_ALLOWED) restituisca false. Rifai il login con la password di trading.
② Il broker vieta l'uso di EA su quel tipo di conto (10026)
Alcuni conti cent, conti con bonus o conti da contest possono avere regolamenti che vietano l'uso di EA. In questo caso il rifiuto arriva dal lato server, quindi compare il codice 10026 e non è risolvibile dal terminale. Verifica il regolamento al momento dell'apertura del conto e, se necessario, passa a un tipo di conto compatibile con gli EA.
③ Il pulsante torna spento dopo riavvio, aggiornamento o cambio conto
Dopo un aggiornamento di MT5, oppure in ambienti dove è attiva l'opzione "disattiva il trading algoritmico al cambio di conto", il pulsante Algo Trading può tornare su OFF. È il classico schema "funzionava fino alla settimana scorsa, ma senza accorgersene si è fermato". Conviene prendere l'abitudine di controllare il colore del pulsante dopo ogni riavvio o cambio conto, oppure disattivare la casella di disattivazione automatica nelle opzioni.
④ Il trading automatico resta OFF all'avvio automatico su VPS
Nella gestione via VPS può capitare che, pur avendo impostato "riavvio di Windows → avvio automatico di MT5", il trading automatico dell'MT5 avviato resti disattivato. MT5 dispone di un meccanismo per passare un file di configurazione (ini) tramite /config all'avvio, e nella sezione [Experts] è possibile specificare l'autorizzazione al trading automatico (AllowLiveTrading) e l'aggancio automatico dell'EA. Se imposti l'avvio automatico, includi anche questa configurazione all'avvio e verifica sempre da remoto, dopo il riavvio, che l'icona in alto a destra sul grafico sia colorata. Poiché il VPS serve proprio a operare senza supervisione, trascurare questa verifica può tradursi in una perdita di opportunità di giorni o settimane.
⑤ Confusione tra conto demo e conto reale
Se l'EA funziona in demo ma non sul conto reale (o viceversa), verifica su quale conto è attualmente collegato MT5. Casi tipici sono l'opzione "disattiva l'algo trading al cambio di conto" che fa spegnere il pulsante, oppure il login con la password investitore effettuato solo sul conto reale. Basta guardare il numero di conto nel Navigatore e l'indicatore di connessione in basso a destra nel terminale per verificarlo in 10 secondi.
Rilevare questa condizione in MQL5 (per sviluppatori di EA)
Il problema di 10027/10026 è che "si ferma silenziosamente". Se l'EA segnala da solo, tramite log e alert, quale livello sta bloccando l'operatività, i costi di supporto si riducono drasticamente. Le funzioni da usare sono queste 4:
| Funzione | Cosa verifica |
|---|---|
TerminalInfoInteger(TERMINAL_TRADE_ALLOWED) | Autorizzazione al trading algoritmico dell'intero terminale (pulsante + opzioni) |
MQLInfoInteger(MQL_TRADE_ALLOWED) | Autorizzazione al trading di questo EA (su questo grafico) |
AccountInfoInteger(ACCOUNT_TRADE_ALLOWED) | Se il conto può operare (false con login investitore) |
AccountInfoInteger(ACCOUNT_TRADE_EXPERT) | Se il conto ha l'autorizzazione al trading via EA (impostazione lato server) |
// Identifica e stampa quale livello sta bloccando il trading automatico
bool CheckAlgoTradingAllowed()
{
bool ok = true;
if(!TerminalInfoInteger(TERMINAL_TRADE_ALLOWED))
{
Print("BLOCKED [Terminal]: AutoTrading button is OFF (toolbar / Ctrl+E) or disabled in Options");
ok = false;
}
if(!MQLInfoInteger(MQL_TRADE_ALLOWED))
{
Print("BLOCKED [Chart/EA]: 'Allow Algo Trading' is unchecked in this EA's Common tab");
ok = false;
}
if(!AccountInfoInteger(ACCOUNT_TRADE_ALLOWED))
{
Print("BLOCKED [Account]: trading not allowed - investor (read-only) login?");
ok = false;
}
if(!AccountInfoInteger(ACCOUNT_TRADE_EXPERT))
{
Print("BLOCKED [Server]: broker disabled EA trading for this account (retcode 10026)");
ok = false;
}
return ok;
}
Note operative
La prassi consigliata è controllare una volta in OnInit e avvisare, senza bloccare nulla in OnTick.
int OnInit()
{
if(!CheckAlgoTradingAllowed())
Alert("EA loaded, but algo trading is blocked. See Experts log for the reason.");
return INIT_SUCCEEDED; // non impostare INIT_FAILED
}
Se qui si imposta INIT_FAILED, l'utente dovrà reinserire l'EA dopo aver riattivato il pulsante. Lasciando invece che il caricamento vada comunque a buon fine, il trading partirà nell'istante stesso in cui l'utente attiva il pulsante Algo Trading. Lato OnTick, conviene scrivere un log solo quando lo stato cambia (senza fare Print a ogni tick), così da non intasare la scheda Experts.
Inoltre, registrare nel log il nome della costante quando OrderSend() restituisce un retcode 10027 / 10026 rende molto più semplice l'indagine successiva.
if(res.retcode == TRADE_RETCODE_CLIENT_DISABLES_AT) // 10027
Print("Order rejected: AutoTrading disabled on YOUR terminal. Turn ON the Algo Trading button.");
else if(res.retcode == TRADE_RETCODE_SERVER_DISABLES_AT) // 10026
Print("Order rejected: broker disabled autotrading for this account. Contact your broker.");
Gli EA distribuiti da FXEA365 mostrano costantemente lo stato ON/OFF del trading automatico su una dashboard sul grafico, così questo "stop silenzioso" si nota nell'istante stesso in cui guardi lo schermo.
Checklist per priorità
| Priorità | Verifica | Soluzione |
|---|---|---|
| 🚨 Prima cosa | Pulsante Algo Trading rosso (OFF) | Clicca per attivarlo (Ctrl+E) |
| 🚨 Prima cosa | Icona dell'EA grigia in alto a destra sul grafico | Verifica i 4 livelli in ordine |
| ⚠️ Poi | "Consenti trading algoritmico" nelle impostazioni EA, scheda Comune | Spunta e riapplica |
| ⚠️ Poi | Autorizzazione nelle opzioni + casella di disattivazione automatica | Attiva l'autorizzazione e rivedi la disattivazione automatica |
| ✅ Verifica | Login con password investitore | Rifai il login con la password di trading |
| ✅ Verifica | Codice 10026 (rifiuto lato server) | Chiedi al broker se l'EA è consentito sul conto |
| 🛠 Sviluppo | L'EA resta silenzioso | Implementa il codice di verifica per livello sopra descritto |
Riepilogo
- La causa numero 1 per cui "l'EA non funziona" è la disattivazione del trading automatico (algo trading). La caratteristica è di restare silenzioso senza generare errori evidenti.
- 10027 = disattivato sul tuo terminale (puoi risolverlo da solo), 10026 = disattivato lato broker (va verificato con il supporto).
- L'autorizzazione al trading in MT5 si articola su 4 livelli: ① pulsante sulla toolbar ② opzioni ③ impostazione EA per grafico ④ icona di stato. L'ordine viene inviato solo se tutti sono attivi.
- Le tre trappole più trascurate sono la password investitore, la disattivazione automatica al cambio conto e il ritorno su OFF dopo il riavvio del VPS.
- Chi sviluppa EA dovrebbe far segnalare da solo quale livello sta bloccando l'operatività usando
TERMINAL_TRADE_ALLOWED/MQL_TRADE_ALLOWED/ACCOUNT_TRADE_ALLOWED/ACCOUNT_TRADE_EXPERT.
Per l'elenco completo dei codici di errore consulta la guida completa alla risoluzione dei codici di errore MQL5 / MT5; per gli EA gratuiti dotati di dashboard con visualizzazione costante dello stato consulta la classifica EA.
FAQ
D: Ho attivato il pulsante Algo Trading ma l'EA non apre ordini.
Verifica i livelli diversi dal pulsante (Livello 1). La causa più frequente è la disattivazione dell'impostazione EA per grafico (scheda Comune) "Consenti trading algoritmico". Puoi fare una verifica finale controllando se l'icona dell'EA in alto a destra sul grafico è colorata. Se l'icona è colorata ma comunque non vengono aperti ordini, è probabile che non si tratti di un problema di trading automatico, ma semplicemente che le condizioni di ingresso dell'EA non siano soddisfatte (controlla il log nella scheda Experts).
D: In cosa differiscono 10027 e 10026?
Il 10027 (TRADE_RETCODE_CLIENT_DISABLES_AT) indica che è il tuo terminale MT5 ad aver disattivato il trading automatico, e si risolve modificando le impostazioni del terminale. Il 10026 (TRADE_RETCODE_SERVER_DISABLES_AT) indica che è il server del broker a vietare il trading automatico su quel conto, e non è risolvibile dal lato terminale. Verifica con il broker se il tipo di conto supporta gli EA.
D: Funzionava fino a ieri, ma il trading automatico si è disattivato da solo.
È molto probabile che la causa sia la casella "disattiva il trading algoritmico al cambio di conto / al cambio di profilo" nelle opzioni (Strumenti → Opzioni → Expert Advisor). Inoltre, dopo un aggiornamento di MT5 il pulsante può avviarsi già in stato OFF. Se operi via VPS, inserisci sempre nella routine la verifica dopo il riavvio.
D: Riesco a inviare ordini manuali ma non quelli dell'EA.
Se gli ordini manuali funzionano, il conto è attivo. Il problema è l'impostazione EA per grafico (scheda Comune) oppure il pulsante Algo Trading sulla toolbar, entrambi disattivati. Il trading manuale passa indipendentemente dall'autorizzazione al "trading algoritmico", quindi questo sintomo indica chiaramente una disattivazione a livello del layer del trading automatico. Se anche dopo la verifica continua a comparire il 10026, il broker sta limitando l'uso dell'EA su quel conto.
Correlati
📧 Avvisi prima degli aumenti di prezzo + corso email gratuito di 5 giorni
Tutti gli EA sono a prezzo di lancio e salgono a scatti con le vendite. Ricevi un avviso prima di ogni aumento, più un'email al giorno su trading algoritmico, lettura dei backtest e scelta del broker.
* Privacy rigorosamente protetta. Potete cancellarvi in qualsiasi momento.