Friday, March 18, 2016

Primi elementi di MQL4 - Parte 2

Continuiamo nel nostro viaggio alla scoperta della Metatrader.
La volta scorsa abbiamo rivolto la nostra attenzione alla parte principale del terminale, quella di maggior impatto grafico. Questa volta vedremo un'altra parte importante, l'ambiente di sviluppo.

Per attivare questa parte della piattaforma occorre clickare sul menu Strumenti (o Tools) e successivamente clickare su Scrittore linguaggio MetaQuotes (orribile, meglio in inglese MetaQuotes Language Editor). Oppure, e così mettiamo d'accordo italiani e inglesi, premere il tasto F4.

L'interfaccia che utilizzeremo per sviluppare i trading system o gli indicatori è questa:


Si notano subito diverse aree, e la somiglianza con un buon editor è già da subito abbastanza evidente.
Nell'area di editing, dove si scrive il codice, si nota subito che le "parole" tipiche del linguaggio sono colorate a seconda del loro significato, cioè i tipi delle variabile e le istruzione di preprocessore sono in blu, mentre le funzioni e le chiamate a funzioni sono in violetto, i numeri sono in verde, i commenti sono in grigio, ecc...
Il tipo di linguaggio usato è molto simile al C, infatti ogni istruzione deve terminare con un ";" così come ogni dichiarazione.
All'interno di ogni indicatore o EA si possono poi distinguere diverse funzioni che hanno scopi diversi. Qui sotto è presentato lo "scheletro" di un indicatore così come si presenta dopo aver compilato il piccolo wizard per creare un nuovo indicatore.


In particolare, ogni cosa che faremo avrà delle sezioni che verranno svolte solo al caricamento dell'indicatore sul grafico, racchiuse nella sezione "OnInit" e che servirà quindi per inizializzare le variabili che utilizzeremo in seguito (o per avere informazioni sul particolare mercato su cui applicheremo il nostro strumento), e cose che invece verranno eseguite ogni volta che arriverà un nuovo valore, che saranno invece inserite nella funzione "OnCalculate".
Questa funzione sostituisce la "vecchia" funzione "start" degli indicatori sviluppati per piattaforme precedenti la build 600 di MT4. I "vecchi" indicatori comunque continuano a funzionare benissimo anche sulla nuova versione, mentre non è vero il viceversa.
Avrete sicuramente notato la quantità dei parametri della funzione "OnCalculate" (sono quelli compresi tra le parentesi tonde dopo il nome della funzione), mentre nella funzione "OnInit" non ce ne sono affatto! Il passaggio di variabili a funzioni è una delle cose più difficili da fare quando si programma (questa parte è presa direttamente dal linguaggio C), e sappiate che si possono passare parametri in diversi modi (per valore o per riferimento) a seconda si voglia che la funzione manipoli o meno i parametri scambiati.
Sempre dal linguaggio C è preso il tipo di variabile che la funzione restituisce, che è scritto davanti al nome stesso della funzione, e il valore ritornato è quello che c'è scritto nella parentesi dopo la parola chiave "return". Quindi il return, oltre a terminare una funzione, restituisce un valore sulla base del tipo dichiarato della funzione stessa.

Credo di aver messo abbastanza carne al fuoco per stavolta, e vi lascio il tempo di assimilare le cose nuove di cui siete venuti a conoscenza.

Seguiteci sul sito MQL4Academy.blogspot.it per tutti gli articoli formativi free e i video dell'Academy con Swissquote.

Per ulteriori corsi di approfondimento professionali potete guardare il calendario dei corsi QUI 



No comments:

Post a Comment