how to close just a part of lot (code mql4)
you can change it in "volume" section..
int TriesCount = 5; int _Pause = 500; bool CloseOrder(int TradeTicket, double lot=0, int slippage=5) { if(!OrderSelect(TradeTicket,SELECT_BY_TICKET,MODE_TRADES)) return(false); bool result=false; int cnt; if(OrderType()==OP_BUY) { for(cnt=0; cnt<TriesCount; cnt++) { RefreshRates(); if(lot==0) result = OrderClose(OrderTicket(),OrderLots(),nd(MarketInfo(OrderSymbol(),MODE_BID),OrderSymbol()),slippage,Violet); else result = OrderClose(OrderTicket(),lot,nd(MarketInfo(OrderSymbol(),MODE_BID),OrderSymbol()),slippage,Violet); if(result) break; else { Sleep(_Pause); } } } if(OrderType()==OP_SELL) { for(cnt=0; cnt<TriesCount; cnt++) { RefreshRates(); if(lot==0) result = OrderClose(OrderTicket(),OrderLots(),nd(MarketInfo(OrderSymbol(),MODE_ASK),OrderSymbol()),slippage,Violet); else result = OrderClose(OrderTicket(),lot,nd(MarketInfo(OrderSymbol(),MODE_ASK),OrderSymbol()),slippage,Violet); if(result) break; else { Sleep(_Pause); } } } if(OrderType()>OP_SELL) { for(cnt=0; cnt<TriesCount; cnt++) { result = OrderDelete(OrderTicket(),Violet); if(result) break; else Sleep(_Pause); } } return(result); } //To Close Half of the Order Lots use: CloseOrder(Ticket,OrderLots()*0.5);
biantoro kunarto:
Please use this script
Thank you, my friend really liked it because it is simple
Ahmed Soliman:
Thank you, my friend :D
example
open buy 0.10 lots
and i want to close just 0.05lots