السلام عليكم ورحمة الله وبركاته
اخى الفاضل صممت اكسيبرت يفتح صفقات بيع وشراء ويغلق الشراء على ربح وايضا يغلق على الربح الاجمالى لو شغلته على عمله واحده يعمل بطريقة سليمه وعند تشغيله على اكثر من عمله يحدث خطا فى اغلاق الصفقات هذه هى الشرورط
if(USD!=0&&ChartProfit()>=USD){CA();}//اغلاق كل الصفقات على ربح
if(USD2!=0&&BuyProfit()>=USD2){CB();}//اغلاق صفقات الشراء فقط على ربح


double ChartProfit(){
double p= 0 ;
for(cnt=0;cnt<OrdersTotal();cnt++){
if(OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==Ma gicNamber){
p=p+OrderProfit()+OrderCommission()+OrderSwap();
}


}return(p);
}


//----------------------------------------------------------------------------------------
// ربح الشراء
//----------------------------------------------------------------------------------------


double BuyProfit(){
double p= 0 ;
for(cnt=0;cnt<OrdersTotal();cnt++){
if(OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==Ma gicNamber){
if (OrderType()==OP_BUY)
p=p+OrderProfit()+OrderCommission()+OrderSwap();
}


}return(p);
}
//----------------------------------------------------------------------------------------
// ربح البيع
//----------------------------------------------------------------------------------------




double SellProfit(){
double p= 0 ;
for(cnt=0;cnt<OrdersTotal();cnt++){
if(OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==Ma gicNamber)
if(OrderType()==OP_SELL){
p=p+OrderProfit()+OrderCommission()+OrderSwap();
}


}return(p);
}
//----------------------------------------------------------------------------------------
// اغلاق جميع الصفقات
//----------------------------------------------------------------------------------------
void CA() {


for(cnt=OrdersTotal()-1;cnt>=0;cnt--)
if(OrderSelect(SELECT_BY_POS,MODE_TRADES))
if (OrderSymbol()==Symbol()&&OrderMagicNumber()==Magi cNamber)
if (OrderType()==OP_BUY){
zs=OrderClose(OrderTicket(),OrderLots(),Bid,3,N);
} else if (OrderType()==OP_SELL){
zs=OrderClose(OrderTicket(),OrderLots(),Ask,3,N);
}else{
zs=OrderDelete(OrderTicket(),N);


}
}
//----------------------------------------------------------------------------
// اغلاق صفقات الشراء
//----------------------------------------------------------------------------
void CB(){
for (cnt=OrdersTotal()-1;cnt>=0;cnt--)
if (OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))
if (OrderSymbol()==Symbol()&&OrderMagicNumber()==Magi cNamber&&OrderType()==OP_BUY)
{
bool close_b=OrderClose(OrderTicket(),OrderLots(),Bid,3 ,clrGoldenrod);
}
}
//-------------------------------------------------------------------
// اغلاق صفقات البيع
//-------------------------------------------------------------------
void CS(){


for (cnt=OrdersTotal()-1;cnt>=0;cnt--)
if (OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))
if (OrderSymbol()==Symbol()&&OrderMagicNumber()==Magi cNamber&&OrderType()==OP_SELL)
{
bool close_s=OrderClose(OrderTicket(),OrderLots(),Ask,3 ,clrAzure);
}
}