programmazione
Adesso stai leggendo
Praticamente MQL. Nozioni di base e Market Puls [Corso di programmazione]
0

Praticamente MQL. Nozioni di base e Market Puls [Corso di programmazione]

creato Radek SzafronMarzo 12 2019

Nel ciclo Praticamente MQL ti forniremo le conoscenze necessarie per iniziare a lavorare con le applicazioni scritte in MQL 4 per la piattaforma Meta Trader. Naturalmente, il tema della programmazione è molto ampio, ma lo scopo di questo ciclo non è quello di sollevare tutti i problemi possibili e coprirvi con una teoria complicata. Lo scopo di questo ciclo è mostrarti come iniziare a lavorare con MQL e fornire conoscenze che ti consentiranno di svilupparti in questo spettro.

Lo scopo delle attività che eseguiremo insieme è un'installazione separata della piattaforma MetaTrader 4, sulla quale è installato solo l'account demo di qualsiasi broker. Non vogliamo incasinare un conto reale. Questa potrebbe essere la versione originale della piattaforma MT4.

SCARICA METATRADER 4

Funzioni di base

Iniziamo dalle basi, ovvero da come appare la finestra della piattaforma MT4 e quali funzioni contiene per le applicazioni scritte in MQL. Diamo un'occhiata alla foto qui sotto.

experts_config

MQL in pratica - Fig.1

Nel luogo contrassegnato con quello c'è una finestra "Navigator" (Ctrl + N). Il pannello ci consente di accedere a tutti gli strumenti MQL installati su una determinata piattaforma e in cui è suddiviso "Indicatori", "Strategie" i "Script". Eseguiamo i programmi trascinandoli sul grafico selezionato e configurando i parametri dell'applicazione specificata nella finestra che appare. Nel posto contrassegnato con i due, possiamo vedere un esempio della finestra delle impostazioni. Tutti i parametri che possiamo configurare per l'applicazione sono disponibili qui, ma concentriamoci sugli elementi di base comuni a tutti i programmi. campo "Fai trading" viene spesso trascurato dagli utenti e l'uccello determina se l'algoritmo sarà in grado di concludere le transazioni. Questa funzione consente di disabilitare e abilitare la funzionalità di transazione per ciascun algoritmo rispetto a una funzione "Autotrading", contrassegnato da un triangolo, che è uno switch globale della possibilità di concludere transazioni con tutti gli strumenti che lavorano su una determinata piattaforma Meta Trader.

Penso che non ci sia bisogno di disturbarti con funzioni aggiuntive in questa fase. Le informazioni di cui sopra sono abbastanza per noi per lanciare con successo il nostro primo programma.

Possiamo iniziare a pensare alla programmazione. La piattaforma MetaTrader integra un ambiente di sviluppo di applicazioni. L'ambiente è disponibile dal menu "Editor di linguaggio Tools / MQL4".

metaeditor_launch

MQL in pratica - Fig.2

Dopo aver selezionato l'opzione nel menu, si aprirà una nuova applicazione: "MetaEditor". A questo punto, scriveremo algoritmi per la piattaforma MT4. Fermiamoci qui per un momento e impariamo a conoscere gli elementi più importanti dell'editor.

metaeditor_basic

MQL in pratica - Fig.3

Sul lato sinistro della finestra, proprio come nello stesso MT4, c'è un pannello "Navigator". Nel posto indicato sul disegno sopra, abbiamo sviluppato il contenuto del catalogo Esperti, quindi, facendo doppio clic sul nome del programma, abbiamo aperto il suo codice sorgente, che è apparso nella parte della finestra contrassegnata con il numero due. È in questa parte che creiamo e modifichiamo gli algoritmi. Quando finiamo di scrivere l'applicazione, dobbiamo trasformarla in un formato leggibile dal computer, cioè compilare il programma selezionando l'opzione "Compila" (F7), contrassegnato con un triangolo. L'algoritmo compilato può essere trovato nel pannello "Navigator" Piattaforma MT4 ed esegui il trascinamento sul grafico selezionato. Esattamente come nella parte precedente di questo articolo.

