![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Was ist mit Slippage?
Ja, genau das habe ich gesagt. Ich habe es so gemacht, und es hat funktioniert, aber wenn Sie den ursprünglichen Stop Loss ändern, wird ein neuer Auftrag OHNE dieselbe POSITION_ID erzeugt. Ich weiß nicht, warum. Ich denke, es ist ein Fehler. Mit freundlichen Grüßen,.
Es besteht keine Notwendigkeit, den Schlupfzu berücksichtigen, da der Auftrag bereits geschlossen wurde und der Schlusskurs auf HystoryDealGetDouble(ticket, DEAL_PRICE) steht.
Wenn der Auftrag nicht in der Nähe gewesen, und Sie machen einen Auftrag zu schließen, dann sollten Sie überlegen , wie viel Schlupf, so dass kein Fehler requotes.
Es ist nicht nötig, nach Slippagezu suchen, da die Order geschlossen wurde und der Schlusskurs auf HystoryDealGetDouble(ticket, DEAL_PRICE) steht.
Wenn der Auftrag nicht in der Nähe gewesen, und Sie machen einen Auftrag zu schließen, dann sollten Sie prüfen, wie viel Schlupf, so dass kein Fehler requotes.
Ich bin nicht sicher, ob ich folgen kann.
HistoryOrderGetDouble(ticket,ORDER_SL) ist der Stop Loss
Wenn der SL ausgelöst wird, können Sie Slippage erhalten.
HistoryDealGetDouble(ticket, DEAL_PRICE) zeigt den tatsächlichen Preis an, bei dem es zu einem Slippage gekommen sein kann oder auch nicht.
Wenn es eine Preisdifferenz gab, wird ein einfacher Vergleich von ORDER_SL == DEAL_PRICE fehlschlagen, oder?
Ja, genau das habe ich gemeint. Ich habe es so gemacht, und es hat funktioniert, aber wenn Sie den anfänglichen Stop Loss ändern, wird eine neue Order OHNE dieselbe POSITION_ID erzeugt. Ich weiß nicht, warum. Ich denke, es ist ein Fehler. Mit freundlichen Grüßen,.
Ein Auftrag zur Änderung von SL/TP wird überhaupt nicht in der Historie gespeichert. Ich bin mir also nicht sicher, was Sie hier meinen.
Und der Auftrag, der tatsächlich aus dem ausgelösten SL/TP resultiert, enthält den SL/TP nicht.
<= für Käufe und >= für Verkäufe.
Ich bin nicht sicher, ob ich folgen kann.
HistoryOrderGetDouble(ticket,ORDER_SL) ist der Stop Loss
Wenn der SL ausgelöst wird, können Sie Slippage erhalten.
HistoryDealGetDouble(ticket, DEAL_PRICE) zeigt den tatsächlichen Preis an, bei dem es zu einem Slippage gekommen sein kann oder auch nicht.
Wenn es Slippage gab, wird ein einfacher Vergleich von ORDER_SL == DEAL_PRICE fehlschlagen, oder?
Wenn ich Sie richtig verstehe, ist das nicht exakt. Auf einem realen Markt kann eine Order durch SL (oder TP) zu einem anderen Preis geschlossen werden als der Positions-SL (oder TP).
Ja Alain, was ist, wenn Bid > close_price+spread oder Ask < close_price-spread
spread != Abweichung (Schlupf)
Es ist schade, dass es nicht möglich ist, den Abweichungsparameter abzurufen.
Ein vernünftiger Kompromiss ist wahrscheinlich (vorausgesetzt, der EA hat die Order platziert), zu prüfen, ob DEAL_PRICE innerhalb eines Fensters von ORDER_SL± Abweichung lag
Ja Alain, was wenn Bid > close_price+spread oder Ask < close_price-spread