رد: اكسبيرت محاصرة السعر من تصميمي
اقتباس:
المشاركة الأصلية كتبت بواسطة qaradaya
بارك الله فيك اخ سمير كما عهدناك سباق لفعل الخير ومساعة الاخرين
صحيح اخ سمير التجربة على اكسبيرت واحد افضل من 2 .
انا لاحظت شئ غريب الاكسبيرت اللي انت عملته وهو انه يقفل الصفقات بطريقة غريبة حتى لو لم يصل الربح للربح اللي تم تحديده والغريبة ان معظم هذه الصفقات تقفل على خسارة .
لا اعرف السبب ولكن اتمنى ان تساعدنا بتنفيذ وضع طريقة الاغلاق بعملة الدولار بكون كتر الله خيرك وجزاك خير الجزاء وهذا بالفعل ما اريده لاني ليس لدي خبرة كافية لعمل ذلك اتمنى ان تنفذ هذا الطلب قريبا وبارك الله فيك .
اخوك محمد
السلام عليكم اخى الكريم
ممكن تضع الاكسبيرت مفتوح الكود حتى استطيع اضافة هذه الطريقة
او لو عايز ممكن اكتب لك هذه الطريقة وانت تعمل ذلك
طريقة وضع الاوامر
يتم وضع هذا فى اعدادات الاوامر الجارجية
[PHP] extern int win_USD=0;[/PHP]
يتم وضع هذا الامر فى داخلة الدالة start
[PHP] if(win_USD>0){
if(pofet()>=win_USD)CloseDeleteAll();
}[/PHP]
يتم وضع دالة اغلاق الصفقات خارج الدالة start
[PHP] void CloseDeleteAll()
{
int total = OrdersTotal();
for (int cnt = total-1 ; cnt >=0 ; cnt--)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if(OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))
{
if(OrderMagicNumber()==MagicNumber&&OrderSymbol()= =Symbol()){
switch(OrderType())
{
case OP_BUY :
{
if(!OrderClose(OrderTicket(),OrderLots(),MarketInf o(OrderSymbol(),MODE_BID),0,Violet))
return(false);
}break;
case OP_SELL :
{
if(!OrderClose(OrderTicket(),OrderLots(),MarketInf o(OrderSymbol(),MODE_ASK),0,Violet))
return(false);
}break;
}
if(OrderType()==OP_BUYSTOP || OrderType()==OP_SELLSTOP || OrderType()==OP_BUYLIMIT || OrderType()==OP_SELLLIMIT)
if(!OrderDelete(OrderTicket()))
{
Print("Error deleting " + OrderType() + " order : ",GetLastError());
return (false);
} }
}
}
return (true);
} [/PHP]
تحياتى لك