Rejoignez notre page de fans
- Vues:
- 36
- Note:
- Publié:
-
Besoin d'un robot ou d'un indicateur basé sur ce code ? Commandez-le sur Freelance Aller sur Freelance
Cet article présente un exemple de transfert de cotations de MetaTrader 5 vers une application serveur écrite en Delphi 7.
Le protocole TCP est utilisé pour la communication, ce qui permet de transférer des données non seulement localement mais aussi à distance, par exemple vers un PC connecté au réseau local.
La bibliothèqueWinsock2 (wsock32.dll) est utilisée pour travailler avec les sockets. Cependant, il est impossible de travailler directement avec les fonctions de cette bibliothèque en raison de l'absence d'un mécanisme permettant de travailler avec des pointeurs et de passer des types de données complexes en tant que paramètres aux fonctions DLL appelées dans MQL5.
La bibliothèque socket_mql5.dll écrite en C++ sert de lien intermédiaire entre l'Expert Advisor et la bibliothèque socket.
La figure 1 montre le schéma d'interaction entre MetaTrader 5 et l'application serveur.
Figure 1 : Schéma de l'interaction entre MetaTrader 5 et l'application serveur
La bibliothèque socket_mql5.dll met en œuvre un ensemble minimal de fonctions pour le transfert de données à sens unique : SocketOpen, SocketWriteData, SocketWriteString, SocketClose. Les citations peuvent être transférées dans deux formats : sous forme de données et sous forme de chaîne de caractères. Le choix du format est implémenté dans la variable d'entrée "type de données transférées" du conseiller expert.
Le résultat de l'Expert Advisor, qui met en œuvre un client qui se connecte à l'application serveur et transmet des données sur chaque tick, est illustré dans la Figure 2.
Figure 2 : Transfert de données de MetaTrader 5 vers l'application serveur
L'archive contient :
- Expert Advisor ;
- Bibliothèque socket_mql5.dll (code source écrit en VisualStudio 2008) ;
- Serveur TCP et client TCP (code source écrit en Delphi 7).
Traduit du russe par MetaQuotes Ltd.
Code original : https://www.mql5.com/ru/code/169

This is a Moving Average indicator based on Heiken-Ashi candles instead of raw market price.

Temps de fermeture de la bougie. Couleurs de texte dynamiques. Optimisé pour le back-testing.

Un oscillateur similaire à l'OsMA sur la moyenne dynamique de l'indice variable.

Mots clés du langage MQL5