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
Ich hatte schon Aufträge, die das achthundert erreichten. Im aktiven Handel kommt das bei neuen Aufträgen häufig vor. In einem solchen Fall sollten Sie mehrere hundert Aufträge hashmappen.
Aber das passiert doch nicht alle 15 Minuten, oder?
Ja.
Für diejenigen, die dieses Bündel verwenden.
Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien
Bibliotheken: MT4Orders
fxsaber, 2021.05.12 21:58
Ich empfehle, den Synchronisator zu aktualisieren.
Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien.
Bibliotheken: TradesID
fxsaber, 2021.06.30 15:53
ByPass.mqh ist aktualisiert worden. Es arbeitet korrekt in der Situation des Löschens einer teilweise ausgeführten Order. Logging bei Problemen wurde hinzugefügt.
Bis das Problem behoben ist, empfehle ich, an b2958 zu arbeiten.
Bitte klären Sie einige Punkte im MT4Orders.mqh Code (ab 2021.06.01):
1. Zeile 1413 HistoryDealSelect2():Hier wird der History-Zyklus unterbrochen, wenn der Zeitpunkt des Trades kleiner ist als der Zeitpunkt der Order.
Kommt es in der Praxis nicht vor, dass der Zeitpunkt eines Geschäfts in mqh kleiner ist als der Zeitpunkt der Order, die das Geschäft ausgeführt hat (ich meine nicht Situationen, in denen die Order von mehreren Geschäften gleichzeitig ausgeführt wurde) ?
2. Zeile 2259 MT4OrderSend():
Warum wird die Order beim Netting nicht zu MT4ORDERS::ByPass+= hinzugefügt?
3: In einigen Funktionen verwenden Sie das WHILE(A) Makro: Zeile 1088
Warum prüfen Sie nicht auf IsStopped(), um die Zeit zu optimieren? Was ist, wenn der Benutzer OrderSend_MaxPause auf mehrere Sekunden setzt?
4 Ich habe bemerkt, dass Sie vor OrderSend(LastTradeRequest, LastTradeResult) das LastTradeResult nicht löschen. Wird dies von der Funktion selbst durchgeführt? Ist das eine undokumentierte Funktion?
Bitte klären Sie einige Punkte im MT4Orders.mqh Code (ab 2021.06.01):
1. Zeile 1413 HistoryDealSelect2():Hier wird der History-Zyklus unterbrochen, wenn der Zeitpunkt des Trades kleiner ist als der Zeitpunkt der Order.
Kommt es in der Praxis nicht vor, dass der Zeitpunkt eines Geschäfts in mqh kleiner ist als der Zeitpunkt der Order, die das Geschäft ausgeführt hat (ich meine nicht Situationen, in denen die Order von mehreren Geschäften gleichzeitig ausgeführt wurde) ?
Das ist sehr aus dem Zusammenhang gerissen. Schauen Sie, wo HistoryDealSelect2 aufgerufen wird. Result.deal befindet sich dort, wenn es bei vollständig ausgeführter Result.order null ist. Es gibt ein Zeitlimit für die Speicherung. schleife durchlaufen. Wahrscheinlich an einer großen History-Ausgabe getestet. Ich erinnere mich nicht mehr. Ich selbst benutze den eingebauten Synchronisierer in OrderSend nicht, weil ich die Null MT4ORDERS::OrderSend_MaxPause nehme .
2. Zeile 2259 MT4OrderSend():
Warum wird die Order nicht zu MT4ORDERS::ByPass+= hinzugefügt?
3. in einigen Funktionen verwenden Sie das Makro WHILE(A) : Zeile 1088
Warum prüfen Sie nicht auf IsStopped(), um die Zeit zu optimieren? Was ist, wenn der Benutzer OrderSend_MaxPause auf mehrere Sekunden einstellt?
In der Praxis sehe ich hier kein Problem. Ich habe es definitiv nicht aus Vergesslichkeit hinzugefügt.
Mir ist aufgefallen, dass Sie vor OrderSend(LastTradeRequest, LastTradeResult) das LastTradeResult nicht löschen. Wird dies von der Funktion selbst durchgeführt? Wie eine undokumentierte Funktion?
Es scheint, dass alle MqlTradeResult-Felder von OrderSend gefüllt werden, so dass ich mir die Reinigung spare.
Ich danke Ihnen!
Die Bibliothek ist großartig.
Ich habe ByPass nicht für Netze entwickelt. Ich schreibe es für mich selbst.