Einzelnen Beitrag anzeigen
  #1 (permalink)  
Alt 29.03.21
Max2018 Max2018 ist offline
Mitglied
 
Registriert seit: Sep 2018
Beiträge: 238
Max2018 befindet sich auf einem aufstrebenden Ast
Standard Teilschließung einer Position

Hi,
ich habe ein Problem mit der Teilschließung einer Position. In MQL4 sah das so aus:
Code:
if(Bid>=KursTakeProfitEINS)
   for(int i=0;i<OrdersTotal();i++)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break;
      if(OrderMagicNumber()!=MagicNo || OrderSymbol()!=Symbol()) continue; 
      if(OrderType()==OP_BUY&&OrderLots()==Lots)
      {
     
      bool oc=OrderClose(OrderTicket(),TeilVerkaufEuro,OrderClosePrice(),5,clrAliceBlue);
      return;
      } 
      }
Aber wie mache ich das in MQL5 ... da habe ich das so, nur da schließt er dann die gesamte Position:

Code:
if(SymbolInfoDouble(NULL,SYMBOL_BID)>=KursTakeProfitEINS_m)
   for(int i=0;i<PositionsTotal();i++)
     {
      if(PositionGetTicket(i) ==0)break;
      if(PositionGetInteger(POSITION_MAGIC)!=MagicNo || PositionGetString(POSITION_SYMBOL)!=Symbol()) continue;
       
      if((int)PositionGetInteger(POSITION_TYPE)== 0 && PositionGetDouble(POSITION_VOLUME)==Lots_m)
      {
     
      trade.PositionClose(PositionGetInteger(POSITION_TICKET),-1);
      return;
      } 
      }