05-12-2013, 03:00 AM
|
المشاركة رقم: 85
|
البيانات |
تاريخ التسجيل: |
May 2013 |
رقم العضوية: |
14968 |
المشاركات: |
30 |
بمعدل : |
0.01 يوميا |
الإتصالات |
الحالة: |
|
وسائل الإتصال: |
|
|
كاتب الموضوع :
اسلام العوامى
المنتدى :
منتدى المؤشرات و الاكسبيرتات
رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 |
 |
|
 |
|
،،،اولا ستقوم بحجز متغير من النوع bool بأى اسم
كود:
extern bool CloseOppisite = false;
بعد ذلك تكتب الكود التالى قبل اكواد فتح الصفقات بحيث اذا تحققت شروط الشراء وفى نفس الوقت قيمة المتغير CloseOppisite تساوى true يقوم الاكسبيرت بغلق صفقات البيع والعكس وفى حالتنا هذه سنستخدم الموفنج كشرط دخول
كود:
if ( (mafast2<maslow2&&mafast1>maslow1&&CloseOppisite==true ))
CloseSellOrders();
if ((mafast2>maslow2&&mafast1<maslow1&&CloseOppisite==true))
CloseBuyOrders();
وتقوم بعمل وظيفتين لغلق البيع او الشراء
كود:
int CloseBuyOrders()
{
for (int i = 0 ; i < OrdersTotal() ; i++)
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
{
if (OrderType()==OP_BUY)
{
bool y=OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,digits),3*t);
while(y==false){y=OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,digits),3*t);Sleep(1000);}
}
}
}
return(0);
}
int CloseSellOrders()
{
for (int i = 0 ; i < OrdersTotal() ; i++)
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
{
if (OrderType()==OP_SELL)
{
bool y=OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,digits),3*t);
while(y==false){y=OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,digits),3*t);Sleep(1000);}
}
}
}
return(0);
}
الكود صحيح ولكن يلزم ان تضع شرط
كود:
if (reversesignal= true)
قبل الكود السابق
|
|
 |
|
 |
اظن انها غلطة مطبيعة زي
if(reversesignal==true )
صح كده
لانها سؤال
|
|
|