[WARNUNG GESCHLOSSEN!] Alle Fragen von Neulingen, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen. - Seite 580
Die Differenz zwischen dem besten Kauf- (Geldkurs) und Verkaufskurs (Briefkurs) zum gleichen Zeitpunkt, d. h. Angebot und Nachfrage. Wenn Sie einen Forex-Kauf tätigen, kaufen Sie zum Geldkurs, und wenn Sie die Order schließen, verkaufen Sie zum Briefkurs. Die Differenz zwischen dem Geld- und dem Briefkurs entspricht dem Spread, der in der Regel zwischen 2 und 6 Pips für verschiedene Währungen und bei verschiedenen Maklerunternehmen liegt.
Nicht ganz korrekt geänderte Aufträge. Es stellt sich heraus, dass das Stop-Loss-Niveau dem Kurs folgt, unabhängig von der Kursbewegung.
Nehmen wir an, wir eröffnen einen Kaufauftrag. Der Kurs steigt, der Trailing-Stop wird ausgelöst und der Stop-Loss wird nach oben gezogen. Dann bewegt sich der Kurs in die entgegengesetzte Richtung und der Auftrag wird nicht geschlossen,
Der Auftrag wird nicht geschlossen, sondern geändert und das Stop-Loss-Niveau wird gesenkt. Im Ergebnis wird das Geschäft unrentabel, obwohl es in die richtige Richtung eröffnet wurde.
total=OrdersTotal();
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()<=OP_SELL && // check for opened position
OrderSymbol()==Symbol()) // check for symbol
{
if(OrderType()==OP_BUY) // long position is opened
{
// check for trailing stopif(TrailingStop>0)
{
if( Bid-OrderOpenPrice()>Point*TrailingStop )
{
if(OrderStopLoss()<Bid-Point*TrailingStop)
{
OrderModify(OrderTicket(),OrderOpenPrice(), Bid-StopLoss,Bid + TakeProfit/*OrderTakeProfit()*/,0,Green);
return(0);
}
}
}
}
else// go to short position
{
// check for trailing stopif(TrailingStop>0 )
{
if((OrderOpenPrice()-Ask)>(Point*TrailingStop))
{
if((OrderStopLoss()>(Ask+Point*TrailingStop)) )
{
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+StopLoss,Ask-TakeProfit/*OrderTakeProfit()*/,0,Red);
return(0);
}
}
}
}
}
Ich nahm an, dass dies durch die Prüfung if( Bid-OrderOpenPrice()>Point*TrailingStop) verhindert wird, aber das scheint falsch zu sein. Was raten Sie?
Доброго времени суток. Проблема с Trailing Stop'ом.
Не совсем корректно модифицируются ордера. Получается так,что уровень Stop Loss следует за ценой независимо от движения цены.
Допустим открывается ордер на покупку. Цена растет,срабатывает trailing stop и стоп лосс подтягивается. Потом цена пошла в обратном направлении,ордер не закрывается,
ордер не закрывается, а модифицируется и понидается уровень stop loss'a. В итоге сделка становится убыточной, хотя открылась она в правильном направлении.
Предполагал, что от этого предохраняет проверка if( Bid-OrderOpenPrice()>Point*TrailingStop ), но видимо это не так. Что посоветуете?
Sehen Sie sich an, wie das in der vorgefertigten Bibliothek mit verschiedenen Nachlauffunktionen gemacht wird. Sie können daraus lernen, oder Sie können es sofort nutzen... Der Autor möge mir verzeihen. Obwohl sie öffentlich zugänglich sind... :)
Wie können Sie feststellen, ob der Kurs ein bestimmtes Niveau nach oben oder nach unten überschritten hat, um dann zu öffnen, wenn dies geschehen ist? Ich verwende den Preis und nicht die Indikatoren. Vielen Dank für Ihr Feedback...
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.
А я в форексе не силён.....как учитывается спред?
Die Differenz zwischen dem besten Kauf- (Geldkurs) und Verkaufskurs (Briefkurs) zum gleichen Zeitpunkt, d. h. Angebot und Nachfrage. Wenn Sie einen Forex-Kauf tätigen, kaufen Sie zum Geldkurs, und wenn Sie die Order schließen, verkaufen Sie zum Briefkurs. Die Differenz zwischen dem Geld- und dem Briefkurs entspricht dem Spread, der in der Regel zwischen 2 und 6 Pips für verschiedene Währungen und bei verschiedenen Maklerunternehmen liegt.
Ich denke, das ist im Code berücksichtigt, in OrderSend ist das Bid mit dem Ask vorgeschrieben:
А я в форексе не силён.
Futures sind keine Devisen.
Wie wird die Spanne berücksichtigt?
Sie wird in der Regel abgezogen.
Фьючерсы -- это не Форекс.
OK Kumpels - Hilfe. Hier ist die Spezifikation des Vertrags:
Was/wie muss ich beachten?
Die Kosten der Zecke und die Größe der Zecke - darin liegt das Problem.
Ich meine, was Sie bekommen, ist: Ein "Pip" sind fünf Ticks. Fünf Ticks (ein "Pip" im Devisenhandel) kosten, grob gesagt, 3 Rubel.
Das heißt, die Diskretisierung (richtig?) ist nicht 1:1, sondern 1:5 für eine minimale Änderung des Wertes.
Im Allgemeinen ist es besser, auf die älteren Kameraden zu warten.
Guten Tag. Problem mit Trailing Stop.
Nicht ganz korrekt geänderte Aufträge. Es stellt sich heraus, dass das Stop-Loss-Niveau dem Kurs folgt, unabhängig von der Kursbewegung.
Nehmen wir an, wir eröffnen einen Kaufauftrag. Der Kurs steigt, der Trailing-Stop wird ausgelöst und der Stop-Loss wird nach oben gezogen. Dann bewegt sich der Kurs in die entgegengesetzte Richtung und der Auftrag wird nicht geschlossen,
Der Auftrag wird nicht geschlossen, sondern geändert und das Stop-Loss-Niveau wird gesenkt. Im Ergebnis wird das Geschäft unrentabel, obwohl es in die richtige Richtung eröffnet wurde.
Ich nahm an, dass dies durch die Prüfung if( Bid-OrderOpenPrice()>Point*TrailingStop) verhindert wird, aber das scheint falsch zu sein. Was raten Sie?
Доброго времени суток. Проблема с Trailing Stop'ом.
Не совсем корректно модифицируются ордера. Получается так,что уровень Stop Loss следует за ценой независимо от движения цены.
Допустим открывается ордер на покупку. Цена растет,срабатывает trailing stop и стоп лосс подтягивается. Потом цена пошла в обратном направлении,ордер не закрывается,
ордер не закрывается, а модифицируется и понидается уровень stop loss'a. В итоге сделка становится убыточной, хотя открылась она в правильном направлении.
Предполагал, что от этого предохраняет проверка if( Bid-OrderOpenPrice()>Point*TrailingStop ), но видимо это не так. Что посоветуете?