alberello "Navigator" riflette la struttura dei file nella directory MQL4, cioè la directory in cui la piattaforma memorizza tutte le applicazioni scritte in MQL. Se vuoi installare l'applicazione, ad esempio un'applicazione resa disponibile come parte del nostro ciclo, è nella directory MQL4 che devi copiare il file, ricordando che "Strategie" inseriamo nel catalogo "MQL4 \ Experts", un "Indicatori" nel catalogo "MQL4 \ Indicatori" e che ogni copia della piattaforma Meta Trader 4 installata sul tuo computer ha la sua directory MQL4. Come trovare il catalogo MQL4 di una data piattaforma è presentato nell'immagine seguente (nell'icona MQL4, fare clic con il pulsante destro del mouse).

metaeditor_mql_folder

MQL in pratica - Fig.4

Sappiamo già come eseguire, installare e scrivere applicazioni per Meta Trader 4. Passiamo ai meriti e iniziamo ad apprendere la programmazione.


esperti consulenti


Creiamo la prima applicazione

Per permettervi di fare i primi passi come programmatore, scriveremo una piccola applicazione insieme, il cui compito ci informerà sull'attuale attività di mercato. Lo chiameremo "Puls Rynku"e useremo occupati a sfogliare la stampa in previsione dell'aspetto della variabilità desiderata, che sentiremo grazie al cambiamento nella frequenza dei suoni generati dal nostro algoritmo.

Come allegato a questo articolo, sotto QUESTO LINK troverai un file audio "Pulse_beep.wav". Per favore, mettilo nel catalogo "Suoni"che si trova nel catalogo principale della piattaforma MT4. catalogo "Suoni" è possibile individuare aprendo le proprietà di collegamento che eseguono il terminale, come nella figura qui sotto.
mt4_location

MQL in pratica - Fig.5

Le seguenti immagini mostrano come creare un nuovo file di criteri automatico quasi vuoto. Nella finestra MetaEditor, seleziona la funzione "Nuovo", quindi selezionare "Consulente esperto", scegli il nome del programma e clicca "Il prossimo" finché il modello aperto del nuovo programma appare nell'editor.

metaeditor_new_1

Rys.6

 

metaeditor_new_2

Rys.7

 

metaeditor_new_3

Rys.8

Non andiamo sul modo semplice e cancelliamo l'intero contenuto del file nella finestra contrassegnata con uno nell'ultima immagine. Scriveremo l'intero codice della nostra applicazione da soli. Cominciamo.


              // Puls Rynku.mq4
              // Copyright 2019, Mistrz Programowania
              // https://www.mistrz.ty
            

Digitando "//" all'inizio della riga, creiamo commenti, ovvero frammenti che ci servono come programmatori per creare tutti i tipi di informazioni e note all'interno del codice. I commenti non influiscono sul funzionamento del programma. Con l'aiuto dei commenti, è possibile creare l'intestazione dell'applicazione, che fornirà, ad esempio, dati sull'autore, informazioni sull'applicazione stessa o sul copyright. Creiamo un'intestazione (o meno), quindi inseriamo il seguente codice sulla nuova riga.

          
              #property strict
            

I parametri di tipo "#property" consentono di fornire alla piattaforma ulteriori informazioni sul programma che si sta creando. Il parametro "#property strict", posizionato all'inizio della riga, informa la piattaforma che l'algoritmo è stato creato utilizzando la più recente sintassi del linguaggio MQL4.

Nel passaggio successivo, inserisci la seguente operazione nella nuova riga.

    
              input string Plik_dzwiekowy =  "pulse_beep.wav";
            

parola "Input" informa il programma che stiamo creando un parametro che ci permetterà di inserire le impostazioni necessarie per eseguire il programma. su "Input" Specifichiamo sempre il tipo di dati inseriti, eccolo qui "String" questo è il testo Successivamente, creiamo il nome della variabile, che significa, in forma semplificata, il nome del frammento di memoria del computer al quale potremo fare riferimento in futuro per leggere i dati inseriti. Chiamiamo la nostra variabile "Plik_dzwiekowy", è del tipo stringa, cioè ci permetterà di inserire nel programma il testo che useremo come nome del file audio che verrà utilizzato dal nostro algoritmo.

