![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Oui, installez Visual Studio Community, c'est gratuit.
visual studio estunlogiciel de développement de Mikrosoft.
Peut-être que je me trompe, mais après un rapide coup d'œil au code, je n'ai pas vu l'implémentation de websocket, tcp socket est implémenté là.
Je vais exprimer ma position à ce sujet : la mise en œuvre de quelque chose purement en langage mql est bien sûr formidable. C'est agréable lorsque tout est mis en œuvre dans un seul environnement. Aucun environnement de développement n'est capable de couvrir tous les besoins. C'est pourquoi différents types de bibliothèques, qui étendent les possibilités de l'environnement de développement, sont créés. Mais ce n'est même pas le principal problème. Dans mql il n'y a pas de multithreading et d'asynchronie, toutes les méthodes sont exécutées de manière strictement séquentielle. Toute référence à des sources externes, qu'il s'agisse d'une requête http ou d'une requête web, entraîne inévitablement l'arrêt du programme jusqu'à la réception d'une réponse. Parfois, ces interruptions peuvent être importantes, surtout s'il y a une perturbation de l'internet. De mon point de vue, il est préférable que toute interaction externe se fasse sous la forme de bibliothèques tierces (dll).
Websockets est un add-on aux sockets tcp, celui que j'ai posté implémente une partie d'un client websocket classique selonhttps://tools.ietf.org/html/rfc6455.
De mon point de vue, toute interaction externe est mieux réalisée sous la forme de bibliothèques tierces (dll).
Cette question est purement une question de religion personnelle et des exigences du cahier des charges.
J'étais plus à l'aise avec la façon dont ça se passait.
Avez-vous essayé pour l'internet, comment spécifier dans les paramètres de MT pour utiliser ws ?
Dimitri, je ne dis pas que c'est la seule façon de faire et je ne l'impose à personne. J'exprime ma position sur cette question, rien de plus. :)
:) Oui, je comprends. Il n'y a aucun doute là-dessus.
Croyez-moi, je suis venu à cette mise en œuvre pour une raison.
Au début, il y avait WCF sous la forme d'une dll, qui en principe fonctionnait. Mais le nombre de béquilles produit exponentiellement plus de bugs,
et perdre du temps sur une infrastructure tordue... n'est pas la bonne chose à faire. Et ainsi, tout est transparent et simple.
Terminal d'événements <- traitement json -> <- clients websocket -- serveur websocket -> <- traitement json <- services DataSience
J'ai écrit plus haut que j'ai maintenant gelé ce client, car une librairie python de qualité pour travailler avec MT est apparue et une autre béquille peut être jetée.
Avez-vous essayé pour l'internet, comment spécifier dans les paramètres de MT pour utiliser ws ?
Il s'agit donc d'une connexion ip, j'avais tout dans un seul hôte, qu'est-ce qui vous empêche d'entrer des adresses réelles et de faire ce que vous voulez.
Gardez juste à l'esprit que je n'ai pas fait de https. Je n'en ai pas eu besoin.
Avez-vous essayé pour l'internet, comment spécifier dans les paramètres de MT pour utiliser ws ?
Photo Atacha. Le port 80 est pour le handshake, 5000 pour les sockets tcp.
Autorisez le dll - vous n'en avez pas besoin.
Il s'agit donc d'une connexion ip, j'avais tout dans un seul hôte, qu'est-ce qui vous empêche d'entrer des adresses réelles et de faire ce que vous voulez.
Gardez juste à l'esprit que je n'ai pas fait de https. Je n'en avais pas besoin.
J'ai essayé de créer ma propre websocket basée sur les sockets MT, mais cela n'est pas allé plus loin qu'une poignée de main, aucune réponse n'est revenue. Je pensais que c'était le "firewall" de MT.
Si ma mémoire est bonne, j'ai testé avec ce serveur http://demos.kaazing.com/echo/index.html.J'ai essayé de créer mon propre websocket basé sur les sockets MT, mais il n'est pas allé plus loin que le handshake, aucune réponse n'est venue. Je pensais que c'était le "firewall" de MT.
Si ma mémoire est bonne, j'ai testé avec ce serveur http://demos.kaazing.com/echo/index.html.Si vous mettez en œuvre le protocole websockets, vous devez y implémenter des en-têtes binaires.
Oui, vous pouvez le tester ici: http://www.websocket.org/demos/echo/.