عرض مشاركة واحدة
قديم 04-12-2013, 09:32 AM   المشاركة رقم: 82
الكاتب
اسلام العوامى
عضو ذهبى
الصورة الرمزية اسلام العوامى

البيانات
تاريخ التسجيل: Apr 2012
رقم العضوية: 9148
الدولة: alexandria - egypt
المشاركات: 6,086
بمعدل : 1.38 يوميا

الإتصالات
الحالة:
اسلام العوامى غير متواجد حالياً
وسائل الإتصال:

كاتب الموضوع : اسلام العوامى المنتدى : منتدى المؤشرات و الاكسبيرتات
افتراضي رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة 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);
}


المشاركة الأصلية كتبت بواسطة amerelhozn نقره لعرض الصورة في صفحة مستقلة
اخى الكريم الاستاذ اسلام العوامى
اسمح لى بان اضع اجتهادى ف الرد وانت تصحح الخطأ


>>

كود:
extern bool reversesignal= true;



; ()if(buy condition) closeOrder
; ()if(sell condition) closeOrder



ونعمل دالة closeorder


void closeordar(int typer){
 for(int c=0;c<OrdersTotal();c++){
 OrderSelect(c,SELECT_BY_POS,MODE_TRADES);
 if(OrderMagicNumber()==MagicNumber&&OrderSymbol()==Symbol()&&OrderType()== typer){
 if(OrderType()==OP_BUY)OrderClose(OrderTicket(),OrderLots(),Bid,30);
 if(OrderType()==OP_SELL)OrderClose(OrderTicket(),OrderLots(),Ask,30);

    }
   }
  }
انا مش عارف اكتب الكود هنا ف المنتدي
علشان مش شايف الترتيب
الكود صحيح ولكن يلزم ان تضع شرط
كود:
if (reversesignal= true)
قبل الكود السابق



التوقيع

عرض البوم صور اسلام العوامى  
رد مع اقتباس
  #82  
قديم 04-12-2013, 09:32 AM
اسلام العوامى اسلام العوامى غير متواجد حالياً
عضو ذهبى
افتراضي رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة 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);
}


المشاركة الأصلية كتبت بواسطة amerelhozn نقره لعرض الصورة في صفحة مستقلة
اخى الكريم الاستاذ اسلام العوامى
اسمح لى بان اضع اجتهادى ف الرد وانت تصحح الخطأ


>>

كود:
extern bool reversesignal= true;



; ()if(buy condition) closeOrder
; ()if(sell condition) closeOrder



ونعمل دالة closeorder


void closeordar(int typer){
 for(int c=0;c<OrdersTotal();c++){
 OrderSelect(c,SELECT_BY_POS,MODE_TRADES);
 if(OrderMagicNumber()==MagicNumber&&OrderSymbol()==Symbol()&&OrderType()== typer){
 if(OrderType()==OP_BUY)OrderClose(OrderTicket(),OrderLots(),Bid,30);
 if(OrderType()==OP_SELL)OrderClose(OrderTicket(),OrderLots(),Ask,30);

    }
   }
  }
انا مش عارف اكتب الكود هنا ف المنتدي
علشان مش شايف الترتيب
الكود صحيح ولكن يلزم ان تضع شرط
كود:
if (reversesignal= true)
قبل الكود السابق




رد مع اقتباس