FORTS. Fragen der Durchsetzung - Seite 110

 
Aleksey Vyazmikin:

In Bezug auf die Praktikabilität ist es nützlich, aber es ist schwer vorstellbar, wie langsam das Terminal sein wird, wenn es versucht, alles zu synchronisieren... und ich bin nicht sicher, ob eine asynchrone Ankunft dieser Daten sinnvoll ist.

Es wird überhaupt nicht langsamer, die Tabellen werden sowieso verarbeitet :)

Und die Eingabe eines neuen Feldes nimmt überhaupt keine Zeit in Anspruch (sie wird ohnehin für die Bearbeitung von Tabellen verwendet).

Der MT5-Server empfängt ein Paket mit 22 Tabellen und füllt die Felder derMqlBookInfo-Struktur

es ist notwendig, alle 22 Tabellen "durchzugehen" (die Richtung ist das letzte Feld)!

 
prostotrader:

Es wird überhaupt nicht langsamer, die Tabellen werden sowieso verarbeitet :)

Und das Hinzufügen eines neuen Feldes nimmt überhaupt keine Zeit in Anspruch (sie wird ohnehin für die Verarbeitung von Tabellen verwendet).

Der MT5-Server empfängt ein Paket mit 22 Tabellen und füllt die Felder derMqlBookInfo-Struktur

Sie müssen alle 22 Tabellen "durchlaufen" (Richtung - letztes Feld)!

Wenn es sich nicht auf die Produktivität auswirkt, sollte man es natürlich sein lassen.

Allerdings ist es sehr schwierig, jedes Ereignis synchron zu behandeln, d.h. wenn wir vom Auftreten eines Ereignisses erfahren, kann es zu spät sein, um zu handeln. Es sei denn, es handelt sich um den Handel mit Aktien oder langsamen Termingeschäften. Ich meine, die Abweichung bei den Stopps auf dem Markt ist phänomenal - beim letzten Mal waren es 61 Punkte bei der Eröffnung... und nach den Ticks zu urteilen, wurden in 24 ms über 1000 Lots gehandelt.

 
Aleksey Vyazmikin:

aber es ist schwer vorstellbar, wie das Terminal dann beim Versuch, alles zu synchronisieren, langsamer werden soll...

Das Terminal braucht nichts zu synchronisieren... Sie müssen sie nur zu dem Zeitpunkt abgeben, zu dem die Aktualisierung eintrifft (oder mit einer bestimmten Verzögerung). Oder geben Sie einfach zwei Ströme ein: einen Strom für Zecken und einen für Perlen. Aber mit der genauen Ankunftszeit von beiden, damit sie zusammengebracht werden können.

Es wird auf jeden Fall einen Wert haben!

 

Leute!

MqlBookInfo-Struktur wird aus Tabelle 22 (bzw. aus FORTS_FUTORDERBOOK_REPL - Futures: Slice of glass) gefüllt!

Wir fügen das Feld MOMENT hinzu und füllen es einfach aus DIESER Tabelle!

Es gibt keinen Zeitverlust, es muss nichts synchronisiert werden, alles funktioniert wie bisher, nur die Zeit

wird erscheinen! ALLES!

 

Sind Sie sicher, dass jetzt alle Ereignisse im Pokal angezeigt werden? Im Allgemeinen werden sie verarbeitet, da es einen Filter geben kann - sagen wir nicht mehr als 100 Ereignisse pro Sekunde. Und wahrscheinlich kommt die Zeit sowieso, aber sie steht dem Benutzer einfach nicht zur Verfügung, wie sonst sollte man die Bewegungen in der Tasse zeichnen? Aber wenn es viele Bewegungen gibt und sie bereits veraltet sind, dann werden sie vielleicht einfach vom Filter verworfen.

Wie kann man das überprüfen? Was ist zu prüfen? Keine Möglichkeit, oder irgendwelche Ideen?

 
Aleksey Vyazmikin:

Sind Sie sicher, dass jetzt alle Ereignisse im Pokal angezeigt werden? Im Allgemeinen werden sie verarbeitet, weil es einen Filter geben kann - sagen wir nicht mehr als 100 Ereignisse pro Sekunde. Und wahrscheinlich kommt die Zeit sowieso, aber sie steht dem Benutzer einfach nicht zur Verfügung, wie sonst sollte man die Bewegungen in der Tasse zeichnen? Aber wenn es viele Bewegungen gibt und sie bereits veraltet sind, dann werden sie vielleicht einfach vom Filter verworfen.

Wie kann man das überprüfen? Womit können wir das überprüfen? Keine Chance, oder haben Sie eine Idee?

Soll ich Ihnen die Spezifikationen von Plaza 2 geben?

Lesen Sie es, wenn Sie daran interessiert sind, vielleicht verstehen Sie dann, wie das Ganze funktioniert.

Hinzugefügt

Aber um es kurz zu machen.

Die Börse produziert Datenströme, die wir aber nicht in Echtzeit abrufen können, sondern wir erhalten "Ausschnitte" dieser Ströme

mit einer vernachlässigbaren Verzögerung.

 

Eine andere Möglichkeit ist, warum MQ keine Korrekturen und Neuerungen vornehmen will.

Sie mussten den MT5-Server für CGate schnell umschreiben, damit sie die

für die CGate-Implementierung.

Und das sind keine 2 Zeilen Code und muss sehr ernst genommen werden.

Hinzugefügt von

Ich habe mehrmals versucht, meinen eigenen Plaza2-Anschluss zu schreiben, bin aber gescheitert (nicht genug Grips)


 
Aleksey Vyazmikin:

Sind Sie sicher, dass jetzt alle Ereignisse im Pokal angezeigt werden? Im Allgemeinen werden sie verarbeitet, weil es einen Filter geben kann - sagen wir nicht mehr als 100 Ereignisse pro Sekunde. Und wahrscheinlich kommt die Zeit sowieso, aber sie steht dem Benutzer einfach nicht zur Verfügung, wie sonst sollte man die Bewegungen in der Tasse zeichnen? Aber wenn es viele Bewegungen gibt und sie bereits veraltet sind, dann werden sie vielleicht einfach vom Filter verworfen.

Wie kann man das überprüfen? Was ist zu prüfen? Es gibt keine Möglichkeit, oder haben Sie eine Idee?

Lassen Sie sie zumindest eine Bestätigung aller Geschäfte ausstellen. D.h., damit der Markt vergangene Geschäfte bestätigen kann. Das bedeutet Genauigkeit im Millisekundenbereich. Das war's, nicht mehr und nicht weniger - lassen Sie sie aggregieren/zusammenfassen/filtern/schneiden, was auch immer. Sie müssen nur unter der aktuellen Tick-Genauigkeit die Zeit der Tasse mit der gleichen Genauigkeit.

 
Die Neuerungen sollen es den Händlern leichter machen, und das mag nicht für jeden akzeptabel sein. Deshalb haben sie es auch nicht eilig. Meine persönliche Meinung.
 
Konstantin Seredkin:

Guys, ich brauche Ratschläge, wie man Limits auf Forts setzen, gibt es einen Code, wenn eine Position erscheint, der Roboter über und unter dem Preis setzt Limit-Orders mit Einrückung

Ich möchte wissen, ob ich den Preis des Einzugs für Begrenzer richtig normalisiert habe, sollte ich die integrierte Bibliothek verwenden oder ist es besser, den Preis separat zu normalisieren.

Ich danke Ihnen.

Erstellen Sie einen separaten Thread.