Diskussion zum Artikel "Datenaustausch zwischen Terminals via Internet mit Hilfe von WinInet.dll" - Seite 5

 
Vitaly Muzichenko:

Lassen Sie es den Graphen zur Laufzeit aussetzen, wo ist das Problem? Ich wiederhole:"Der Entwickler kann beim Schreiben eines Programmsentscheiden , ob er WebRequest verwenden will oder nicht".

Ja, für 30 Sekunden, bis die Zeit abgelaufen ist. Und während dieser Zeit werden sich ein paar tausend Ticks in der OnCalculate-Warteschlange ansammeln.

Der Entwickler wird sich entscheiden, und es wird unmöglich sein, es zu benutzen. Wenn es auf dem Markt keine elementaren Prüfungen gäbe, würden sie schlichtweg unbrauchbaren Mist produzieren. Wenn die Sprache es erlauben würde, Web-Requests von Indikatoren aufzurufen, gäbe es Indikatoren, die das Terminal aufhängen. Und entsprechende Bewertungen würden existieren.

 
Andrey Khatimlianskii:

Ja, 30 Sekunden lang, bis die Zeit abgelaufen ist. Und während dieser Zeit werden sich ein paar tausend Ticks in der OnCalculate-Warteschlange ansammeln.

Der Entwickler wird entscheiden, und es wird unmöglich sein, es zu benutzen. Wenn es auf dem Markt keine elementaren Prüfungen gäbe, würde man schlichtweg unbrauchbaren Mist produzieren. Wenn die Sprache es erlauben würde, Web-Requests von Indikatoren aufzurufen, gäbe es Indikatoren, die das Terminal aufhängen. Und entsprechende Überprüfungen.

Es hängt für 2-5 Sekunden, abhängig von der Aufgabe. Während dieser Zeit läuft er in einer Schleife, sammelt alle Positionsdaten in einem Array, bildet eine Array-Datei und sendet Screenshots des Charts an das Hosting. Und das dauert 2-5 Sekunden.

 
Vitaly Muzichenko:

Bleibt je nach Aufgabe 2-5 Sekunden lang hängen. Während dieser Zeit läuft es in einer Schleife, sammelt alle Daten über Positionen in einem Array, bildet eine Array-Datei, und für die Positionen, die im Moment sind - sendet Screenshots des Graphen an das Hosting. Und das dauert zwischen 2 und 5 Sekunden.

Dies wird realisiert, ohne die Schnittstelle aufzuhängen, indem zum Beispiel ein Skript aufgerufen wird.

Und mit Bremsen von 2-5 Sekunden wäre es unmöglich, mit dem Terminal zu arbeiten (machen Sie ein Experiment, es ist nicht schwer).

 
Andrey Khatimlianskii:

Es wird realisiert, ohne dass die Schnittstelle hängen bleibt, z.B. durch den Aufruf eines Skripts.

Und mit Bremsen von 2-5 Sekunden wäre es unmöglich, mit dem Terminal zu arbeiten (machen Sie ein Experiment, es ist nicht schwer).

Ich habe es seit 1,5 Jahren, der Indikator sendet Daten an die Website, aber mit WinInet.dll.

 
Vitaly Muzichenko:

Ich habe es jetzt seit 1,5 Jahren, der Indikator sendet Daten an die Website

Geschmack und Farbe ... alle Filzstifte sind unterschiedlich.

Es funktioniert für Sie - ich bin froh. Ich sehe keinen Sinn darin, Ihre Meinung zu ändern.


In der Tat habe ich selbst darum gebeten, Web-Request in Indikatoren zu erlauben, um Benachrichtigungen an Telegram zu senden. Aber ich habe mich bereits damit abgefunden, dass das nicht möglich sein wird.

 
Viktor Placek:
OK, ich habe meine Meinung geändert. Dieses Objekt ist einen Versuch wert, denn diese kranken Idioten von MetaQuotes verbieten die Verwendung der WebRequest-Funktion in Strategy Tester.
Brett Luedtke:

Hallo,

Metachat ist eine gute Idee und ich würde es gerne selbst zum Laufen bringen.

Auf der Seite fxmaster.de funktioniert nichts mehr - können Sie mir bitte den PHP-Quellcode für Metachat zur Verfügung stellen? Vielen Dank!

MetaQuotes Software Corp.

Der neue Artikel Using WinInet.dll for Data Exchange between Terminals via the Internet wurde veröffentlicht:

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

Etienne Chabert:

Dieser Artikel sollte ernsthaft überarbeitet werden, die enthaltene internetLib.mqh scheint veraltet zu sein und kann einen zufälligen ungültigen Zugriff in wininet.dll verursachen

Sie sollten die in diesem Artikel enthaltene internetLib verwenden , um Schwierigkeiten zu vermeiden -> Verwendung von WinInet in MQL5. Teil 2: POST-Anfragen und Dateien

Diese Bibliothek erledigt ihre Arbeit ohne Probleme

Guten Tag an Sie.

Ich versuche gerade, das WinInet zum ersten Mal zu benutzen.

Ich versuche, Ihre Wininet.mqh zu verwenden, aber sie gibt mir eine Reihe von Fehlern, ich versuche gerade, sie zu lösen. Meine Frage an Sie lautet: "Sind Sie auch auf Fehler gestoßen, als Sie die Wininet.mqh-Datei kompiliert haben? "

 
Und wie kann man das Skript vom Indikator aus aufrufen? Wie ich weiß, ist dies auch mit normalen Methoden unmöglich.
 
Vielleicht weiß jemand, was die Host-Anforderungen in dieser Lib (wininet.dll) sind?
Diese hier schlägt fehl ec2-18-217-190-217.us-east-2.compute.amazonaws.com
 
Sergey Naumov:
Und wie kann man das Skript vom Indikator aus aufrufen? Wie ich weiß, ist das auch mit normalen Methoden nicht möglich.

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

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