Diskussion zum Artikel "MQL5-RPC. Remote Procedure Calls von MQL5, mit Web Service Access und XML-RPC-ATC-Analysator"

 

Neuer Artikel MQL5-RPC. Remote Procedure Calls von MQL5, mit Web Service Access und XML-RPC-ATC-Analysator :

In diesem Artikel wird das MQL5-RPC-System beschrieben, das Remote Procedure Calls von MQL5 ermöglicht. Zuerst wird auf die Grundlagen XML-RPC eingegangen, dann folgt die MQL5 Implementierung und zwei Bespiele aus dem echten Leben. Beim ersten Beispiel wird ein externer Webdienst verwendet, beim zweiten ein Client für den einfachen Analysator Dienst XML-RPC ATC 2011. Wenn Sie sich für Implementierungen und Analysen von verschiedenen Statistiken des ATC 2011 in Echtzeit interessieren, dann ist dieser Artikel das Richtige für Sie.

In einer XML-RPC-Beschreibung kommen sechs verschiedene Datentypen vor: Int, Double, Boolean, String, Datetime, Base64 und zwei verbundene Datentypen: Array und Struct. Array kann aus ein paar Grundelementen bestehen, Struct bietet Namen-Werte-Paare, zum Beispiel assoziative Arrays oder Objekteigenschaften.


Grundlegende Datentypen in XML-RPC
 Art Wert Beispiele
int or i432-bit Ganze Zahlen zwischen- 2.147.483.648 und 2.147.483.647.<int>11<int>
<i4>12345<i4>
double64-bit floating-point numbers <double>30.02354</double>
<double>-1.53525</double>
Booleantrue (1) or false (0)<boolean>1</boolean>
<boolean>0</boolean>
stringASCII Text, viele Implementierungen unterstützen Unicode<string>Hello</string>
<string>MQL5</string>
dateTime.iso8601Datum in ISO8601-Format CCYYMMDDTHH:MM:SS<dateTime.iso8601>
20111125T02:20:04
</dateTime.iso8601>
<dateTime.iso8601>
20101104T17:27:30
</dateTime.iso8601>
base64Binärinformation enkodiert wie in RFC 2045 definiert<base64>
TDVsbG8sIFdvdwxkIE==
</base64>


Tabelle 1 Grundlegende Datentypen in XML-RPC

Array kann jeden der Grundtypen beinhalten, nicht unbedingt den gleichen Typ. Array-Element muss im Werte-Element vorhanden sein. Ein Datenelement und einen oder mehrere Werte-Elemente sind in Daten-Elementen enthalten. Das untere Beispiel zeigt ein Array mit vier ganzzahligen Werten.

Autor: investeo

 

Nun, ehrlich gesagt, verstehe ich nicht, wie es cooler ist als ein gewöhnlicher html-Parser, Python, WinInet.dll, aber was ist der Zweck davon?

Was ist das übergreifende Ziel?

Datenanalyse? Ich finde es einfacher, einen Parser zu schreiben, die Parsing-Ergebnisse in der Klasse CTable zu speichern und sie dann nach Belieben zu sortieren und zu analysieren.

Vielleicht liegt mein mangelndes Verständnis daran, dass wir XML vollständig verstanden haben, ich fasse es nicht an und es stört mich nicht :)

 
Er schrieb, dass er das alles in ein paar Wochen geschafft hat. Und das ist eine kleine Zeitspanne, in der man über Ziele nachdenkt, die man hier zu tun hat.
 
Urain:

Nun, ehrlich gesagt, verstehe ich nicht, wie es cooler ist als ein gewöhnlicher html-Parser, Python, WinInet.dll, aber was ist der Zweck davon?

Was ist das übergreifende Ziel?

Datenanalyse? Ich finde es einfacher, einen Parser zu schreiben, die Parsing-Ergebnisse in der CTable-Klasse zu speichern und sie dann nach Belieben zu sortieren und zu analysieren.

Vielleicht liegt mein mangelndes Verständnis daran, dass wir XML vollständig verstanden haben, ich fasse es nicht an und es stört mich nicht :)

Urain:

Nun, ehrlich gesagt verstehe ich nicht, was es steiler normaler html-parser, python warum dann hierher gezogen, WinInet.dll, und dann welchen Zweck? was macht es alles?

