แก้ง่ายนิดเดียวครับ
while(OrdersTotal() >0 )
{
for(i=0;i<=OrdersTotal();i++){
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true)
if(OrderSymbol()==Symbol() && OrderMagicNumber()==MAGICMA){
if(OrderType()==OP_BUY){
OrderClose(OrderTicket(),OrderLots(),Bid,3,0,Lime);
}
if(OrderType()==OP_SELL){
OrderClose(OrderTicket(),OrderLots(),Ask,3,0,Red);
}
}
}
Sleep(2000); // ใส่ให้มันรอการประมวลผลจาก โบรเกอร์สักนิดหนึ่งเพราะที่สั้งไปแล้วอาจกำลังปิดอยู่ จากนั่น มันจะวน loop while จนกว่า จะไม่มี Order เหลือถึงจบการทำงาน
}