
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Dies ist Terminal 1060 und der Server ist immer noch 1035.
Guten Tag, Renat!
Beim Entwurf eines "Notfall"-Auftragsverfolgungsmodus (für den Fall, dass das OnTradeTransaction-Ereignis nicht eintritt),
Ich habe festgestellt, dass ein MARKT-Auftrag in der Historie in mehr als 3 SEKUNDEN erscheint:
Der EA-Code, der dieses Protokoll erzeugt hat, ist beigefügt.
Zunächst betrug die Wartezeit 1000 ms, dann 2000, 3000 und schließlich 4000 ms.
Für jeden Zeitraum wurden 2 Befehle gesendet(Position öffnen - schließen)
Ist das nicht zu lang für eine MARKET-Bestellung?
P/S Demo Eröffnung (Terminal Build 1060)
Ich habe den Code noch nicht ausgeführt, aber in der Quelle wird der klassische Fehler eines falschen Enddatums in HistorySelect angezeigt.
Jeder erste Programmierer ruft diese Funktion mit dem falschen Datum auf, beißt immer wieder in das Ende der Geschichte und findet "long transaction in history".
Dies ist wahrscheinlich die Funktion, denn "jeder Erste" macht einen "klassischen Fehler".
In dieser Datei wird versucht, den Verlauf von einem bestimmten Datum bis zum jetzigen Zeitpunkt zu lesen. Können Sie mir sagen, wie ich das richtig mache, damit ich nicht "am Ende der Geschichte knabbere"?
Der Fehler besteht darin, dass die Leute nicht an die aktuelle Uhrzeit denken und das falsche Datum aus der falschen Quelle eingeben.
Es reicht aus, ein bekanntes, weit entferntes Datum als Enddatum anzugeben und nicht die veraltete serverTime.
Der Fehler besteht darin, dass die Leute nicht an die aktuelle Uhrzeit denken und das falsche Datum aus der falschen Quelle eingeben.
Es reicht aus, das bekannte, weit entfernte Datum als Enddatum anzugeben und nicht die veraltete serverTime.
Vielleicht kann die Hilfe mit dem Beispiel darin dann auch korrigiert werden?
https://www.mql5.com/ru/docs/trading/historyselect
Renat, haben Sie schon mit OnTradeTransaction() gearbeitet?
Nein, leider, sehr beschäftigt.
Bitte probieren Sie es selbst auf unserem MetaQuotes-Demo-Server aus.
Aus dem Satz von Renat
Es reicht aus, als Enddatum ein bekanntes, weit entferntes Datum anzugeben und nicht die veraltete serverTime.
Ich habe es so verstanden, dass Sie das morgige Datum (oder ein noch weiter entferntes Datum) als Enddatum angeben sollten, und Sie werden zufrieden sein.
Der Fehler besteht darin, dass die Leute nicht an die aktuelle Uhrzeit denken und das falsche Datum aus der falschen Quelle eingeben.
Es reicht aus, ein bekanntes, weit entferntes Datum als Enddatum anzugeben und nicht die veraltete serverTime.
Und als Startdatum ist auch der "veraltete"TimeTradeServer() geeignet?
Die Anfangs- und Enddaten müssen in Kenntnis der Fehler und mit einem obligatorischen Spielraum festgelegt werden. Das sind mindestens minus N Sekunden und plus N Sekunden.
TimeTradeServer() ist keine exakte Echtzeit, sondern wird ausschließlich durch die in der Marktübersicht eingehenden Preis-Ticks aktualisiert.
Wenn Sie plötzlich keine Daten in der Verlaufsstichprobe haben, dann liegen 99 % der Fehler in den Abfragegrenzen.