Discussion de l'article "Utilisation de WinInet.dll pour l’échange de données entre terminaux via Internet" - page 5

 
Vitaly Muzichenko:

Qu'il suspende le graphique au moment de l'exécution, où est le problème ? Je répète :"le développeur peut décider, lorsqu'il écrit un programme, d'utiliser WebRequest ou non".

Oui, pendant 30 secondes, jusqu'à ce qu'il s'arrête. Et pendant ce temps, quelques milliers de ticks s'accumuleront dans la file d'attente OnCalculate.

Le développeur décidera, et il sera impossible de l'utiliser. S'il n'y avait pas de contrôles élémentaires sur le marché, les développeurs mettraient sur le marché des produits carrément inopérants. Si le langage permettait d'appeler une requête web à partir d'indicateurs, il y aurait des indicateurs qui bloqueraient le terminal. Et les critiques correspondantes existeraient.

 
Andrey Khatimlianskii:

Oui, pendant 30 secondes, jusqu'à ce qu'il s'arrête. Et pendant ce temps, quelques milliers de ticks s'accumuleront dans la file d'attente OnCalculate.

Le développeur décidera, et il sera impossible de l'utiliser. S'il n'y avait pas de contrôles élémentaires sur le marché, les développeurs mettraient sur le marché des produits totalement inopérants. Si le langage permettait d'appeler une requête web à partir d'indicateurs, il y aurait des indicateurs qui bloqueraient le terminal. Et des critiques correspondantes.

Le terminal se bloque pendant 2 à 5 secondes, en fonction de la tâche. Pendant ce temps, il tourne en boucle, collecte toutes les données sur les positions dans un tableau, forme un fichier tableau, et envoie des captures d'écran du graphique à l'hébergeur. Et ceci pendant 2 à 5 secondes.

 
Vitaly Muzichenko:

Le programme reste en suspens pendant 2 à 5 secondes, en fonction de la tâche. Pendant ce temps, il tourne en boucle, collecte toutes les données sur les positions dans un tableau, forme un fichier de tableau et, pour les positions qui sont à ce moment-là, envoie des captures d'écran du graphique à l'hébergeur. Et ceci en 2 à 5 secondes.

Ceci est réalisé sans bloquer l'interface, en appelant un script, par exemple.

Et avec des freins de 2 à 5 secondes, il serait impossible de travailler avec le terminal (faites une expérience, ce n'est pas difficile).

 
Andrey Khatimlianskii:

Il est réalisé sans accrocher l'interface, en appelant un script, par exemple.

Et avec des freins de 2-5 secondes il serait impossible de travailler avec le terminal (faites une expérience, ce n'est pas difficile).

Je l'ai depuis 1,5 ans, l'indicateur envoie des données au site, mais en utilisant WinInet.dll.

 
Vitaly Muzichenko:

Je l'ai depuis 1,5 an, l'indicateur envoie des données au site

Goût et couleur ... tous les feutres sont différents.

Il vous convient, j'en suis heureux. Je ne vois pas l'intérêt de changer d'avis.


En fait, j'ai moi-même demandé d'autoriser les requêtes web dans les indicateurs pour envoyer des notifications à Telegram. Mais j'ai déjà accepté le fait que cela n'arrivera pas.

 
Viktor Placek:
OK, j'ai changé d'avis. Cet objet vaut la peine d'être essayé car ces crétins de MetaQuotes interdisent l'utilisation de la fonction WebRequest dans Strategy Tester.
Brett Luedtke:

Bonjour,

Metachat est une bonne idée et j'aimerais en faire fonctionner un moi-même.

Rien de ce qui est référencé sur le site fxmaster.de ne fonctionne plus - pouvez-vous fournir la source PHP de metachat ? Merci beaucoup.

MetaQuotes Software Corp.:

Le nouvel article Using WinInet.dll for Data Exchange between Terminals via the Internet est publié :

Auteur : Алексей Сергеев

Etienne Chabert:

Cet article devrait être sérieusement édité, l'internetLib.mqh inclus semble être déprécié et peut causer un accès invalide aléatoire dans wininet.dll.

Vous devriez utiliser la internetLib incluse dans cet article pour éviter les difficultés -> Using WinInet in MQL5. Partie 2 : Requêtes POST et fichiers

Cette bibliothèque fait son travail sans problème

Bonjour à tous.

Je suis en train d'essayer d'utiliser WinInet pour la première fois.

J'ai essayé d'utiliser votre Wininet.mqh mais il m'a donné un certain nombre d'erreurs, je suis actuellement en train d'essayer de les résoudre. Ma question est la suivante : "Avez-vous également rencontré des erreurs lorsque vous avez compilé le fichier Wininet.mqh ? "

 
Et comment appeler le script à partir de l'indicateur ? Comme je le sais, c'est également impossible par les méthodes normales.
 
Peut-être quelqu'un sait-il quelles sont les exigences de l'hôte dans cette librairie (wininet.dll) ?
Celui-ci échoue ec2-18-217-190-217.us-east-2.compute.amazonaws.com
 
Sergey Naumov:
Et comment appeler le script à partir de l'indicateur ? Comme je le sais, c'est également impossible par les méthodes normales.

https://www.mql5.com/ru/articles/5337

Многопоточный асинхронный WebRequest на MQL5 своими руками
Многопоточный асинхронный WebRequest на MQL5 своими руками
  • www.mql5.com
Реализация торговых алгоритмов часто требует анализа информации из различных внешних источников, в частности из Internet. MQL5 предоставляет функцию WebRequest для отправки HTTP-запросов во "внешний мир", но она, к сожалению, обладает одним заметным недостатком. Эта функция является синхронной, а потому блокирует работу эксперта на все время...
 
Nous vous remercions.