النتائج 1 إلى 5 من 5
  1. #1
    الصورة الرمزية ayoubsamifx
    ayoubsamifx غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Feb 2008
    المشاركات
    176

    13 طلب مساعدتي في اصلاح اول اكسبيرت برمجته

    السلام عليكم


    اود من أحد الاخوة ان يساعدني في اصلاح الخطأ الموجود في هادا الاكسبيرت

    فكرة الاكسبيرت واضحة

    فقط لا ينفد الاوامر

    fibo daily ayoubsamifx.mq4
    آخر تعديل بواسطة ayoubsamifx ، 21-07-2011 الساعة 05:15 PM سبب آخر: ارفاق الاكسبيرت

  2. #2
    الصورة الرمزية MR.dollar
    MR.dollar غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,864

    افتراضي

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

    وهذه قائمة بمعنى كل خطأ
    http://docs.mql4.com/constants/errors

    في الإكسبرت الخاص بك يظهر الخطأ رقم 130 وهذا يعني Invalid stops
    فقد يكون الهدف أو الأستوب في مكان خاطئ ربما بسبب قربه من سعر وضع الأمر المعلق
    لذلك يمكنك إستعمال الداله MathMax و MathMin بحيث إذا كان الهدف أو الأستوب أقل من أقرب سعر مسموح به يضع الأكسبرت الهدف والأستوب عند السعر المسموح به كمثال
    مثلا ستجعل الأمر المعلق بهذا الشكل
    كود PHP:
    OrderSend(Symbol(), OP_BUYSTOPLotNormalizeDouble(r1,Digits), 5MathMin(r1-MarketInfo(Symbol(),MODE_STOPLEVEL)*Point,r2), MathMax(pivo,r1+MarketInfo(Symbol(),MODE_STOPLEVEL)*Point), "Commentaire"magicnumberBuy0Blue); 
    وكذلك باقي أوامر البيع والشراء

    مرفق الإكسبرت بعد التعديل
    الملفات المرفقة الملفات المرفقة
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  3. #3
    الصورة الرمزية ayoubsamifx
    ayoubsamifx غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Feb 2008
    المشاركات
    176

    افتراضي

    شكرا كتيرا اخ مستر دولار

    وادا اردت أمر اغلاق جميع صفقات اليوم والغاء الصفقات الغير المفعلة قيل فتح الصفقات الجدد

  4. #4
    الصورة الرمزية MR.dollar
    MR.dollar غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,864

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة ayoubsamifx مشاهدة المشاركة
    شكرا كتيرا اخ مستر دولار

    وادا اردت أمر اغلاق جميع صفقات اليوم والغاء الصفقات الغير المفعلة قيل فتح الصفقات الجدد
    سوف تحتاج إلى عمل دالة لحذف وإغلاق جميع الصفقات كمثال
    كود PHP:
    void CloseDeleteOrders()
    {
     for (
    int cnt cnt OrdersTotal() ; cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_SELL)
          {
           
    OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,Digits),3);
          }
           if (
    OrderType()==OP_BUY)
          {
            
    OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,Digits),3);
          }
          if(
    OrderType()>OP_SELL)
          {
          
    OrderDelete(OrderTicket());
          }
         }
        }

    ثم قبل كود وضع الأوامر المعلقه ضع دالة حذف وإغلاق الصفقات
    كود PHP:
    CloseDeleteOrders(); 
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  5. #5
    الصورة الرمزية ayoubsamifx
    ayoubsamifx غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Feb 2008
    المشاركات
    176

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    سوف تحتاج إلى عمل دالة لحذف وإغلاق جميع الصفقات كمثال
    كود PHP:
    void CloseDeleteOrders()
    {
     for (
    int cnt cnt OrdersTotal() ; cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_SELL)
          {
           
    OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,Digits),3);
          }
           if (
    OrderType()==OP_BUY)
          {
            
    OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,Digits),3);
          }
          if(
    OrderType()>OP_SELL)
          {
          
    OrderDelete(OrderTicket());
          }
         }
        }

    ثم قبل كود وضع الأوامر المعلقه ضع دالة حذف وإغلاق الصفقات
    كود PHP:
    CloseDeleteOrders(); 
    الله يخليك ويديك العافية والصحة

    شكرا كتيراااااا


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17