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;
}
}