Vediamo il segno di uguale dopo il nome della variabile. Vuol dire che vuoi assegnare del testo alla nostra variabile "Pulse_beep.wav". Questo valore verrà utilizzato in questo caso come valore predefinito e può essere modificato dopo aver trascinato il programma sul grafico nella finestra delle impostazioni. Abbiamo appena definito l'operazione di assegnazione dei dati. È un'operazione semplice e termina con un punto e virgola.

A questo punto dovresti fermarti un attimo e leggere i tipi di dati. Nella riga sopra, abbiamo usato il tipo di dati "String"ma ci sono molti altri tipi e sono una parte fondamentale della lingua che non può essere aggirata. Inserisco un indirizzo in un frammento della documentazione che descrive i tipi di dati del linguaggio MQL4.
Come puoi vedere nei frammenti di cui sopra, una singola riga è molto importante nella programmazione e si dovrebbe fare molta attenzione a ciò che scriviamo nel codice sorgente, perché anche l'errore più piccolo impedisce la compilazione dell'algoritmo.

Scriviamo ulteriormente.


                void OnTick()   
                {
                
                PlaySound(Plik_dzwiekowy);
                
                }
          

Il record precedente definisce la funzione "OnTick ()". Le funzioni sono elementi dell'algoritmo responsabile dell'esecuzione delle operazioni a loro affidate. In questo caso, vediamo la funzione integrale del linguaggio MQL, il cui compito è quello di eseguire l'operazione quando il corso dello strumento su cui il nostro algoritmo opera cambia. La piattaforma chiamerà questa funzione ogni volta che appare un nuovo segno di spunta. Le operazioni che devono essere eseguite da ciascuna funzione che scriviamo sono definite da noi stessi. Abbiamo piena libertà e praticamente zero restrizioni qui. Questa volta, tuttavia, saremo limitati e ricreare solo il file audio precedentemente definito con il parametro "Input". Useremo un'altra funzione, anch'essa incorporata, del linguaggio MQL 4 - "PlaySound (stringa nome file)"il cui compito è riprodurre il file audio con il nome che riceverà utilizzando una variabile con il tipo di dati "stringa" che si aspetta tra parentesi dopo il nome della funzione. Funzionamento della chiamata di funzione "PlaySound" terminiamo con un punto e virgola, perché proprio come l'operazione di mappatura dei dati è un'operazione semplice.

Come probabilmente saprai, ecco l'argomento delle operazioni disponibili nella sintassi della lingua.

Premiamo compilazione!

metaeditor_compile_ok

Rys.9

Tengo le dita incrociate in modo che tutto assomigli a quello sopra. Se è così, la compilazione è andata bene. Se il risultato è più simile a un disegno del numero 10, è necessario individuare l'errore utilizzando le informazioni visualizzate nel pannello in basso, che è apparso dopo il tentativo di compilazione. Sul lato sinistro del pannello, possiamo leggere quali sono gli errori che riguardano e sulla destra in quale riga si trovano. Fare doppio clic su una riga con un errore ci porterà alla parte appropriata del codice sorgente. Inserisci i punti e virgola mancanti e le parentesi e premi di nuovo "Compila".

metaeditor_compile_ups

Rys.10

Pronto! Possiamo andare su MT4 e trascinare il nostro primo algoritmo su qualsiasi grafico.

Beep Beep ... 😉

Ci vediamo la prossima settimana. Scriveremo un nuovo programma ed esploreremo funzioni linguistiche più avanzate.

CODICE FINALE - IMPULSO DI MERCATO

Cosa ne pensi?
Io
68%
interessante
28%
Eh ...
6%
Shock!
11%
Non mi piace
15%
ferita
3%
Circa l'autore
Radek Szafron
L'autore della pubblicazione è Radek Szafron, proprietario della società Expert Advisors, che da anni supporta gli investitori fornendo tecnologie dedicate al mercato FOREX. L'autore si è laureato alla Warsaw School of Economics con la specializzazione "Mercati finanziari" e un programmatore con quasi l'esperienza estiva 20. La società implementa progetti di algoritmi e applicazioni scritte in tutte le lingue dalla famiglia "C", comprese le piattaforme popolari Meta Trader 4 e 5. I consulenti esperti possono essere trovati su www.expertadvisors.pl.

Lascia una risposta