Welche Instrumente können Sie bei Otkritie handeln? - Seite 9

 
Anton Zverev:

Ich muss eine Funktion schreiben, die Ticks von einem Datum zum nächsten zurückgeben würde. Bei Erfolg wäre sie wahr, andernfalls wäre sie falsch.

Und ich schaffe es nicht, so einen Unsinn zu schreiben. Denn ich weiß nicht, was ich mit der Asynchronität anfangen soll. Das Beispiel von Renat mit OnTimer ist wahrscheinlich eine Option. Aber ganz sicher nicht so, wie er sie zitiert hat. OnTimer kann für eine Vielzahl von Dingen verwendet werden.

Kurz gesagt, eine elementare Datum-zu-Tag-Funktion kann hinzugefügt werden, damit es funktioniert.

Die Tick-Volumina der Balken sind völlig inkonsistent mit dem, was in den Copyticks steht, so dass nicht klar ist, wie viele Ticks abgefragt werden sollen.

Das Skript fragt nach Daten ab einem bestimmten Datum.

Hier ist das Ergebnis von zwei Durchläufen des Skripts im Abstand von einigen Minuten:

2016.04.22 11:32:38.538 CopyTicks_1_02 (RTS-6.16,H3)    Получено тиков: 409 код ошибки: 0
2016.04.22 11:32:38.538 CopyTicks_1_02 (RTS-6.16,H3)    Тик: 2016.04.22 11:30:00 bid: 92480.0 ask: 92540.0 last: 92520.0 [0]
2016.04.22 11:32:38.538 CopyTicks_1_02 (RTS-6.16,H3)    Тик: 2016.04.22 11:32:38 bid: 92380.0 ask: 92390.0 last: 92380.0 [408]
2016.04.22 11:32:38.538 CopyTicks_1_02 (RTS-6.16,H3)    Size 0 Mb
2016.04.22 11:34:26.502 CopyTicks_1_02 (RTS-6.16,H3)    Получено тиков: 632 код ошибки: 0
2016.04.22 11:34:26.502 CopyTicks_1_02 (RTS-6.16,H3)    Тик: 2016.04.22 11:30:00 bid: 92480.0 ask: 92540.0 last: 92520.0 [0]
2016.04.22 11:34:26.502 CopyTicks_1_02 (RTS-6.16,H3)    Тик: 2016.04.22 11:34:26 bid: 92410.0 ask: 92440.0 last: 92420.0 [631]
2016.04.22 11:34:26.502 CopyTicks_1_02 (RTS-6.16,H3)    Size 0 Mb

Das heißt, die Ticks werden ab einem bestimmten Datum bis zum aktuellen Zeitpunkt abgefragt.

Dateien:
 
Karputov Vladimir:

Das Skript fragt nach Daten ab einem bestimmten Datum.

Dies ist das Ergebnis von zwei Durchläufen des Skripts im Abstand von einigen Minuten:

Das heißt, die Ticks werden ab einem bestimmten Datum bis zum aktuellen Zeitpunkt abgefragt.

Ich verstehe nicht, warum Sie einen Code zitieren, der in Bezug auf die Informationen sogar der Dokumentation unterlegen ist. Ich danke Ihnen natürlich. Aber das ist überhaupt nicht das, worum ich gebeten habe.

Der Code von Renate ist viel besser, aber es ist nicht dasselbe.

 
Renat Fatkhullin:

Nein, alle zuvor heruntergeladenen Ticks für jeden Handelsserver werden lokal zwischengespeichert und automatisch extrahiert.

Auf der vorherigen Seite finden Sie einen Screenshot der Tick-Dateien.

Danke, ich habe den Ordner "Bases" nicht im Detail studiert.

Wie kann ich in OnTester Copyticks anfordern, um alle Ticks zu erhalten, die bestanden wurden?

 
Anton Zverev:
Wie können wir Copyticks in OnTester abfragen, um alle Ticks zu erhalten, die übergeben wurden?

In der aktuellen Beta-Version (der heutigen Version) rufen Sie CopyTicks auf und erhalten die letzten Zehntausende von Ticks.

Das Prüfgerät verwendet einen Ringpuffer, um Ticks zu speichern, ohne die Möglichkeit, Millionen von Ticks zu erhalten. Es ist kostspielig, alle Ticks zu speichern, daher der Ringpuffer. Vielleicht können wir dieses Verhalten jedoch ändern.

 
Anton Zverev:

