،،،اذا اردت ان تعمل الوظيفة فى حالة الارتداد فقط فيجب ان تقوم باستدعائها فقط فى حالة الارتداد ، بمعنى انت لديك صفقات بيع تقوم بوضع جملة شرطية اذا كان عدد صفقات البيع اكبر من 1 او 2 وصفقات الشراء اكبر من 0 فهذا معناه ان الارتداد حدث وتم فتح صفقة شراء فتقوم باستدعاء الوظيفة وشرط اخر اذا كان عدد صفقات الشراء اكبر من 2 مثلا وعدد صفقات البيع اكبر من 0 فهذا معناه ان الارتداد حدث وتم فتح صفقة بيع تقوم باستدعائها مرة اخرى،،،
كود:
if(orderscnt(OP_BUY)>=2 && orderscnt(OP_SELL)>0){CloseMaxProfit();}
if(orderscnt(OP_SELL)>=2 && orderscnt(OP_BUY)>0){CloseMaxProfit();}
،،،وهذه وظيفة عدد الصفقات حسب النوع،،،
كود:
int orderscnt(int type){
int cnt=0;
for(int i =0;i<OrdersTotal();i++){
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
if(OrderSymbol()==Symbol() && MagicNumber==OrderMagicNumber()&& OrderType()==type){
cnt++;
}
}
}
return(cnt);
}