Diskussion zum Artikel "Vergleich von MQL5 und QLUA - warum sind Transaktionen in MQL5 bis zu 28 Mal schneller?"

 

Neuer Artikel Vergleich von MQL5 und QLUA - warum sind Transaktionen in MQL5 bis zu 28 Mal schneller? :

Viele Trader machen sich keine Gedanken darüber, wie schnell ihre Order die Börse erreicht, wie schnell sie da ausgeführt wird und wie viel Zeit das Terminal braucht, um das Ergebnis zu erhalten. Wir uns vorgenommen, die Geschwindigkeit der Ausführung von Transaktionen zu vergleichen, denn noch keiner hat vor uns solche Messungen mithilfe von MQL5- und QLUA-Programmen durchgeführt.

Ergebnisse des Vergleichs der Geschwindigkeit von Transaktionen: MetaTrader 5 vs QUIK

Die Ergebnisse aller drei Tests sind in einer Tabelle zusammengefasst, detaillierte Ergebnisse zu jedem Test sind unten in einzelnen Abschnitten des Artikels beschrieben.

Test
MetaTrader 5
QUIK
Vorsprung von MT5
Durchschnittliche Zeit einer synchronen Operation
9.59 ms277.80 ms28.96 Mal
Durchschnittliche Zeit einer asynchronen Operation0.09 ms0.30 ms 3.33 Mal
Aktualisierungsgeschwindigkeit der Markttiefe
42.7 Mal pro Sekunde8.4 Mal innerhalb einer Sekunde5.08 Mal

Wie es aus der Tabelle ersichtlich ist, liegt MetaTrader 5 bei allen drei Tests mit deutlichem Abstand vorne. Sie können solche Test mithilfe angefügten Quellcodes selbst durchführen. Das Testen selbst ist auf dem Video unten zu sehen.


Vergleich der Transaktionsgeschwindigkeit im Video



Autor: MetaQuotes Software Corp.
 

Bitte machen Sie einen weiteren MT5 Geschwindigkeitstest auf einem realen Konto

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Testen von 'CopyTicks'

fxsaber, 2016.09.13 11:11 AM

Wenn durch OrderSendAsync zwei Limiter (BuyLimit1_price < BuyLimit2_price) innerhalb des Spreads gesendet werden, wird die Börse zwei aufeinanderfolgende Ticks mit Geldkursverbesserung zur gleichen Zeit generieren (mit 1ms Genauigkeit)?


 

Kommentare von Politikhassern zu diesem Artikel

MetaQuotes Software Corp. / Клуб трейдеров sMart-Lab. Мы делаем деньги на бирже.
MetaQuotes Software Corp. / Клуб трейдеров sMart-Lab. Мы делаем деньги на бирже.
  • smart-lab.ru
Мы рады сообщить об интеграции с LMAX Exchange — многосторонней площадкой (Multilateral Trading Facility, MTF) для торговли валютами, драгоценными металлами и индексами. Шлюз MetaTrader 5 к LMAX Exchange предлагает брокерам, фондам и профессиональным трейдерам доступ к потоковой ликвидности с использованием лимитных ордеров, прозрачное...
 
//--- Überspringen Sie die ersten Ticks für das anfängliche Abräumen der Warteschlange und das Aufwärmen
   tickcounter++;
   if(tickcounter<ExtSkipFirstTicks)
      return;

Es muss geklärt werden, wie sich Warteschlangen und Aufwärmzeiten auf die Leistung auswirken.

 

MQL5-Sprache selbst : Wenn wir über Millisekunden und noch mehr über Mikrosekunden sprechen, beginnt die Geschwindigkeit der Automatisierungssprache selbst eine bedeutende Rolle bei der Latenz zu spielen.

Wenn ein Händler interpretierte Sprachen wie QLUA/EasyLanguage verwendet, verliert er einfach Millisekunden beim Umschnallen und ist sich dessen nicht einmal bewusst. Ganz zu schweigen davon, dass sein Programm im Kern der Plattform Benachrichtigungen über Marktaktivitäten mit erheblichen Verzögerungen von Hunderten von Mikrosekunden oder sogar Millisekunden erhalten kann.

Deshalb verwenden wir so viel Mühe darauf, MQL5 zu optimieren und Schritt für Schritt die Engpässe zu beseitigen, indem wir Dutzende und Hunderte von Mikrosekunden gewinnen.


