// Liste ändern:// 04.05.2021// Fix: MT5-Ordereröffnungen, die nicht verschwinden, werden nicht mehr als MT4-Order aufgeführt.// Fix: MT5-Aufträge vom Typ CloseBy werden nicht mehr als MT4-Aufträge aufgeführt.
Eine weitere MT5-Funktion (ein vollständig ausgeführter Auftrag und die durch ihn erzeugte Position können zusammen existieren) wird durch die Bibliothek umgangen.
Wieder einmal musste ich in die wilden Gefilde des MT5 eintauchen, um eine Lösung zu finden. Das Update ist in der Tat ein wichtiges. Auch wenn es nicht offensichtlich ist.
Gemeldet an https://www.mql5.com/ru/forum/1111/page3003#comment_21981258, aber es sieht so aus, als ob es immer noch da ist. Aber es betrifft nur die Anzeige. Wenn Sie auf eine Datei klicken und sie herunterladen, ist alles in Ordnung.
Gemeldet an https://www.mql5.com/ru/forum/1111/page3003#comment_21981258, aber es sieht so aus, als ob es immer noch da ist. Aber es betrifft nur die Anzeige. Wenn Sie auf eine Datei klicken und sie herunterladen, ist alles normal.
Vielen Dank für den Hinweis! Ja, so wird es gut angezeigt.
// Liste ändern:// 12.05.2021// Hinzufügen: Das Makro MT4ORDERS_BYPASS_MAXTIME behebt die ständig auftretenden Fehlsynchronisationen in der Handelsumgebung von MT5.
Bahnbrechendes Bibliotheks-Update! Die einzige Bibliothek der Welt, die in der Lage ist, die ständigen Fehlsynchronisationen der MT5-Handelsumgebung auszugleichen. Bescheiden, aber wahr.
Sie müssen nur ein entsprechendes Makro schreiben. Hier ist ein Beispiel.
// Demonstration der ENTSCHEIDUNG zur Eröffnung einer Doppelposition im MT5.// https://www.mql5.com/ru/forum/368178/page13#comment_22171524#define MT4ORDERS_BYPASS_MAXTIME 1000000// Maximale Wartezeit (in µs) für die Synchronisierung der Handelsumgebung#include <MT4Orders.mqh> // https://www.mql5.com/de/code/16006#define Ask SymbolInfoDouble(_Symbol, SYMBOL_ASK)
#define MinLot SymbolInfoDouble(_Symbol, SYMBOL_VOLUME_MIN)
voidOnStart()
{
MT4ORDERS::OrderSend_MaxPause = 0; // Ablehnung der eingebauten MT5-OrderSend-Ergebniskorrektur.while (!IsStopped() && OrdersTotal() <= 1)
if (!OrdersTotal())
OrderSend(_Symbol, OP_BUY, MinLot, Ask, 0, 0, 0);
elseif (OrderSelect(0, SELECT_BY_POS))
OrderClose(OrderTicket(), OrderLots(), OrderClosePrice(), 0);
Print(MT4ORDERS::ByPass.ToString()); // Drucken Sie die Synchronisationsstatistiken.
}
Dieses Skript öffnet und schließt Positionen abwechselnd. Es stoppt nur im Falle einer Positionsumkehr(ein häufiges MT5-Problem) - Bibliotheksfehler. Wenn jemand auf ein solches Problem stößt, lassen Sie mich bitte wissen.
Für mich ist dieses Bibliotheksupdate ein Muss. Empfohlen.
ZY Der Synchronisationsmechanismus ist sehr schnell.
Der Mechanismus wurde 247 Mal (9915 µs.) aufgerufen, wovon 126(983 µs. ) unsynchronisiert waren. Die durchschnittliche Zeit des Mechanismus beträgt 40 µs. Das Maximum liegt bei 2483 µs.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Erlauben Sie die Verwendung von Cookies, um sich auf der Website MQL5.com anzumelden.
Bitte aktivieren Sie die notwendige Einstellung in Ihrem Browser, da Sie sich sonst nicht einloggen können.
Sie sind angemeldet. Die Zwei-Faktor-Authentifizierung wurde deaktiviert. Richten Sie sie erneut ein und scannen Sie einen neuen QR-Code oder fahren Sie mit deaktivierter Zwei-Faktor-Authentifizierung fort.
Eine weitere MT5-Funktion (ein vollständig ausgeführter Auftrag und die durch ihn erzeugte Position können zusammen existieren) wird durch die Bibliothek umgangen.
Wieder einmal musste ich in die wilden Gefilde des MT5 eintauchen, um eine Lösung zu finden. Das Update ist in der Tat ein wichtiges. Auch wenn es nicht offensichtlich ist.
ZЫ Ich versuche, eine Drittanbieterlösung für eine andere sehr unangenehme Funktion von MT5 zu finden.
Warum so traurig?
Wenn Sie die Datei von der KB herunterladen, sollte es in Ordnung sein.
Warum so traurig?
Gemeldet an https://www.mql5.com/ru/forum/1111/page3003#comment_21981258, aber es sieht so aus, als ob es immer noch da ist. Aber es betrifft nur die Anzeige. Wenn Sie auf eine Datei klicken und sie herunterladen, ist alles in Ordnung.
Gemeldet an https://www.mql5.com/ru/forum/1111/page3003#comment_21981258, aber es sieht so aus, als ob es immer noch da ist. Aber es betrifft nur die Anzeige. Wenn Sie auf eine Datei klicken und sie herunterladen, ist alles normal.
Vielen Dank für den Hinweis! Ja, so wird es gut angezeigt.
Dies ist eine interessante Besonderheit des MT4-Stils, deshalb schreibe ich hier und nicht im Profil-Thread.
Auf den ersten Blick sollten diese beiden Codes das gleiche Ergebnis liefern.
Tatsächlich ist das aber nicht so. Versuchen Sie, den Grund zu erkennen.
Bahnbrechendes Bibliotheks-Update! Die einzige Bibliothek der Welt, die in der Lage ist, die ständigen Fehlsynchronisationen der MT5-Handelsumgebung auszugleichen. Bescheiden, aber wahr.
Sie müssen nur ein entsprechendes Makro schreiben. Hier ist ein Beispiel.
Dieses Skript öffnet und schließt Positionen abwechselnd. Es stoppt nur im Falle einer Positionsumkehr(ein häufiges MT5-Problem) - Bibliotheksfehler. Wenn jemand auf ein solches Problem stößt, lassen Sie mich bitte wissen.
Für mich ist dieses Bibliotheksupdate ein Muss. Empfohlen.
ZY Der Synchronisationsmechanismus ist sehr schnell.
Der Mechanismus wurde 247 Mal (9915 µs.) aufgerufen, wovon 126(983 µs. ) unsynchronisiert waren. Die durchschnittliche Zeit des Mechanismus beträgt 40 µs. Das Maximum liegt bei 2483 µs.Fehler gefunden:
Die Funktion OrderOpenReason() gibt (ENUM_DEAL_REASON)DEAL_REASON_TP für Aufträge zurück, die mit Gewinnmitnahme geschlossen wurden.
Vielen Dank für das Update!
Was passiert, wenn diese Sekunde verstrichen ist? Funktioniert es auch ohne Synchronisierung weiter?
Muss dies bei Kampfrobotern vorgeschrieben werden?
Was geschieht nach Ablauf dieser Sekunde? Wird der Vorgang fortgesetzt, wenn keine Synchronisierung stattfindet?
Oder reicht es aus, MT4ORDERS::ByPass.Is() vor den Handelsoperationen zu prüfen (um sicherzustellen, dass keine Unsynchronisierung vorliegt)?