صفحة 187 من 689 الأولىالأولى ... 87137177181182183184185186187188189190191192193197237287687 ... الأخيرةالأخيرة
النتائج 2,791 إلى 2,805 من 10335
  1. #2791
    الصورة الرمزية MR.dollar
    MR.dollar غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,864

    افتراضي

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

  2. #2792
    الصورة الرمزية hamid988
    hamid988 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jul 2012
    الإقامة
    الكويت
    المشاركات
    225

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة hamid988 مشاهدة المشاركة
    السلام عليكم ورحمة الله وبركاته
    استاذ اسامه تحيه طيبه لك
    اريد اضيف للاكسبيرت المرفق هذا الشرط
    اريد من الاكسبيرت ان يراجع صفقاته عند اغلاق كل شمعه حسب الفريم هل هي بااتجاه المؤشر ان كانت ليست بااتجاه المؤشر يغلق الصفقه ويفتح صفقه بااتجاه المؤشر(يعني لو كان المؤشر تحت الصفر والصفقه المفتوحه باي يغلق الباي ويفتح سل ولو كان المؤشر فوق الصفر والصفقه المفتوحه سل يغلقها ويفتح باي) وهكذا عند اغلاق كل شمعه حسب الفريم
    ماهو كود هذا الشرط واين يوضع بارك الله فيك
    ايظا نريد الاكسبيرت يعمل على 4ارقام
    ارجوا المساعده ولك جزيل الشكر
    استاذ أسامه ارجوا الرد بارك الله فيك ولو جبر خاطر

  3. #2793
    الصورة الرمزية ابواحمد222
    ابواحمد222 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jun 2010
    المشاركات
    414

    افتراضي رد:موضوع مخصص للأسئلة البرمجية

    مساء الخير مستر دولار انني صرت استحي من كثر اسئلتي اليك لكن بصراحه ارغب في العلم لذلك اتمنى مساعدي
    تم اضافه المعادلات الى الاكسبيرت لكي يقوم باقفال الصفقه عند تقاطع المتوسط لكن الاكسبيرت لا يفتح صفقات اتوقع السبب هومعادلات حساب الصفقات الحاليه للشراء والبيع وبصراحه لا اعرف لها بديل لاستطيع ان اضع نفس الاكسبيرت على اكثر من عمله في نفس الوقت مع تغير الماجيك نمبر
    كود PHP:
    extern int     TakeProfit=28;
     
    extern int     StopLoss=18;
     
    extern int     MagicNumber 122;
     
    extern double  Lot=0.1;//متوسط 14+28
    int    t1,t2;
    extern bool CloseOppositeSignal=true;  
    //+------------------------------------------------------------------+
    //| expert initialization function                                   |
    //+------------------------------------------------------------------+
    int init()
      {
    //----
       
    //----
       
    return(0);
      }
    //+------------------------------------------------------------------+
    //| expert deinitialization function                                 |
    //+------------------------------------------------------------------+
    int deinit()
      {
    //----
       
    //----
       
    return(0);
      }
    //+------------------------------------------------------------------+
    //| expert start function                                            |
    //+------------------------------------------------------------------+
    int start()
    {
      
    double b,s,bsl,ssl,bt,st;

        
        
    bAsk;
        
    s=Bid;

        if (
    StopLoss>0)
        { 
        
    bsl=b-StopLoss*Point;
        
    ssl=s+StopLoss*Point;
        }
        else
        {
        
    bsl=0;
        
    ssl=0;
        }

        if (
    TakeProfit>0
        {
        
    bt=b+TakeProfit*Point;
        
    st=s-TakeProfit*Point;
        }
         else 
         {
         
    bt=0;
         
    st=0;
         }
         
     
    // شروط الشراء السعر اعلى من متوسط 200 ومتوسط 50 اعلى من متوسط 200 الدخول مع تقاطع متوسط 14 و28 شراء   
    int cnttickettotal
    double m6=iMA(NULL,5,28,0,0,PRICE_CLOSE,1);//متوسط 28
    double m7=iMA(NULL,5,28,0,0,PRICE_CLOSE,2);//متوسط 28
    double m8=iMA(NULL,5,14,0,0,PRICE_CLOSE,1);//متوسط 14
    double m9=iMA(NULL,5,14,0,0,PRICE_CLOSE,2);//متوسط 14

    double r1=iMA(NULL,5,200,0,0,PRICE_CLOSE,1);//متوسط 200
    double r2=iMA(NULL,5,50,0,0,PRICE_CLOSE,1);//متوسط 50
    ///////////////////////////////////////////////////////////
       
    if (m8>m6&&m7>=m9&&CloseOppositeSignal==true)
          {
    CloseSellOrders();}
           
           if (
    m6>m8&&m9>=m7&&CloseOppositeSignal==true)
          {
    CloseBuyOrders();}
    //////////////////////////////////////

    if( iClose(0,5,1)>r1&&r2>r1&&m8>m6&&m7>=m9

    &&MyBuyRealOrdersTotal(MagicNumber)==0)
      {
              
    ticket=OrderSend(Symbol(),OP_BUY,Lot,b,3,bsl,bt,"",MagicNumber,0,Green );
             if(
    ticket>0)
               {
                if(
    OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
               }
             else Print(
    "Error opening BUY order : ",GetLastError()); 
             return(
    0);
              }
     
    if( 
    iClose(0,5,1)<r1&&r2<r1&&m6>m8&&m9>=m7

    &&MySellRealOrdersTotal(MagicNumber)==0)
    {
             
    ticket=OrderSend(Symbol(),OP_SELL,Lot,s,3,ssl,st,"",MagicNumber,0,Red);
             if(
    ticket>0)
               {
                if(
    OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice());
               }
             else Print(
    "Error opening SELL order : ",GetLastError()); 
             return(
    0); 
            }
          return(
    0);
         }
     

       return(
    0);

     

       return(
    0);
     
    //+---------------

    // وظيفة لحساب عدد الصفقات الحالية (للشراء)
    int MyBuyRealOrdersTotal(int MagicNumber)
    {
      
    int c=0;
      
    int total  OrdersTotal();
      
    t1=-1;
      
    t2=-1;
     
      for (
    int cnt cnt total cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol() && (OrderType()==OP_BUY))
        {
          if (
    t1==-1)
          {
            
    t1=OrderTicket();
          }
          else
          {
            if (
    t2==-1)
            {
              
    t2=OrderTicket();
            }
          }
          
    c++;
        }
      }
      return(
    c);
    }

    // وظيفة لحساب عدد الصفقات الحالية للبيع
    int MySellRealOrdersTotal(int MagicNumber)
    {
      
    int c=0;
      
    int total  OrdersTotal();
      
    t1=-1;
      
    t2=-1;
     
      for (
    int cnt cnt total cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() ==  MagicNumber&& OrderSymbol()==Symbol() && (OrderType()==OP_SELL))
        {
          if (
    t1==-1)
          {
            
    t1=OrderTicket();
          }
          else
          {
            if (
    t2==-1)
            {
              
    t2=OrderTicket();
            }
          }
          
    c++;
        }
      }
      return(
    c);
    }
    //+------------------------------------------------------------------+
    int CloseBuyOrders()
    {
      for (
    int cnt cnt OrdersTotal() ; cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_BUY)
          {
            
    OrderClose(OrderTicket(),OrderLots(),Bid,3);
          }
        }
      }
      return(
    0);
    }  

    int CloseSellOrders()
    {
     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(),Ask,3);
          }
         }
        }
      return(
    0);

    اخي مستر دولارالرجاء مساعدتي في الحل في هذا الاكسبيرت والله انه اتعبني وشكرا مستر دولار وجزاك الله كل خير
    الاكسبيرت بسيط يفتح علىا كثر من عمله ويجني الارباح عند معادلات معينه
    مرفق الاكسبيرت
    الملفات المرفقة الملفات المرفقة
    • نوع الملف: mq4 123.mq4‏ (4.8 كيلوبايت, المشاهدات 69)

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

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة hamid988 مشاهدة المشاركة
    السلام عليكم ورحمة الله وبركاته
    استاذ اسامه تحيه طيبه لك
    اريد اضيف للاكسبيرت المرفق هذا الشرط
    اريد من الاكسبيرت ان يراجع صفقاته عند اغلاق كل شمعه حسب الفريم هل هي بااتجاه المؤشر ان كانت ليست بااتجاه المؤشر يغلق الصفقه ويفتح صفقه بااتجاه المؤشر(يعني لو كان المؤشر تحت الصفر والصفقه المفتوحه باي يغلق الباي ويفتح سل ولو كان المؤشر فوق الصفر والصفقه المفتوحه سل يغلقها ويفتح باي) وهكذا عند اغلاق كل شمعه حسب الفريم
    ماهو كود هذا الشرط واين يوضع بارك الله فيك
    ايظا نريد الاكسبيرت يعمل على 4ارقام
    ارجوا المساعده ولك جزيل الشكر
    وعليكم السلام ورحمة الله وبركاته
    هذه الخاصية موجوده في الإكسبرت وهو خيار CloseOppositeSignal عند تفعيله فسوف يغلق الصفقه عند تغير إشارة المؤشر
    والكود المسئول عن شروط الإغلاق هو
    كود PHP:
     if (SS_1>0&&SS_2<=0&&CloseOppositeSignal)CloseSellOrders();
         if (
    SS_1<0&&SS_2>=0&&CloseOppositeSignal)CloseBuyOrders(); 
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  5. #2795
    الصورة الرمزية hamid988
    hamid988 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jul 2012
    الإقامة
    الكويت
    المشاركات
    225

    افتراضي رد:موضوع مخصص للأسئلة البرمجية

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    وعليكم السلام ورحمة الله وبركاته
    هذه الخاصية موجوده في الإكسبرت وهو خيار CloseOppositeSignal عند تفعيله فسوف يغلق الصفقه عند تغير إشارة المؤشر
    والكود المسئول عن شروط الإغلاق هو
    كود PHP:
     if (SS_1>0&&SS_2<=0&&CloseOppositeSignal)CloseSellOrders();
         if (
    SS_1<0&&SS_2>=0&&CloseOppositeSignal)CloseBuyOrders(); 
    السلام عليكم ورحمة الله
    استاذ أسامه هذه الخاصيه ليست فعاله دائماً ففي بعض الأوقات يعكس المؤشر إشارته ولكن الاكسبيرت لايغلق الصفقه لذلك انا اريد ان يراجع الاكسبيرت صفقاته عند اغلاق كل شمعه ارجوا منك التكرم بعمل هذا الشرط بارك الله فيك لانه جوهر الاكسبيرت وسر نجاحه
    تحياتي

  6. #2796
    الصورة الرمزية dentist_hussein
    dentist_hussein غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Aug 2011
    الإقامة
    مصر
    المشاركات
    1,827

    افتراضي رد:موضوع مخصص للأسئلة البرمجية

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    هذا لأنك لو نظرت إلى الكود فأنت لم تحدد أي شرط يمنعه من وضع أوامر بعد الإنتهاء منها فمجرد أن يتحقق شرط الساعه سوف يظل يضع الأوامر
    لذلك ضع شرط آخر لا يضع أوامر معلقة باي ستوب وسيل ستوب ما دام هناك أوامر مفتوحه
    المقارنه ستكون
    ستضيف مع شرط الساعه && عدد الأوامر المعلقه == 0

    تمام أخي أسامه ... تم حل امشكله و جزاك الله خيرا ..
    هل هذه الداله أخي صحيحه و تعود بنوع آخر أمر معلق فتح و أغلق .
    كود PHP:
        double LastPend(){
     for(
    int i=OrdersTotal();i>=0;i--){
     
    OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
     if(
    OrderSymbol()==Symbol() && MagicNumberP==OrderMagicNumber()&& (OrderType()==OP_SELLSTOP || OrderType()==OP_SELLLIMIT || OrderType()==OP_BUYSTOP || OrderType()==OP_BUYLIMIT )){
      
    double LastPend=OrderType();
         }
        } 
    return(
    LastPend);
      } 
    توقيع العضو
    MetaTrader Login: 652105
    Investor Password: Z3UR9DA0

  7. #2797
    الصورة الرمزية ابواحمد222
    ابواحمد222 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jun 2010
    المشاركات
    414

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة ابواحمد222 مشاهدة المشاركة
    مساء الخير مستر دولار انني صرت استحي من كثر اسئلتي اليك لكن بصراحه ارغب في العلم لذلك اتمنى مساعدي
    تم اضافه المعادلات الى الاكسبيرت لكي يقوم باقفال الصفقه عند تقاطع المتوسط لكن الاكسبيرت لا يفتح صفقات اتوقع السبب هومعادلات حساب الصفقات الحاليه للشراء والبيع وبصراحه لا اعرف لها بديل لاستطيع ان اضع نفس الاكسبيرت على اكثر من عمله في نفس الوقت مع تغير الماجيك نمبر
    كود PHP:
    extern int     TakeProfit=28;
     
    extern int     StopLoss=18;
     
    extern int     MagicNumber 122;
     
    extern double  Lot=0.1;//متوسط 14+28
    int    t1,t2;
    extern bool CloseOppositeSignal=true;  
    //+------------------------------------------------------------------+
    //| expert initialization function                                   |
    //+------------------------------------------------------------------+
    int init()
      {
    //----
       
    //----
       
    return(0);
      }
    //+------------------------------------------------------------------+
    //| expert deinitialization function                                 |
    //+------------------------------------------------------------------+
    int deinit()
      {
    //----
       
    //----
       
    return(0);
      }
    //+------------------------------------------------------------------+
    //| expert start function                                            |
    //+------------------------------------------------------------------+
    int start()
    {
      
    double b,s,bsl,ssl,bt,st;

        
        
    bAsk;
        
    s=Bid;

        if (
    StopLoss>0)
        { 
        
    bsl=b-StopLoss*Point;
        
    ssl=s+StopLoss*Point;
        }
        else
        {
        
    bsl=0;
        
    ssl=0;
        }

        if (
    TakeProfit>0
        {
        
    bt=b+TakeProfit*Point;
        
    st=s-TakeProfit*Point;
        }
         else 
         {
         
    bt=0;
         
    st=0;
         }
         
     
    // شروط الشراء السعر اعلى من متوسط 200 ومتوسط 50 اعلى من متوسط 200 الدخول مع تقاطع متوسط 14 و28 شراء   
    int cnttickettotal
    double m6=iMA(NULL,5,28,0,0,PRICE_CLOSE,1);//متوسط 28
    double m7=iMA(NULL,5,28,0,0,PRICE_CLOSE,2);//متوسط 28
    double m8=iMA(NULL,5,14,0,0,PRICE_CLOSE,1);//متوسط 14
    double m9=iMA(NULL,5,14,0,0,PRICE_CLOSE,2);//متوسط 14

    double r1=iMA(NULL,5,200,0,0,PRICE_CLOSE,1);//متوسط 200
    double r2=iMA(NULL,5,50,0,0,PRICE_CLOSE,1);//متوسط 50
    ///////////////////////////////////////////////////////////
       
    if (m8>m6&&m7>=m9&&CloseOppositeSignal==true)
          {
    CloseSellOrders();}
           
           if (
    m6>m8&&m9>=m7&&CloseOppositeSignal==true)
          {
    CloseBuyOrders();}
    //////////////////////////////////////

    if( iClose(0,5,1)>r1&&r2>r1&&m8>m6&&m7>=m9

    &&MyBuyRealOrdersTotal(MagicNumber)==0)
      {
              
    ticket=OrderSend(Symbol(),OP_BUY,Lot,b,3,bsl,bt,"",MagicNumber,0,Green );
             if(
    ticket>0)
               {
                if(
    OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
               }
             else Print(
    "Error opening BUY order : ",GetLastError()); 
             return(
    0);
              }
     
    if( 
    iClose(0,5,1)<r1&&r2<r1&&m6>m8&&m9>=m7

    &&MySellRealOrdersTotal(MagicNumber)==0)
    {
             
    ticket=OrderSend(Symbol(),OP_SELL,Lot,s,3,ssl,st,"",MagicNumber,0,Red);
             if(
    ticket>0)
               {
                if(
    OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice());
               }
             else Print(
    "Error opening SELL order : ",GetLastError()); 
             return(
    0); 
            }
          return(
    0);
         }
     

       return(
    0);

     

       return(
    0);
     
    //+---------------

    // وظيفة لحساب عدد الصفقات الحالية (للشراء)
    int MyBuyRealOrdersTotal(int MagicNumber)
    {
      
    int c=0;
      
    int total  OrdersTotal();
      
    t1=-1;
      
    t2=-1;
     
      for (
    int cnt cnt total cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol() && (OrderType()==OP_BUY))
        {
          if (
    t1==-1)
          {
            
    t1=OrderTicket();
          }
          else
          {
            if (
    t2==-1)
            {
              
    t2=OrderTicket();
            }
          }
          
    c++;
        }
      }
      return(
    c);
    }

    // وظيفة لحساب عدد الصفقات الحالية للبيع
    int MySellRealOrdersTotal(int MagicNumber)
    {
      
    int c=0;
      
    int total  OrdersTotal();
      
    t1=-1;
      
    t2=-1;
     
      for (
    int cnt cnt total cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() ==  MagicNumber&& OrderSymbol()==Symbol() && (OrderType()==OP_SELL))
        {
          if (
    t1==-1)
          {
            
    t1=OrderTicket();
          }
          else
          {
            if (
    t2==-1)
            {
              
    t2=OrderTicket();
            }
          }
          
    c++;
        }
      }
      return(
    c);
    }
    //+------------------------------------------------------------------+
    int CloseBuyOrders()
    {
      for (
    int cnt cnt OrdersTotal() ; cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_BUY)
          {
            
    OrderClose(OrderTicket(),OrderLots(),Bid,3);
          }
        }
      }
      return(
    0);
    }  

    int CloseSellOrders()
    {
     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(),Ask,3);
          }
         }
        }
      return(
    0);

    اخي مستر دولارالرجاء مساعدتي في الحل في هذا الاكسبيرت والله انه اتعبني وشكرا مستر دولار وجزاك الله كل خير
    الاكسبيرت بسيط يفتح علىا كثر من عمله ويجني الارباح عند معادلات معينه
    مرفق الاكسبيرت
    مستر دولار تم الحمد الله حل المشكله وانا بعرف اني بغلبك معي كثير وجزاك الله كل خير اخي الفاضل

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

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة ابواحمد222 مشاهدة المشاركة
    مساء الخير مستر دولار انني صرت استحي من كثر اسئلتي اليك لكن بصراحه ارغب في العلم لذلك اتمنى مساعدي
    تم اضافه المعادلات الى الاكسبيرت لكي يقوم باقفال الصفقه عند تقاطع المتوسط لكن الاكسبيرت لا يفتح صفقات اتوقع السبب هومعادلات حساب الصفقات الحاليه للشراء والبيع وبصراحه لا اعرف لها بديل لاستطيع ان اضع نفس الاكسبيرت على اكثر من عمله في نفس الوقت مع تغير الماجيك نمبر
    كود PHP:
    extern int     TakeProfit=28;
     
    extern int     StopLoss=18;
     
    extern int     MagicNumber 122;
     
    extern double  Lot=0.1;//متوسط 14+28
    int    t1,t2;
    extern bool CloseOppositeSignal=true;  
    //+------------------------------------------------------------------+
    //| expert initialization function                                   |
    //+------------------------------------------------------------------+
    int init()
      {
    //----
       
    //----
       
    return(0);
      }
    //+------------------------------------------------------------------+
    //| expert deinitialization function                                 |
    //+------------------------------------------------------------------+
    int deinit()
      {
    //----
       
    //----
       
    return(0);
      }
    //+------------------------------------------------------------------+
    //| expert start function                                            |
    //+------------------------------------------------------------------+
    int start()
    {
      
    double b,s,bsl,ssl,bt,st;

        
        
    bAsk;
        
    s=Bid;

        if (
    StopLoss>0)
        { 
        
    bsl=b-StopLoss*Point;
        
    ssl=s+StopLoss*Point;
        }
        else
        {
        
    bsl=0;
        
    ssl=0;
        }

        if (
    TakeProfit>0
        {
        
    bt=b+TakeProfit*Point;
        
    st=s-TakeProfit*Point;
        }
         else 
         {
         
    bt=0;
         
    st=0;
         }
         
     
    // شروط الشراء السعر اعلى من متوسط 200 ومتوسط 50 اعلى من متوسط 200 الدخول مع تقاطع متوسط 14 و28 شراء   
    int cnttickettotal
    double m6=iMA(NULL,5,28,0,0,PRICE_CLOSE,1);//متوسط 28
    double m7=iMA(NULL,5,28,0,0,PRICE_CLOSE,2);//متوسط 28
    double m8=iMA(NULL,5,14,0,0,PRICE_CLOSE,1);//متوسط 14
    double m9=iMA(NULL,5,14,0,0,PRICE_CLOSE,2);//متوسط 14

    double r1=iMA(NULL,5,200,0,0,PRICE_CLOSE,1);//متوسط 200
    double r2=iMA(NULL,5,50,0,0,PRICE_CLOSE,1);//متوسط 50
    ///////////////////////////////////////////////////////////
       
    if (m8>m6&&m7>=m9&&CloseOppositeSignal==true)
          {
    CloseSellOrders();}
           
           if (
    m6>m8&&m9>=m7&&CloseOppositeSignal==true)
          {
    CloseBuyOrders();}
    //////////////////////////////////////

    if( iClose(0,5,1)>r1&&r2>r1&&m8>m6&&m7>=m9

    &&MyBuyRealOrdersTotal(MagicNumber)==0)
      {
              
    ticket=OrderSend(Symbol(),OP_BUY,Lot,b,3,bsl,bt,"",MagicNumber,0,Green );
             if(
    ticket>0)
               {
                if(
    OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
               }
             else Print(
    "Error opening BUY order : ",GetLastError()); 
             return(
    0);
              }
     
    if( 
    iClose(0,5,1)<r1&&r2<r1&&m6>m8&&m9>=m7

    &&MySellRealOrdersTotal(MagicNumber)==0)
    {
             
    ticket=OrderSend(Symbol(),OP_SELL,Lot,s,3,ssl,st,"",MagicNumber,0,Red);
             if(
    ticket>0)
               {
                if(
    OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice());
               }
             else Print(
    "Error opening SELL order : ",GetLastError()); 
             return(
    0); 
            }
          return(
    0);
         }
     

       return(
    0);

     

       return(
    0);
     
    //+---------------

    // وظيفة لحساب عدد الصفقات الحالية (للشراء)
    int MyBuyRealOrdersTotal(int MagicNumber)
    {
      
    int c=0;
      
    int total  OrdersTotal();
      
    t1=-1;
      
    t2=-1;
     
      for (
    int cnt cnt total cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol() && (OrderType()==OP_BUY))
        {
          if (
    t1==-1)
          {
            
    t1=OrderTicket();
          }
          else
          {
            if (
    t2==-1)
            {
              
    t2=OrderTicket();
            }
          }
          
    c++;
        }
      }
      return(
    c);
    }

    // وظيفة لحساب عدد الصفقات الحالية للبيع
    int MySellRealOrdersTotal(int MagicNumber)
    {
      
    int c=0;
      
    int total  OrdersTotal();
      
    t1=-1;
      
    t2=-1;
     
      for (
    int cnt cnt total cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() ==  MagicNumber&& OrderSymbol()==Symbol() && (OrderType()==OP_SELL))
        {
          if (
    t1==-1)
          {
            
    t1=OrderTicket();
          }
          else
          {
            if (
    t2==-1)
            {
              
    t2=OrderTicket();
            }
          }
          
    c++;
        }
      }
      return(
    c);
    }
    //+------------------------------------------------------------------+
    int CloseBuyOrders()
    {
      for (
    int cnt cnt OrdersTotal() ; cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_BUY)
          {
            
    OrderClose(OrderTicket(),OrderLots(),Bid,3);
          }
        }
      }
      return(
    0);
    }  

    int CloseSellOrders()
    {
     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(),Ask,3);
          }
         }
        }
      return(
    0);

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

  9. #2799
    الصورة الرمزية محمد بن حامد
    محمد بن حامد غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Apr 2010
    المشاركات
    616

    افتراضي رد:موضوع مخصص للأسئلة البرمجية

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


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

    وكلها اعطت نفس النتيجة واخاف اشبكه مع الاكسبرت يعطيني نتائج غير متوقعة
    مستر دولار لايزال المؤشر يعطي نفس التيجة وعايز اعرف هل المشكلة من عندي ولا من المؤشر
    فياريت لو تجربه عندك ونشوف هل يعطي نفس النتيجة ولا يعطي وقت الخبر الصحيح
    واشكرك شكرا جزيلا

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

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة hamid988 مشاهدة المشاركة
    السلام عليكم ورحمة الله
    استاذ أسامه هذه الخاصيه ليست فعاله دائماً ففي بعض الأوقات يعكس المؤشر إشارته ولكن الاكسبيرت لايغلق الصفقه لذلك انا اريد ان يراجع الاكسبيرت صفقاته عند اغلاق كل شمعه ارجوا منك التكرم بعمل هذا الشرط بارك الله فيك لانه جوهر الاكسبيرت وسر نجاحه
    تحياتي
    وعليكم السلام ورحمة الله وبركاته
    هذا لأن المؤشر يعيد رسم نفسه وليس السبب في الشروط أو الإكسبرت
    قمت بتعديل الشروط بحيث يقارن فقط قيمة المؤشر بعد إغلاق الشمعه أعلى أو أسفل خط 0
    الملفات المرفقة الملفات المرفقة
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

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

    افتراضي

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


    تمام أخي أسامه ... تم حل امشكله و جزاك الله خيرا ..
    هل هذه الداله أخي صحيحه و تعود بنوع آخر أمر معلق فتح و أغلق .
    كود PHP:
        double LastPend(){
     for(
    int i=OrdersTotal();i>=0;i--){
     
    OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
     if(
    OrderSymbol()==Symbol() && MagicNumberP==OrderMagicNumber()&& (OrderType()==OP_SELLSTOP || OrderType()==OP_SELLLIMIT || OrderType()==OP_BUYSTOP || OrderType()==OP_BUYLIMIT )){
      
    double LastPend=OrderType();
         }
        } 
    return(
    LastPend);
      } 
    ستعود fk,u الأوامر المعلقه المفتوحه فقط لأنك إستخدمت OrdersTotal ويجب أن تستخدم معها Mode_Trades
    حتى لا يحدث خطأ عند حساب الصفقات
    ثم قم بعمل داله أخرى تعود بنوع الصفقات المغلقه فسوف تستخدم OrdersHistoryTotal
    وتستخدم معها Mode_History
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  12. #2802
    الصورة الرمزية hamid988
    hamid988 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jul 2012
    الإقامة
    الكويت
    المشاركات
    225

    افتراضي رد:موضوع مخصص للأسئلة البرمجية

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    وعليكم السلام ورحمة الله وبركاته
    هذا لأن المؤشر يعيد رسم نفسه وليس السبب في الشروط أو الإكسبرت
    قمت بتعديل الشروط بحيث يقارن فقط قيمة المؤشر بعد إغلاق الشمعه أعلى أو أسفل خط 0
    السلام عليكم ورحمة الله وبركاته

    استاذ اسامه اشكرك جزيل الشكر فعلا هذا هو التعديل المطلوب والاكسبيرت الان يعمل بشكل افضل من حيث الدخول والخروج ولكن فيه مشكله وهي ان الاكسبيرت في بعض الاحيان وليس دائما يضع استوب لوز عند نقطة الدخول برغم ان الاعدادات الستوب لوز= صفر والتك بروفت =صفر والبريك ايفن=صفر والموفستوب =صفر والترايلنج ستوب =صفر ..هل هذا خلل في الاكسبيرت؟؟؟ ارجو منك الافاده وحل المشكله مرفق كشف حساب يبين هذه المشكله
    تحياتي لك
    الصور المصغرة للصور المرفقة الصور المصغرة للصور المرفقة mnbb.gif‏  

  13. #2803
    الصورة الرمزية Moath Mohammed
    Moath Mohammed غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2009
    الإقامة
    المملكة العربية السعودية
    المشاركات
    84

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة Moath Mohammed مشاهدة المشاركة
    أستاذ أسامة ، طلبا عاجل مراجعة مشكلة الكود في هذه المشاركة مع جزيل الشكر والتقدير
    https://forum.arabictrader.com/showt...=1#post2488743

    أستاذي لازلت بإنتظار ردك علي وتوضيح المشكلة مع الشكر الوفير

  14. #2804
    الصورة الرمزية mesterex
    mesterex غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Feb 2009
    الإقامة
    القاهرة
    العمر
    35
    المشاركات
    191

    افتراضي

    السلام عليكم و رحمة الله و بركاته
    هل هناك طريقة استطيع بها قراءة بيانات بار bar معين بواسطة ال index له من على سيرفر الميتاتريدر و طبعا البار يكون خاص بفريم معين ؟؟
    أو بمعنى آخر لتوضيح الفكرة : هل يمكن جلب بيانات من السيرفر بواسطة المؤشر (برمجيا أثناء التشغيل) علما بان هذه البيانات لا تكن موجودة من قبل فى ال history center على جهازى؟؟

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

    افتراضي

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


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

    مرفق المؤشر مره أخرى
    تأكد من أنك فعلت خيار إستدعاء ملفات الدل

    اضغط على الصورة لعرض أكبر

الاســـم:	s12.gif
المشاهدات:	106
الحجـــم:	34.5 كيلوبايت
الرقم:	338881
    الملفات المرفقة الملفات المرفقة
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

المواضيع المتشابهه

  1. موضوع مخصص للاكسبيرتات اللتي يستخدمها الاعضاء على الحقيقي,,عندك اكسبيرت ممتاز ضعه هنا
    By محمد معمو in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EA
    مشاركات: 11
    آخر مشاركة: 15-12-2023, 02:03 PM
  2. عااااااااااااجل ( موضوع مخصص للفرص الفورية)!!!
    By عاشق الذبذبـة in forum توقعات وتوصيات سوق العملات
    مشاركات: 280
    آخر مشاركة: 27-08-2009, 10:30 PM

الاوسمة لهذا الموضوع


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