Come si scrive un programma per Metatrader?

Programmare con MQL

Esistono due strade, una per i pazzi smanettoni e l’altra per chi non ha tempo da perdere. La prima strada prevede l’uso di un semplice editor di testi , va benissimo anche il semplice NotePad di Windows, avendo l’accortezza di salvare il file con l’estensione .mq4.

Dopo la realizzazione del nostro capolavoro il file va compilato, chi si è già occupato di programmazione sa cosa voglio dire per gli altri una breve spiegazione. Ogni software viene realizzato da uno o più programmatori utilizzando un linguaggio che è comprensibile, ma il computer riesce a capire solo il codice binario in una serie di 1 e 0 .

Agli albori dell’era informatica programmare un computer voleva dire inserire questi 0 e 1 nella sequenza giusta attraverso dei nastri perforati. Nacque la necessità di semplificare il tutto e furono realizzati i linguaggi di programmazione che includevano dei termini , inglesi naturalmente, che erano facilmente comprensibili.

Comprensibili all’uomo, ma ostici per il computer, e quindi questi software dovevano essere tradotti, compilati in gergo informatico, nella lingua del computer.

MQL non fa eccezione e quindi dopo si deve passare alla fase di compilazione . Metatrader ha incluso nel pacchetto di installazione il suo compilatore, che appunto trasforma il codice MQL in linguaggio macchina, che si chiama metalang.exe

Utilizzare metalang è relativamente semplice per chi riesce ad apprezzare l’utilizzo del computer da riga di comando piuttosto che da interfaccia grafica.

La procedura prevede :

  • Si deve aprire il prompt dei comandi per utilizzare la finestra del vecchio MS DOS
  • Ci si deve recare nel path di installazione di Meta Trader, generalmente \Program Files\Meta Trader 4 eseguendo il comando cd \Program Files\Meta Trader 4 seguito da invio. In questo caso ho assunto l’ipotesi che Meta Trader sia stato installato in \Program Files\Meta Trader 4 , in altri casi si deve sostituire il percorso con quello corretto
  • si inizia la compilazione del nostro file con il comando: metalang -q “nome_del_file_da_compilare.mp4”.

Se tutto è andato per il verso giusto dovrebbe dare un messaggio di qualche riga, ma a noi interessa valutare la parte finale che dovrebbe restituire:

produced -0 error(s), 0 warning(s).

Bene ora ti ho spaventato abbastanza descrivendo la procedura da hacker, ma esiste una seconda opzione tutta grafica e intuitiva per la realizzazione e la compilazione del nostro lavoro in MQL.

Metatrader ha già incluso nel suo parco software, viene installata in maniera automatica insieme alla piattaforma di trading, una IDE (Integrated Development Editor – Editor di Sviluppo Integrato) che permette sia la stesura del codice attraverso delle procedure guidate (Wizard) e il suo specifico tool di compilazione il tutto in maniera facile .

I vantaggi di questo approccio sono:

  1. Minor quantità di codice da inserire, le righe basilari che come vedrai non sono poche vengono inserite dall’editor
  2. Attraverso procedure guidate è facile inserire gli indicatori di analisi tecnica e accedere al dizionario delle funzioni semplicemente premendo il tasto F1
  3. Per la compilazione è sufficiente premere il tasto F5.

Ok ora abbiamo capito cosa è MQL, a cosa serve e come fare per scriverlo, è ora di capire come si scrive il codice partendo dalle nozioni più basilari: la sintassi

La sintassi di MQL4

La sintassi di un linguaggio di programmazione è una delle parti più importanti da apprendere, è un po’ come la grammatica per una lingua che ha le sue regole da seguire per consentire di interloquire in maniera appropriata. Mentre nel linguaggio parlato, che viene svolto da due esseri pensanti, alcune mancanze grammaticali portano comunque alla comprensione di quanto comunicato, essendo un computer per definizione assente di qualsiasi attività intellettiva, la sintassi deve essere seguita in maniera precisa pena l’impossibilità di utilizzare il software scritto.

Tranne che in alcuni casi gli spazi vuoti vengono ignorati dal compilatore come pure i rimandi a capo, per terminare un istruzione, infatti, non è sufficiente premere invio, ma è necessario il carattere “;”. Alla luce di quanto detto i tre esempi qui sotto portano allo stesso risultato:

int Variabile=5;

int Variabile = 5;

int

Variabile

=5;

Va da se che il primo caso è maggiormente leggibile e quindi più comprensibile, ma gli esempi avevano l’obiettivo di mostrare la presunta inutilità degli spazi nella compilazione del codice e l’essenzialità del carattere “;” per definire il termine dell’istruzione.

Per raggruppare due o più istruzioni le stesse devono essere racchiuse tra le parentesi graffe { }

{
string Stringa="Benvenuto nel nostro corso MQL4";
Print(saluti);
}

Di particolare importanza in ogni linguaggio di programmazione sono i commenti, questi sono elementi che vengono ignorati in fase di compilazione, ma restano nel codice sorgente e sono essenziali per la leggibilità e la modifica del codice sia da parte del programmatore originario sia di quelli che vogliono cimentarsi nella modifica del software per apportare delle personalizzazioni o miglioramenti.

I commenti in MQL4 possono essere sia a riga singola sia su più righe, la sintassi nei due casi è differente.

Per definire un commento a riga singola la frase da commentare deve essere preceduta da una doppia slash: //:

string Stringa="Ciao Mondo"; //definisce una variabile stringa

Se il commento si deve estendere a più righe allora la frase deve essere racchiusa in un contenitore composto da un tag di apertura /* e uno di chiusura */ :

/*Questo è un commento lungo che
viene sviluppato in più righe.
Per definire un commento non è necessario terminare con il carattere ; .*/

Come si può vedere le regole della sintassi non sono poi così ostiche, ma vanno seguite alla perfezione per garantire la funzionalità dei nostri script, indicatori o Expert Advisor.

Apri un conto di trading

plus500
plus500

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *