Bibliothèque: Travailler avec des sockets dans MQL5

 

Travailler avec des sockets dans MQL5:

Bibliothèque pour le transfert des cotations de MetaTrader5 vers l'application serveur.

Travailler avec des sockets dans MQL5

Author: Andriy Voitenko

 

Merci beaucoup !


 

Le projet a subi quelques modifications et ajouts. Je demande à tous ceux qui ont déjà téléchargé le fichier du projet de le mettre à jour.

 
Ceci n'est valable que pour une paire de devises, mais comment l'appliquer à plusieurs paires de devises ?
 
gisip:
... comment le réaliser pour plusieurs paires de devises ?

Pour ce faire, le socket advisor doit être placé sur les graphiques des paires de devises pour lesquelles vous souhaitez collecter des informations sur les ticks.

Ce n'est pas la solution la plus élégante. Mais je suis prêt à écouter les suggestions pour améliorer le projet.

 
avoitenko:

Pour ce faire, l'Expert Advisor doit être placé sur les graphiques des paires de devises pour lesquelles vous souhaitez collecter des informations sur les ticks.

Ce n'est pas la solution la plus élégante. Mais je suis prêt à écouter les suggestions sur la façon d'améliorer le projet.

Pour MT4, la méthode semble claire - via le serveur DDE, mais pour MT5, je pose la question à tout le monde.

Peut-être que quelqu'un a des idées ?

[Supprimé]  
gisip:

Pour MT4, cela semble clair - via le serveur DDE, mais pour MT5, je demande à tout le monde comment faire.

Quelqu'un a-t-il une idée ?

Tout dépend du degré d'avancement du serveur, de la complexité du protocole réseau et de la tâche à accomplir....

Il faut d'abord définir la tâche, puis développer un protocole de réseau (il peut être nécessaire d'élaborer la structure de la base de données du serveur).

 
Interesting:

Tout dépend du degré d'avancement du serveur, de la complexité du protocole de réseau et de la tâche à accomplir....

Il faut d'abord définir la tâche, puis élaborer un protocole de réseau (il se peut que vous deviez élaborer la structure de la base de données du serveur).

Sans aucun artifice, il suffit d'un flux de cotations, aussi primitif que dans MT4 par l'intermédiaire du serveur DDE.
 

Si vous avez de la patience, je terminerai le projet d'échange de données File Mapping. Ce sera exactement ce dont vous avez besoin.

 
avoitenko:

Si vous avez de la patience, je terminerai le projet d'échange de données File Mapping. Ce sera exactement ce dont vous avez besoin.

Devrai-je mettre un conseiller sur chaque paire pour laquelle je veux recevoir des données ?
 
gisip:
Faudra-t-il paramétrer un Expert Advisor pour chaque paire pour laquelle je veux recevoir des données ?

Je n'ai pas encore effectué le transfert des cotations comme MT4 le fait via DDE, car MT4 est un serveur d'automatisation. Je procède de la manière suivante : MT5 est un client, et si vous voulez connaître les prix actuels, vous envoyez une requête et obtenez le résultat. Cela fonctionne pour toutes les paires de devises actives dans la fenêtre de visualisation du marché.

Dans ce projet, vous pouvez également envoyer toutes les cotations en un seul paquet. Par exemple, dans un Expert Advisor, sur un minuteur toutes les secondes, recevoir des données et vérifier avant de les envoyer que les nouvelles données ne sont pas similaires à celles déjà envoyées, pour chaque paire de devises, c'est-à-dire qu'un changement dans les données pour Ask ou Bid sera considéré comme un nouveau tick.