Unisciti alla nostra fan page
- Visualizzazioni:
- 198
- Valutazioni:
- Pubblicato:
- Aggiornato:
-
Hai bisogno di un robot o indicatore basato su questo codice? Ordinalo su Freelance Vai a Freelance
In questo articolo viene presentato un esempio di trasmissione delle quotazioni da MetaTrader 5 a un’applicazione server scritta in Delphi 7.
Per la comunicazione viene utilizzato il protocollo TCP, che consente di trasferire i dati non solo in locale ma anche in remoto, ad esempio su un PC collegato alla rete locale.
Per la gestione dei socket viene utilizzata la libreria
Winsock2 (wsock32.dll). Tuttavia, non è possibile utilizzare direttamente le funzioni di questa libreria a causa della mancanza, in MQL5, di un meccanismo per la gestione dei puntatori e per il passaggio di tipi di dati complessi come parametri alle funzioni DLL chiamate.
Come anello intermedio che collega l’expert advisor e la libreria dei socket funge la libreria socket_mql5.dll, scritta in C++.
La figura 1 mostra lo schema di interazione tra MetaTrader 5 e l’applicazione server.

Figura 1. Schema di interazione tra MetaTrader 5 e l’applicazione server
Nella libreria socket_mql5.dll è implementato un insieme minimo di funzioni per la trasmissione unidirezionale dei dati: SocketOpen, SocketWriteData, SocketWriteString, SocketClose. Le quotazioni possono essere trasmesse in due formati: come dati e come stringa. La scelta del formato è implementata nella variabile di input "tipo di dati trasmessi" del consulente.
Il risultato del funzionamento dello expert advisor, che implementa un client che si connette all’applicazione server e trasmette i dati relativi a ogni tick, è illustrato nella figura 2.

Figura 2. Trasmissione dei dati da MetaTrader 5 all’applicazione server
L'archivio contiene:
- Un expert advisor;
- la libreria socket_mql5.dll (codice sorgente scritto in Visual Studio 2008);
- un server TCP e un client TCP (il codice sorgente è scritto in Delphi 7).
Tradotto dal russo da MetaQuotes Ltd.
Codice originale https://www.mql5.com/ru/code/169
Time To Close v1.01 - MT5
Tempo di chiusura della candela. Colori del testo dinamici. Ottimizzato per il back-testing.
DailyHighLow Indicator for MQL5
L'indicatore DailyHighLow è uno strumento versatile progettato per MetaTrader 5 (MQL5) per visualizzare i livelli di prezzo alti e bassi su un grafico basato su un timeframe specifico. Questo indicatore è particolarmente utile per i trader che si basano sui livelli di prezzo chiave per prendere decisioni, offrendo flessibilità grazie a timeframe e metodi di calcolo dei prezzi personalizzabili.
AlfOs
Un oscillatore simile all'OsMA basato sulla media dinamica dell'indice variabile.
Parole chiave MQL5
Parole chiave del linguaggio MQL5