Einzelnen Beitrag anzeigen
  #4 (permalink)  
Alt 02.06.18
MA-EA MA-EA ist offline
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 1.178
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Sorry, musste was ergänzen. Mach schließlich nicht jeden Tag nen automatischen Takeprofit.

Vergesst die beiden Vers. vor diesem Post. Leider kann ich die nicht mehr entfernen...

Meine größte Sorge ist der Trailing Stop. Weiß nicht, ob das so funktioniert:
Code:
extern bool Trailing_Stop=true;
extern int Trailing_Stop_Step=5;
Code:
//SL TP Deklarationen und Berechnungen
//ASK & BID
double M_CA=NormalizeDouble(MarketInfo(Symbol(),MODE_ASK),_Digits);//Mode Current ASK
double M_CB=NormalizeDouble(MarketInfo(Symbol(),MODE_BID),_Digits);//Mode Current BID
//-------------------------------------------------------------------------------------------------------------
//Normaler SL
if(Stoploss>0)double B_SL=NormalizeDouble(M_CA-Stoploss*_Point,_Digits);//einfacher Buy SL, der bei Open Buy gesendet werden soll.
if(Stoploss>0)double S_SL=NormalizeDouble(M_CB+Stoploss*_Point,_Digits);//einfacher Sell SL, der bei Open Sell gesendet werden soll.
//Normaler TP
if(Takeprofit>0)double B_TP=NormalizeDouble(M_CA+Takeprofit*_Point,_Digits);//einfacher Buy TP, der bei Open Buy gesendet werden soll.
if(Takeprofit>0)double S_TP=NormalizeDouble(M_CB-Takeprofit*_Point,_Digits);//einfacher Sell TP, der bei Open Buy gesendet werden soll.
Code:
if(Trailing_Stop=true&&Stoploss>0){
  
  double M_CA_SL_TSS=NormalizeDouble(M_CA-Stoploss-Trailing_Stop_Step*_Point,_Digits);//M_CA = Mode Current Ask
  double M_CB_SL_TSS=NormalizeDouble(M_CB+Stoploss+Trailing_Stop_Step*_Point,_Digits);//M_CB = Mode Current Bid


//Trailing Stop Bedingungen für neuen TS
// ?
  if(B_SL<M_CA_SL_TSS)double B_TS=NormalizeDouble(M_CA-Stoploss*_Point,_Digits);
  if(S_SL>M_CB_SL_TSS)double S_TS=NormalizeDouble(M_CB+Stoploss*_Point,_Digits);
// ?

 }
Code:
//Modify Orders (Trailing Stop nach ziehen)
if(Trailing_Stop==true&&Stoploss>0){// ganz oben Bedingungen für OrderModify eintragen müsste reichen...
for(i=OrdersTotal()-1;i>=0;i--){
if(OrderSelect(i,SELECT_BY_POS)){

if(OrderType()==OP_BUY&&OrderMagicNumber()==Buy_MagicNumber&&OrderSymbol()==Symbol()){//modify Buy
if(B_SL<M_CA_SL_TSS)OrderModify(OrderTicket(),price,B_TS,OrderTakeProfit(),0,Blue);}// ?

if(OrderType()==OP_SELL&&OrderMagicNumber()==Sell_MagicNumber&&OrderSymbol()==Symbol()){//modify Sell
if(S_SL>M_CB_SL_TSS)OrderModify(OrderTicket(),price,S_TS,OrderTakeProfit(),0,Red);}}}}// ?
Angehängte Dateien
Dateityp: mq4 Valerius_MT4_SL_TS_AutoTP_LoSh_EA.mq4 (18,3 KB, 5x aufgerufen)