SocialVPS — MetaTrader 4 (MT4) è una delle piattaforme più popolari tra i trader Forex e uno dei suoi maggiori punti di forza è la possibilità di automatizzare le operazioni utilizzando Expert Advisors (EA). Se vi siete mai chiesti come i trader costruiscono questi bot di trading automatizzati, questa guida è il vostro punto di partenza. In questo articolo vi spiegheremo le basi di MQL4 (il linguaggio di programmazione alla base di MT4) e vi illustreremo come creare il vostro primo EA. EA Forex.
Cos'è l'MQL4 e perché è importante?
Prima di immergerci nella codifica, cerchiamo di capire cos'è effettivamente MQL4.

MQL4, o MetaQuotes Language 4, è un linguaggio di programmazione di alto livello progettato specificamente per sviluppare strategie di trading sulla piattaforma MT4. Con l'MQL4 è possibile creare indicatori personalizzati, script e, soprattutto, Expert Advisors—alvolta noti come robot Forex o bot di trading algoritmici.
Perché è importante per voi? Perché automatizzare la vostra strategia vi permette di eliminare i pregiudizi emotivi, di operare 24 ore su 24, 7 giorni su 7, e di testare le idee più velocemente di quanto non possa fare il trading manuale.
Che cos'è un EA Forex?
Un EA (Expert Advisor) è un software scritto in MQL4 che automatizza la vostra strategia di trading. Monitora il mercato, apre e chiude le operazioni in base alle condizioni definite dall'utente e può anche inviare avvisi. In sostanza, agisce come il vostro assistente di trading personale—meno lo stipendio.
Creare un EA forex è come dare vita al vostro piano di trading. Segue le istruzioni senza emozioni, senza fatica e senza ripensamenti.
Strumenti necessari per creare il vostro primo EA
Parliamo degli strumenti di base e della configurazione necessaria per iniziare.
- MetaTrader 4 Piattaforma: Scaricate dal vostro broker o dal sito sito ufficiale MetaTrader 4.
- MetaEditore: Installato con MT4, è il luogo in cui scriverete e compilerete il vostro codice.
- Pazienza: Imparare a codificare—anche solo le basi—Richiede tempo.
Il vostro primo EA Forex MQL4: passo dopo passo
Ora passiamo alla parte più divertente: costruire il vostro primo EA Forex. Iniziamo con una strategia di trading di base:
Acquistare quando la media mobile a 10 periodi incrocia la media mobile a 20 periodi.
Vendere quando la media mobile a 10 periodi incrocia la media mobile a 20 periodi.
Passo 1: aprire MetaEditor
- Aprite la vostra piattaforma MT4.
- Fate clic sull'icona MetaEditor o premete il tasto
F4
.
Passo 2: Creare un nuovo file EA
- In MetaEditor, andare su File → New → Expert Advisor (template).
- Dare un nome come
SempliceMA_EA
. - Cliccare Next → Finish.
Passo 3: scrivere il codice EA
Di seguito è riportato un codice EA semplificato da utilizzare per iniziare:
//+------------------------------------------------------------------+
//| SimpleMA_EA.mq4|
//+------------------------------------------------------------------+
#property strict
input int FastMA = 10;
input int SlowMA = 20;
input double LotSize = 0.1;
int start() {
double fastMA = iMA(NULL, 0, FastMA, 0, MODE_SMA, PRICE_CLOSE, 0);
double slowMA = iMA(NULL, 0, SlowMA, 0, MODE_SMA, PRICE_CLOSE, 0);
double fastMA_prev = iMA(NULL, 0, FastMA, 0, MODE_SMA, PRICE_CLOSE, 1);
double slowMA_prev = iMA(NULL, 0, SlowMA, 0, MODE_SMA, PRICE_CLOSE, 1);
if (fastMA > slowMA && fastMA_prev <= slowMA_prev) {
OrderSend(Symbol(), OP_BUY, LotSize, Ask, 2, 0, 0, "Buy Order", 0, 0, clrBlue);
}
if (fastMA = slowMA_prev) {
OrderSend(Symbol(), OP_SELL, LotSize, Bid, 2, 0, 0, "Sell Order", 0, 0, clrRed);
}
return(0);
}
Questo Expert Advisor (EA) esegue il trading automatico su MetaTrader 4 utilizzando una strategia di incrocio di medie mobili semplici (SMA). Quando la MA veloce incrocia la MA lenta, apre un ordine di acquisto. Quando la MA veloce incrocia la MA lenta, apre un ordine di vendita.
Passo 4: compilazione e test
- Colpire il Compile in MetaEditor.
- Tornate alla MT4 e trascinate il vostro EA su un grafico per testarlo.
Ecco fatto. Avete appena creato il vostro primo sistema di trading automatico utilizzando MQL4.
Certamente! Analizziamo questo script MQL4 Expert Advisor SimpleMA_EA.mq4
per aiutare voi o qualsiasi principiante a capire chiaramente cosa fa ogni parte del codice.
Disaggregazione del codice e spiegazioni delle funzioni
#property strict
- Ciò consente di effettuare controlli più severi sugli errori in fase di compilazione per garantire un codice più pulito.
input int FastMA = 10;
input int SlowMA = 20;
input double LotSize = 0.1;
- Questi sono input variables, e ciò significa che gli utenti possono facilmente modificarli nelle impostazioni dell'EA:
FastMA
: il periodo per il Fast Moving Average, ad esempio 10.SlowMA
: il periodo per il Slow Moving Average, ad esempio 20.LotSize
: Quanto sarà grande l'operazione (0,1 lotti in questo caso).
int start() {
- Il
start()
è la funzione main loop negli EA MQL4 (utilizzati nelle versioni precedenti di MetaTrader 4). - Questa funzione esegue ogni volta che si verifica un nuovo tick (aggiornamento del prezzo) viene ricevuto.
double fastMA = iMA(NULL, 0, FastMA, 0, MODE_SMA, PRICE_CLOSE, 0);
double slowMA = iMA(NULL, 0, SlowMA, 0, MODE_SMA, PRICE_CLOSE, 0);
- Queste linee calcolano il corrente dei valori di Fast MA e Slow MA utilizzando
iMA()
:NULL
: simbolo del grafico corrente.0
: periodo di tempo attuale.FastMA/SlowMA
periodo per ogni AdG.0
: turno (candela corrente).MODE_SMA
: uso Simple Moving Average.PRICE_CLOSE
: in base al prezzo di chiusura della candela.0
: candela attuale.
double fastMA_prev = iMA(NULL, 0, FastMA, 0, MODE_SMA, PRICE_CLOSE, 1);
double slowMA_prev = iMA(NULL, 0, SlowMA, 0, MODE_SMA, PRICE_CLOSE, 1);
- Queste linee ottengono il candela precedente Valori di MA (
shift = 1
), in modo da poter confrontare l'attuale con il precedente per la logica del crossover.
da $8.3 a $5.7/fatturato annualmente

Logica Trading
Condizioni di acquisto
if (fastMA > slowMA && fastMA_prev <= slowMA_prev) {
OrderSend(Symbol(), OP_BUY, LotSize, Ask, 2, 0, 0, "Buy Order", 0, 0, clrBlue);
}
- Questo blocco controlla:
- Il Fast MA attualmente sopra la MA lenta?
- Il Fast MA inferiore o uguale alla MA lenta nel candela precedente?
- Se sì, si innesca un Ordine di acquisto con:
Symbol()
: coppia di grafici corrente (ad es. EURUSD).OP_BUY
Tipo di ordine.LotSize
: quantità del lotto.Ask
: prezzo corrente di domanda (prezzo di acquisto).2
: slittamento.0, 0
: nessun Stop Loss o Take Profit."Buy Order"
: commento all'ordine.clrBlue
: colore indicato nella tabella per l'ordine.
Condizioni di vendita
if (fastMA < slowMA && fastMA_prev >= slowMA_prev) {
OrderSend(Symbol(), OP_SELL, LotSize, Offerta, 2, 0, 0, "Sell Order", 0, 0, clrRosso);
}
- Questo blocco controlla:
- Il Fast MA ora sotto la MA lenta?
- Il Fast MA superiore o uguale alla Slow MA in precedenza?
- Se sì, pone un Ordine di vendita utilizzando
OrderSend()
con gli stessi parametri, ma perOP_SELL
.
return(0);
}
- Termina il
start()
e restituisce 0 (non necessario per la funzionalità, ma sintassi standard).
I prossimi passi per costruire EA migliori
Una volta che il vostro EA funziona, probabilmente vorrete migliorarlo. È possibile:
- Aggiungi Stop Loss e Profitto logica.
- Attuare trailing stop.
- Utilizzare di più indicatori o filtri personalizzati.
- Includere gestione del rischio caratteristiche.
Le possibilità sono infinite. Più si impara, più il proprio EA forex diventa potente.
Perché utilizzare un Forex VPS per il vostro Expert Advisor?
A questo punto, potreste pensare: "Bene, ho creato il mio EA. Ma devo lasciare il mio computer acceso 24 ore su 24, 7 giorni su 7?".
La risposta è no—, ecco a cosa serve un VPS Forex. Un Virtual Private Server (VPS) consente all'EA di funzionare ininterrottamente su un server remoto, garantendo tempi di attività stabili, low latency e trading ininterrotto—particolarmente cruciale per il trading automatizzato, robot forex sistemi e strategie algoritmiche.
L'uso di un VPS garantisce che l'EA continui a funzionare anche se Internet si interrompe o il PC si blocca.
Se volete fare sul serio con l'automazione, avete bisogno di un Forex VPS. Ottenete il vostro Forex VPS ad alte prestazioni da SocialVPS e mantenete il vostro EA senza intoppi 24/7.
Domande frequenti
Quanto tempo occorre per imparare MQL4?
Per i principianti, è possibile iniziare a scrivere semplici EA in pochi giorni. L'apprendimento di funzioni più avanzate può richiedere alcune settimane o mesi, a seconda della vostra dedizione.
È possibile creare un EA Forex senza codificare?
Sì, ci sono dei costruttori di EA senza codice disponibili online, ma spesso sono limitati. Imparare l'MQL4 vi dà il pieno controllo e la flessibilità delle vostre strategie.
Un EA Forex è redditizio?
Un EA Forex può essere redditizio se si basa su una strategia solida e ben testata. Il backtesting e l'ottimizzazione sono fondamentali per il successo a lungo termine.
Posso utilizzare lo stesso EA su coppie di valute diverse?
Sì, ma potrebbe essere necessario modificare le impostazioni (come i periodi MA o la dimensione del lotto) per adattarle a coppie o timeframe diversi.
Perché dovrei eseguire il mio EA Forex su un VPS?
Un VPS mantiene l'EA online 24 ore su 24, 7 giorni su 7, previene i tempi di inattività, e migliora la velocità di esecuzione—Che può rendere la vostra strategia più o meno efficace in mercati in rapida evoluzione.