MT5 und Geschwindigkeit in Aktion - Seite 33

 
Renat Fatkhullin:

Ihr Markt-/Handelsstatus wird sich erst ändern, wenn Sie nach einiger Zeit eine schrittweise Angabe zu Ihrer asynchronen Anfrage erhalten, die Sie in OnTradeTransaction abfangen können.

Oder nicht, wenn die Kommunikation mit dem Handelsserver auch nur kurzzeitig unterbrochen wird

 
fxsaber:

Die Beschleunigung ist erfolgt, aber leider erfolgt die Cache-Aktualisierung aus irgendeinem Grund nicht innerhalb einer Millisekunde, so dass bei jedem Schritt, bei dem der Verlauf aktualisiert wird, eine Warnung ausgegeben wird.


Bitte versuchen Sie es mit einer großen Geschichte.


Ich nehme an, dass diese Millisekunde auf die Speicherzuweisung für die Cache-Aktualisierung zurückzuführen ist. Nichts anderes scheint ihn zu verlangsamen.

Umschalten auf Mikrosekundenzählung. Millisekunden sind nicht mehr angemessen.

 
Renat Fatkhullin:

Umschalten auf Mikrosekundenzählung. Millisekunden sind nicht mehr angemessen.

Das habe ich. Aber das macht HistorySelect natürlich nicht schneller.

Dateien:
Benchmark.mqh  3 kb
 
Andrey Khatimlianskii:

Natürlich muss es ein Snapshot-Objekt geben.

Ich hab's.

Forum zum Thema Handel, automatisierte Handelssysteme und Strategietests

Bibliotheken: Virtuell

fxsaber, 2020.09.24 12:25

Der Snapshot hat die Geschwindigkeit von reinem MQL5 verdreifacht. In diesem Fall ist der Snapshot zum Beispiel dreimal schneller als Trade\Trade.mqh.

 
fxsaber:

Ich hab's.

Zur Information: Ihre Bibliothek wird im Prüfgerät nicht helfen.

Das Prüfgerät hat keine Zwischenspeicher für den Transaktionsverlauf und verfügt über eine eigene Direktzugriffs-Engine ohne eine einzige Kopie. Da es sich um eine Single-Thread-Ausführung handelt, benötigen wir weder Caches noch Synchronisierer.

Die Geschwindigkeit des Zugriffs auf die Geschäftshistorie ist seit der Entwicklung des Testers immer so schnell wie möglich gewesen.

 
Renat Fatkhullin:

Zur Information: Ihre Bibliothek wird im Prüfgerät nicht helfen.

Die oben genannten Messungen wurden für eine große Anzahl von offenen Positionen und Aufträgen im Terminal durchgeführt. Der Verlauf ist auch im Snapshot enthalten, aber ich habe seine Leistung nicht gemessen.

Leider sinkt die Leistung des Testers katastrophal, wenn eine große Anzahl von Positionen/Aufträgen gleichzeitig vorliegt. Deshalb habe ich auch nicht daran gedacht, es zu messen. Aber es ist möglich, das irgendwie zu organisieren.

Der Tester hat keine Zwischenspeicher für den Geschäftsverlauf und verfügt über eine eigene Direktzugriffs-Engine ohne eine einzige Kopie. Da es sich um eine Single-Thread-Ausführung handelt, benötigen wir keine Caches oder Synchronisierer.

Die Geschwindigkeit des Zugriffs auf die Geschäftshistorie war seit der Entwicklung des Testers immer die höchste.

Ich muss es im Forum nachschlagen. Ich erinnere mich, dass ich gezeigt habe, wie der generische Zugriff auf die Historie dem Standardmechanismus im Tester überlegen ist.

 

Die Verlaufsabtastung im Terminal wird noch beschleunigt, das wird in der nächsten Beta-Version der Fall sein.

Sobald wir mit dem Terminal fertig sind, lade ich Sie zu einem Speed-Battle im Tester ein.

 
Renat Fatkhullin:

Sobald wir mit dem Terminal fertig sind, lade ich Sie zu einem Speed-Battle im Tester ein.

Leider ist nur der MT5-Stil zu schlagen. Denn das MT4-Style-Konzept wird den MT5-Tester in Sachen Leistung zerreißen, aber der Vergleich wird dann nicht ganz stimmen.

 
Versuchen Sie Build 2622, wo die Abtastrate weiter verbessert wurde.
 
Renat Fatkhullin:
Versuchen Sie Build 2622, wo die Abtastrate weiter verbessert wurde.

Danke, es ist merklich besser geworden. Leider ist es am Wochenende nicht möglich, die Geschichte zu ändern, daher kann ich das nicht überprüfen.