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
Auf einem realen Konto an der Börse und realen Handel, Broker Otkritie, auch für 10 Sekunden warten nicht helfen, immer noch Pop-up-Warnungen, dass es unsynchronisiert mit der Geschichte. Und sie tauchen ziemlich oft auf. Was meiner Meinung nach ziemlich seltsam ist, in den anderen speziellen Lags sind nicht gesehen, ping 4 ms, um die Ausführung ist in der Regel weniger als 15 ms. Ich fange sogar an zu zweifeln, ob da alles korrekt ist, vielleicht hängt es mit dem Netting zusammen? Obwohl ich INOUT nicht benutze, alle IN und OUT getrennt. Gibt es irgendwelche Pläne, diesen Fall zu umgehen? Zum Beispiel, um die Karten selbst auswendig zu lernen. Und wie viel Priorität wird der Lösung dieses Problems eingeräumt?
Bitte posten Sie beide Logs.
Hallo fxsaber,
die besten Wünsche für 2020!
Ist es eine Design-Entscheidung, keine magische Zahl in die Handelsanforderung für die MT4OrderClose-Funktion aufzunehmen?
Derzeit hat DEAL_ENTRY_OUT von MT4OrderClose magic == 0.
Dies macht keinen großen Unterschied, da Sie mit der Positions-ID die magische Zahl von DEAL_ENTRY_IN nachverfolgen können, aber für die Analyse der Historie würde eine Übereinstimmung von DEAL_ENTRY_IN / DEAL_ENTRY_OUT wahrscheinlich mehr Flexibilität bieten.
Hi fxsaber,
Beste Wünsche für 2020!
Ist es eine Design-Entscheidung, die magische Zahl nicht in die Handelsanforderung für die MT4OrderClose-Funktion aufzunehmen?
Derzeit hat DEAL_ENTRY_OUT bei MT4OrderClose den Wert magic == 0.
Es ist keine große Sache, weil es mit der Positions-ID möglich ist, die magische Zahl von DEAL_ENTRY_IN zurückzuverfolgen, aber für die Analyse der Historie bietet die Übereinstimmung von DEAL_ENTRY_IN/DEAL_ENTRY_OUT vielleicht mehr Flexibilität.
Ist es eine Designentscheidung, die magische Zahl nicht in die Handelsanforderung für die Funktion MT4OrderClose aufzunehmen?
Derzeit hat DEAL_ENTRY_OUT von MT4OrderClose magic == 0.
Dies macht keinen großen Unterschied, da Sie mit der Positions-ID die magische Zahl von DEAL_ENTRY_IN verfolgen können, aber für die Analyse der Historie würde eine Übereinstimmung von DEAL_ENTRY_IN / DEAL_ENTRY_OUT wahrscheinlich mehr Flexibilität bieten.
In OrderClose können Sie die MagicNumber einstellen, wenn Sie dies wünschen.
Im MT5 können Sie bei der teilweisen Schließung einer Position die MagicNumber der offenen Position ändern, so dass Sie eine Auswahlmöglichkeit haben.
Wenn Sie zum Beispiel eine offene Position mit MagicNumber = 5 haben und die Position manuell schließen, dann ist DEAL_ENTRY_OUT_MAGIC = 0. Die Bibliothek gibt trotzdem OrderMagicNumber() = 5 zurück.
Ich weiß nicht, ob es ein Fehler oder eine Funktion ist, aber bei Futures werden der Gewinn und der Eröffnungskurs nicht genau wie erwartet berechnet. Nehmen wir an, eine Position wird um 12.00 Uhr eröffnet, um 18.40 Uhr wird die Position gelöscht und automatisch wieder eröffnet, und um 20.00 Uhr wird die Position geschlossen. GetHistoryPositionData für das Ticket des vierten Trades (Ausstieg aus der Position) wählt den Gewinn als MT4ORDERS::Order.Profit = ::HistoryDealGetDouble(Ticket, DEAL_PROFIT); was im Wesentlichen die Differenz zwischen den Trades 3-4 (Clearing und Ausstieg) zurückgibt. Aber es wird den Eröffnungskurs zurückgeben als MT4ORDERS::Order.OpenPrice = ::HistoryDealGetDouble(OpenTicket, DEAL_PRICE);. D.h. es wird der Eröffnungspreis des 1. Trades zurückgegeben. Meiner Meinung nach wäre es sinnvoll, es einheitlich zu machen und entweder alles vom ersten Handel zu nehmen (sowohl Eröffnungskurs als auch Gewinn) oder alles von der letzten Eröffnung (vom 3. Handel bis zum Clearing) zu nehmen. Oder ist dies eine Funktion, und es sollte so sein, und ich übersehe etwas?
Sie analysieren also die Historie von Netting über die Bibliothek. Dies ist genau der Fall, der anfangs geäußert wurde und für den die Bibliothek noch nicht fertiggestellt wurde. Und ob sie es wird, ist eine große Frage. Denn es wird viel getüftelt, und in der Praxis ist das nicht nötig.
Bei Netting verwende ich immer noch die gleiche Bibliothek, aber ich umgehe die Arbeit mit der Geschichte.
https://www.mql5.com/ru/blogs/post/733393
Messung der Geschwindigkeit in einer Situation aus einem Blogeintrag.
Das Ergebnis.
Sie können deutlich sehen, wie viel die HistorySelect-Funktionen kosten.
OrdersHistoryTotal auf heiß, obwohl es weniger ist, aber es ist immer noch spürbar, so war es immer empfohlen, um zu versuchen, nicht zu rufen es mehr als einmal pro On-Ereignis.
OrderSelect nach Historie erwies sich als kostenlos.
Sie können Statistiken über die für die Ausführung von Marktaufträgen (einschließlich TP/SL) aufgewendete Zeit erstellen.
Ergebnis.
Bis zu zwei Minuten für die Ausführung auf einem laufenden Konto. Teilen Sie Ihre Statistiken hier. Das Skript verwendet keine Bibliotheken, es ist für Netting/Hedge geeignet.
In MT4/5 ist die Fehlersuche bei der Arbeit mit der Handelshistorie eher unangenehm. Man muss auf verschiedene Krückenlösungen zurückgreifen.
In MT5 können Sie sofort alle Felder der über MT4Orders ausgewählten Order sehen. Dazu müssen Sie MT4ORDERS::Order zur MT4ORDERS::Order Beobachtung hinzufügen.
Auf diese Weise können Sie alle Eigenschaften der ausgewählten Order sehen.
Teilen Sie Ihre Statistiken hier. Das Skript verwendet keine Bibliotheken, geeignet für Netting/Hedge.
Dies ist, wie die reale ist: