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
Prüfen.
Ergebnis.
1.62 mcs/unit.Bei einer großen Anzahl von MT5-Trades/Orders im ByPass-Modus (ich verwende sie z.B. im CustomReport) kann der erste Zugriff auf die Historie sehr lange dauern.
14 Sekunden!
Es stellte sich heraus, dass die Bremsen von der ArrayCopy Funktion kommen.
Eine solche Bearbeitung in Include\fxsaber\TradesID\ByPass.mqh
erhöht die Leistung um das 4,5-fache - ~3 Sekunden.
Ein klares Beispiel dafür, dass häufiges Arbeiten mit Arrays mit Bedacht geschehen sollte. In diesem Fall erlaubt static, dass man nicht jedes Mal Speicher für ein Array in ArrayCopy zuweisen muss. Und wir erhalten eine mehrfache Leistungssteigerung in einer realen Aufgabe, die mit dem bloßen Auge zu spüren ist.
Bei einer großen Anzahl von MT5-Trades/Orders im ByPass-Modus (die ich z.B. im CustomReport verwende), kann der erste Zugriff auf die Historie sehr lange dauern.
Hallo Autor, bei der Verwendung der Funktion OrderSendAsync habe ich festgestellt, dass MT4ORDERS::LastTradeResult.retcode gleich TRADE_RETCODE_DONE ist. In Ihrem Code wird jedoch geprüft, ob MT4ORDERS::LastTradeResult.retcode == TRADE_RETCODE_PLACED. Könnte dies ein Fehler sein, oder habe ich es falsch verstanden?
bei der Verwendung der Funktion OrderSendAsync habe ich festgestellt, dass MT4ORDERS::LastTradeResult.retcode gleich TRADE_RETCODE_DONE ist
Server-Name?
Ich habe vergessen zu erwähnen, dass ich den MT5-Tester verwende. Es sollte nichts mit dem Server zu tun haben, richtig?
Ich habe vergessen zu erwähnen, dass ich den MT5-Tester verwende. Es sollte nichts mit dem Server zu tun haben, richtig?
Im Tester ist bei der ersten erfolgreichen Ausführung von MT5-OrderSend/OrderSendAsync, MqlTradeResult.request_id == 0.
Ich halte dieses Verhalten für ein Versehen von MQ, da die request_id mit 1 beginnen sollte.
Dies ist einer der Gründe, warum MT4Orders OrderSendAsync für Tester nicht implementiert. Es gibt einen weiteren, weniger guten Grund(aus dem Buch).