Warum korrektes Runden von Stoploss und Takeprofit so wichtig ist | Code4Trading
Code:
extern double Stoploss=0.0;
extern double Takeprofit=0.0;
Code:
//SL / TP Berechnung
double minstoplevel=MarketInfo(Symbol(),MODE_STOPLEVEL);
double openPrice=NormalizeDouble(MarketInfo(Symbol(),MODE_ASK),_Digits);
double buy_SL=NormalizeDouble(openPrice-Stoploss*_Point,_Digits);
double buy_TP=NormalizeDouble(openPrice+Takeprofit*_Point,_Digits);
double sell_SL=NormalizeDouble(openPrice+Stoploss*_Point,_Digits);
double sell_TP=NormalizeDouble(openPrice-Takeprofit*_Point,_Digits);
Wenn ich den Kram nicht eintrage, nutzt er wie gesagt 0 als Berechnungsgrundlage für den TP. Und ich denke auch mal fürn SL, würde der 0 betragen.
Code:
//SL / TP "deaktivieren" wenn sie 0.0 betragen
if(Stoploss==0.0)buy_SL=0.0;
if(Stoploss==0.0)sell_SL=0.0;
if(Trailing_Stop==0.0)buy_TS=0.0;
if(Trailing_Stop==0.0)sell_TS=0.0;
if(Takeprofit==0.0)buy_TP=0.0;
if(Takeprofit==0.0)sell_TP=0.0;
Jedenfalls scheint er so zu funktionieren.
Jedenfalls soll jetzt nen Trailing Stop rein. Und zwar, indem mit OrderModify der SL immer wieder hinterher gezogen wird. Ist im Großen und Ganzen klar, nur weiß ich nicht, wie man das jetzt berechnet.