Ich verstehe nicht, warum Sie einen Code zitieren, der weniger informativ ist als die Dokumentation. Ich danke Ihnen natürlich. Aber das ist überhaupt nicht meine Frage.

Der Code von Renate ist viel besser, aber keineswegs.

Mein Code dient nur zur Veranschaulichung des Prinzips "um sehr tiefe Ticks zu erhalten, sollten Sie CopyTicks mehrere Male aufrufen, um auf das Paging zu warten". OnTimer ist dafür gut geeignet.
 
Renat Fatkhullin:

In der aktuellen Beta-Version (der heutigen Version) rufen Sie CopyTicks auf und erhalten die letzten Zehntausende von Ticks.

Das Prüfgerät verwendet einen Ringspeicher, um Ticks zu speichern, ohne die Möglichkeit, Millionen von Ticks zu erhalten. Es ist kostspielig, alle Ticks zu speichern, daher der Ringpuffer. Wir können dieses Verhalten jedoch ändern.

Wie kann die Größe des Ringpuffers bestimmt werden, ohne dass bei jedem Tick (sehr aufwändig im Tester) Copyticks abgefragt werden müssen?

Nehmen wir an, der Ringspeicher beträgt 10000. Dann rufe ich alle 10000 Kopiervorgänge auf, um sicherzustellen, dass nichts übersprungen wird. Aber es erscheint ein Problem in Form von Ticks mit einer Zeit (mit Genauigkeit auf msec). Ich habe sie in der Börse. Ich möchte sie nicht zweimal zählen, indem ich Kopien aus dieser Zeit in MS anfordere.

 
Renat Fatkhullin:
Mein Code soll nur das Prinzip "um sehr tiefe Ticks zu erhalten, muss man CopyTicks mehrmals aufrufen, um auf das Paging zu warten" demonstrieren. OnTimer eignet sich gut dafür.

Mir wurde klar, dass sie zu Demonstrationszwecken diente. Aus diesem Grund kam mir OnCopyTicks sofort in den Sinn.

Helfen Sie mir, ich habe Probleme mit dem einen oder dem anderen.

Anton Zverev:

Ich muss eine Funktion schreiben, die Ticks von einem Datum zu einem anderen zurückgeben würde. Bei Erfolg wäre sie wahr, andernfalls wäre sie falsch.

 
Anton Zverev:

Ich verstehe nicht, warum Sie einen Code angeben, der weniger informativ ist als die Dokumentation. Ich danke Ihnen natürlich. Aber das ist überhaupt nicht meine Frage.

Der Code von Renate ist viel besser, aber es ist nicht dasselbe.

Wenn Sie von (altes Datum) zu (junges Datum) gelangen wollen, müssen Sie das so machen:

Abfrage von Ticks (mit einem Rand) ab "altem Datum". Gehen Sie im empfangenen Array vom Index "0" aus und überprüfen Sie das Datum. Sobald Sie das erste Vorkommen (junges Datum) finden, merken Sie es sich (Index junges Datum). Zu diesem Zeitpunkt haben Sie festgestellt, dass das Array der Ticks von Index 0 bis (index young date) die gewünschten Ticks enthält.

 
Es wäre schön, eine Funktion hinzuzufügen, mit der der Status der hochgeladenen/eingespritzten Zecken in der lokalen Terminaldatenbank überprüft werden kann. Etwas wie CheckXXX( Symbol ). Damit Sie nicht ständig den Kopierer betätigen müssen.
 
Karputov Vladimir:

Wenn Sie von (altes Datum) zu (junges Datum) gelangen wollen, gehen Sie wie folgt vor:

Abfrage von Ticks(mit einem Rand) ab "altem Datum". Gehen Sie im empfangenen Array vom Index "0" aus und überprüfen Sie das Datum. Sobald Sie das erste Vorkommen (junges Datum) finden, merken Sie es sich (Index junges Datum). Zu diesem Zeitpunkt haben Sie festgestellt, dass das Array der Ticks von Index 0 bis (index young date) die gewünschten Ticks enthält.

Mit einer Marge ist es eine Verschwendung. Ich mache eine Standardabfrage (2000 Ticks, glaube ich) und fahre mit dem Punkt fort, an dem ich aufgehört habe (es ist leicht, doppelte Ticks zu bekommen).

Ich verstehe nicht, warum es eine solche Funktion nicht von den Entwicklern selbst gibt. Warum sollte man die Copyticks nicht mit einer anderen funktionierenden Option überladen?