Welche wichtige Aufgabe?

Analyse der Daten? so meiner Meinung nach einfacher, einen Parser zu schreiben, um die Ergebnisse des Parsens der Klasse CTable zu speichern und bereits aus ihm heraus zu sortieren analysiert, wie Sie wollen.

Threat Kann mein Missverständnis der Tatsache, dass wir volles Verständnis von XML haben, ich nicht berühren, und es stört mich nicht:)

Dies dient nur als Beispiel und wurde nur erwähnt, weil ATC im Gange ist. Der eigentliche Zweck dieser Methode ist, dass Sie Zugang zum Cloud Computing über XML-RPC haben können. Denken Sie selbst über mögliche Lösungen nach. Sie werden auch ein anderes Problem sehen, das ich in meinem nächsten Artikel vorstellen werde.

Prost.


Распределенные вычисления в сети MQL5 Cloud Network
Распределенные вычисления в сети MQL5 Cloud Network
  • cloud.mql5.com
Заработать деньги, продавая мощности своего компьютера для сети распределенных вычислений MQL5 Cloud Network
 
investeo:

Urain:

Dies dient nur als Beispiel und wurde nur erwähnt, weil ATC in Arbeit ist. Der eigentliche Zweck dieser Methode besteht darin, dass Sie über XML-RPC Zugang zum Cloud Computing erhalten können. Denken Sie selbst über mögliche Lösungen nach. Sie werden auch ein anderes Problem sehen, das ich in meinem nächsten Artikel vorstellen werde.

Prost.


Eine Bemerkung - mit Cloud Computing meine ich nicht die MQL5-Cloud, sondern eine Gruppe von Servern, die komplexe Dinge aus verschiedenen Ressourcen berechnen und als XML-RPC zurückgeben würden.
 
investeo:
Eine Bemerkung - mit Cloud Computing meine ich nicht die MQL5-Cloud, sondern eine Gruppe von Servern, die komplexe Dinge aus verschiedenen Ressourcen berechnen und als XML-RPC zurückgeben würden.

Jetzt etwas, das sich ergibt.

Ich wollte Prost sagen, aber offensichtlich nicht Schicksal, hat Ihre Bemerkung alles verändert.

Wenn Sie ein Management-Ziel-Einstellung MQL5 Cloud Network implementieren, wäre es ein großer Durchbruch sein.

Distributed Computing in the MQL5 Cloud Network
Distributed Computing in the MQL5 Cloud Network
  • cloud.mql5.com
Connect to the MQL5 Cloud Network (Cloud Computing) and earn extra income around the clock — there is much work for you computer!
 
Urain:

Jetzt etwas, das auftaucht.

Ich wollte sagen, Prost, aber offensichtlich nicht das Schicksal, hat Ihre Bemerkung alles verändert.

Wenn Sie eine Management-Ziel-Einstellung MQL5 Cloud Network implementieren, wäre es ein großer Durchbruch sein.

MQL5 Wolke ist eher geschlossene Lösung, da es eng mit Terminal und Zahlungen integriert ist und ich vermute nicht, MetaQuotes, um API für das Release :)

Prost.

 
investeo:

DieMQL5-Cloud ist eine ziemlich geschlossene Lösung, da sie eng mit dem Terminal und den Zahlungen integriert ist, und ich vermute nicht, dass MetaQuotes eine API dafür freigibt :)

Prost.

Ja, ich habe mit MQ darüber gesprochen, sie planen nicht, die API zu geben.

Ich dachte, dass es vielleicht eine Lösung in Bereichen gibt, die mir wenig bekannt sind.

 

Nach dem letzten MT5-Update funktionieren die Wininet-Funktionen nicht mehr. Hatten Sie dieses Problem auch? Wissen Sie, wie man den Fehler der Zugriffsverletzung beheben kann?

 
Es war ein Problem mit der DLL. Warten Sie auf den nächsten Build, sorry.
 
Rosh:

Es war ein Problem mit der DLL. Warte auf den nächsten Build, sorry.

Hallo Rosh,

heute war ich glücklich, weil ich sah, dass mein MT5 aktualisiert wurde... aber das DLL-Problem ist immer noch da :( irgendeine Lösung? wann wird eine stabile Lösung in den Build aufgenommen?