Vor kurzem haben wir die Geschwindigkeit der Datenanzeige in den drei Terminals Quik, MetaTrader 5 und SmartX auf MOEX gezeigt.

Sie sollten die Markteröffnung ab ca. 00:50 Uhr beobachten: der Gewinner ist sofort sichtbar


Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Geschwindigkeit der Orderausführung

Renat Fatkhullin, 2016.09.01 20:29

Wir haben einen rein transaktionsbasierten Datenlieferungsmechanismus im Gegensatz zu unseren Konkurrenten, die auf Snapshots basieren. Deshalb werden alle Einzeltransaktionen (Ticks sind auch Transaktionen) sofort und ohne Verzögerungen geliefert.

Die Charts von Quik zum Beispiel leben ihr Snapshot-basiertes Leben isoliert vom Tick-Flow. Deshalb sind die Charts dort im Vergleich zu MetaTrader visuell langsam. Der Stack in Quick wird im Vergleich zu MT5 bis zu 5 Mal langsamer aktualisiert - wir haben das selbst gemessen. Höchstwahrscheinlich handelt es sich bei den Updates auch um Snapshots, um das Terminal und die Infrastruktur nicht zu überlasten.

Und wir streamen ehrlich gesagt alle Daten transaktional ohne Verzögerungen und Snapshots.


 

Мы записали на видео все три теста одним роликом, чтобы было видно:

  1. Die Handelsoperationen wurden auf demselben realen Konto durchgeführt;
  2. und mit demselben Instrument Si-9.16;
  3. auf demselben Computer;
  4. die Geschäfte wurden zur gleichen Zeit ausgeführt;
  5. unter denselben Marktbedingungen;
  6. die Raten der Stack-Updates wurden mit demselben Instrument und zur selben Zeit gemessen;
  7. die Netzwerklatenz zu den Servern von Openreach betrug 2 ms.

Dies ist leider nicht richtig. Sie hätte zur gleichen Zeit gemessen und im Video gezeigt werden müssen.

Sie können MT5 auf einem ruhigen Markt und QUICK auf Nachrichten laufen lassen. Und die Indikatoren werden völlig unterschiedlich sein.

 
fxsaber:


Es besteht Klärungsbedarf hinsichtlich der Auswirkungen von Warteschlangen und Warm-up auf die Leistung.

Wenn Sie sich dieses Video ansehen, werden Sie sehen, dass es vor Beginn einer Handelssitzung mehrere einzelne Aktualisierungen des Stapels gibt. Daher überspringt das Skript die ersten N Ticks, um sicherzustellen, dass sich wirklich viele Aufträge im Stapel befinden. Erst danach beginnt es mit dem Zählen der Ticks.


 
fxsaber:

Das ist leider nicht wahr. Es hätte gleichzeitig gemessen und auf Video gezeigt werden müssen.

Alle Tests wurden nacheinander an einem Stück gefilmt, um die Messungen sauber zu halten.
 
Rashid Umarov:
Alle Tests wurden nacheinander an einem Stück durchgeführt, um die Messungen sauber zu halten.
Dann können die Schlussfolgerungen bezüglich der Gläser logischerweise in Frage gestellt werden.
 
fxsaber:
Dann können die Schlussfolgerungen bezüglich der Brille logischerweise in Frage gestellt werden.
Die Codes werden zur Verfügung gestellt, jeder kann selbst überprüfen, ob die Schlussfolgerungen gültig sind. Hier gibt es kein Problem.
 
Rashid Umarov:

Wenn Sie sich dieses Video ansehen, werden Sie sehen, dass es vor Beginn einer Handelssitzung mehrere einzelne Aktualisierungen des Stapels gibt. Daher überspringt das Skript die ersten N Ticks, um sicherzustellen, dass sich wirklich viele Aufträge im Stapel befinden. Erst danach beginnt es mit dem Zählen der Ticks.


Das Video zeigt den Beginn der Sitzung. Und das Video aus dem Artikel zeigt den eigentlichen "Saft". Und

input ulong ExtSkipFirstTicks=10;  // Anzahl der übersprungenen Ticks beim Start

die Zahl reicht nicht für den Beginn der Sitzung. Bitte erklären Sie, was eine "Warteschlange" und ein "Warm-up" sind.