صفحة 220 من 686 الأولىالأولى ... 120170210214215216217218219220221222223224225226230270320 ... الأخيرةالأخيرة
النتائج 3,286 إلى 3,300 من 10285
  1. #3286
    الصورة الرمزية reda-hadhod
    reda-hadhod غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Oct 2007
    الإقامة
    مصر
    العمر
    53
    المشاركات
    281

    افتراضي

    السلام عليكم ورحمة الله
    أخى الفاضل أسامة لقد تفضلت وبرمجت اكسبرت للموفنج واسمة MR.dollar_ma breakout v4.2

    أريد منك اخى الفاضل ان توضح لى بعد أذنك : يوجد فى خانة أعدادات الاكسبرت closOppsiteSignal

    Lots_1 . Lots_2 . Lots_3 وكل منهم لهم تاك بروفت واستوب لوز ,, لماذا لم تجعلها ب لوت واحد ولو

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

الاســـم:	mr.dollar1.png
المشاهدات:	106
الحجـــم:	47.0 كيلوبايت
الرقم:	357559


    وفى الصور الثانية يوجد فى order management عدد 2 trailingstop لماذا ؟

    وهل معنى BreakEven هو هو الدخول بعد عدد معين من الشموع

    وما معنى movestopto

    وأخيرا هل يصلح هذا الاكسبرت للعمل على منصة 5 أرقام

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

الاســـم:	mr.dollar2.png
المشاهدات:	110
الحجـــم:	46.4 كيلوبايت
الرقم:	357558


    وأعتذر على أسئلتى الكثيرة , وبارك الله فى عملك ورزقك أخى الكريم

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

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

    اقتباس المشاركة الأصلية كتبت بواسطة reda-hadhod مشاهدة المشاركة
    السلام عليكم ورحمة الله
    أخى الفاضل أسامة لقد تفضلت وبرمجت اكسبرت للموفنج واسمة MR.dollar_ma breakout v4.2

    أريد منك اخى الفاضل ان توضح لى بعد أذنك : يوجد فى خانة أعدادات الاكسبرت closOppsiteSignal

    Lots_1 . Lots_2 . Lots_3 وكل منهم لهم تاك بروفت واستوب لوز ,, لماذا لم تجعلها ب لوت واحد ولو

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

الاســـم:	mr.dollar1.png
المشاهدات:	106
الحجـــم:	47.0 كيلوبايت
الرقم:	357559


    وفى الصور الثانية يوجد فى order management عدد 2 trailingstop لماذا ؟

    وهل معنى BreakEven هو هو الدخول بعد عدد معين من الشموع

    وما معنى movestopto

    وأخيرا هل يصلح هذا الاكسبرت للعمل على منصة 5 أرقام

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

الاســـم:	mr.dollar2.png
المشاهدات:	110
الحجـــم:	46.4 كيلوبايت
الرقم:	357558


    وأعتذر على أسئلتى الكثيرة , وبارك الله فى عملك ورزقك أخى الكريم
    وعليكم السلام ورحمة الله وبركاته
    CloseOppositeSignal خيار في حال أردت إغلاق الصفقه المفتوحه حاليا عند ظهور إشارة دخول عكسيه
    Lots_1, Lots_2 , Lots_3 من طلب برمجة الإكسبرت هو طلب وضع خيار فتح ثلاث صفقات كل صفقه لها حجم لوت معين وهدف وستوب لوز معين
    إذا أردت إلغاء حجم لوت معين إجعله = 0

    في خيارات التريلينج ستوب
    trailingstop هو التريلينج ستوب
    trailingstep هو عدد النقاط التي سيبدأ من بعدها عمل التريلينج ستوب مثلا لو جعلته 50 نقطه فسوف يبدأ في تحريك التريلينج بعد 50 نقطه وهكذا

    BreakEven هي خاصية نقل الأستوب إلى نقطة الدخول أو عند نقطة ربح معينه بعد أن تربح الصفقه عدد نقاط معينه
    مثلا لو جعلت BreakEven=20 وجعلت movestopto=5 فبعد ان تربح الصفقه 20 نقطه سوف ينقل الأستوب لوز إلى ربح + 5 نقاط
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  3. #3288
    الصورة الرمزية reda-hadhod
    reda-hadhod غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Oct 2007
    الإقامة
    مصر
    العمر
    53
    المشاركات
    281

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    وعليكم السلام ورحمة الله وبركاته
    CloseOppositeSignal خيار في حال أردت إغلاق الصفقه المفتوحه حاليا عند ظهور إشارة دخول عكسيه
    Lots_1, Lots_2 , Lots_3 من طلب برمجة الإكسبرت هو طلب وضع خيار فتح ثلاث صفقات كل صفقه لها حجم لوت معين وهدف وستوب لوز معين
    إذا أردت إلغاء حجم لوت معين إجعله = 0

    في خيارات التريلينج ستوب
    trailingstop هو التريلينج ستوب
    trailingstep هو عدد النقاط التي سيبدأ من بعدها عمل التريلينج ستوب مثلا لو جعلته 50 نقطه فسوف يبدأ في تحريك التريلينج بعد 50 نقطه وهكذا

    BreakEven هي خاصية نقل الأستوب إلى نقطة الدخول أو عند نقطة ربح معينه بعد أن تربح الصفقه عدد نقاط معينه
    مثلا لو جعلت BreakEven=20 وجعلت movestopto=5 فبعد ان تربح الصفقه 20 نقطه سوف ينقل الأستوب لوز إلى ربح + 5 نقاط
    أشكرك أخى أسامة على سرعة الرد

    لقد لاحظت ان الاكسبرت اليوم صباحا فتح 3 صفقات بنفس السعر , واين خيار الدخول شراء اوبيع بعد عدد معين من الشموع .

    وأن أمكن أريد منك أن تعدل علية لكى أرى كيف تكتب الدوال واين يجب وضعها ويكون كالاتى :

    CloseOppositeSignal

    لوت واحد -- وأستوب -- وأخذ الربح --- والدخول بعد عدد شمعات

    وبنفس money mangement --- order mangement

    منصة 4 أرقام ----- ومنصة 5 أرقام

    أعتذر لك بشدة أخى أسامة عن كثرة طلباتى وأسئلتى وهذا هو السبيل الوحيد للتعلم منك

    جزاك الله كل الخير وبارك فى عملك ورزقك
    الملفات المرفقة الملفات المرفقة

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

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

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


    أشكرك أخى أسامة على سرعة الرد

    لقد لاحظت ان الاكسبرت اليوم صباحا فتح 3 صفقات بنفس السعر , واين خيار الدخول شراء اوبيع بعد عدد معين من الشموع .

    وأن أمكن أريد منك أن تعدل علية لكى أرى كيف تكتب الدوال واين يجب وضعها ويكون كالاتى :

    CloseOppositeSignal

    لوت واحد -- وأستوب -- وأخذ الربح --- والدخول بعد عدد شمعات

    وبنفس money mangement --- order mangement

    منصة 4 أرقام ----- ومنصة 5 أرقام

    أعتذر لك بشدة أخى أسامة عن كثرة طلباتى وأسئلتى وهذا هو السبيل الوحيد للتعلم منك

    جزاك الله كل الخير وبارك فى عملك ورزقك
    لا يوجد في الإكسبرت خيار دخول بعد عدد محدد من الشمعات
    بالنسبه لجعل فتح الصفقه أمر واحد
    هذه أوامر الشراء
    كود PHP:
        if (Open[1]<=ma1_B&&Open[0]>ma1_B&&Time0!=Time[0]&&buyN ){
            
           if(
    orderscnt()<1){
             if(
    StopLoss_1==0){SL=0;}else{SL=Ask-StopLoss_1*point;}
              if(
    TakeProfit_1==0){TP=0;}else{TP=Ask+TakeProfit_1*point;}
                
    OrderSend(Symbol(),OP_BUY,NormalizeDouble(Lots_1,Lot_Digits),NormalizeDouble(Ask,Digits),Slippage*Q,SL,TP,"MR.dollar EA",MagicNumber,0,Blue);
                
                 if(
    StopLoss_2==0){SL=0;}else{SL=Ask-StopLoss_2*point;}
              if(
    TakeProfit_2==0){TP=0;}else{TP=Ask+TakeProfit_2*point;}
                
    OrderSend(Symbol(),OP_BUY,NormalizeDouble(Lots_2,Lot_Digits),NormalizeDouble(Ask,Digits),Slippage*Q,SL,TP,"MR.dollar EA",MagicNumber,0,Blue);
                
                 if(
    StopLoss_3==0){SL=0;}else{SL=Ask-StopLoss_3*point;}
              if(
    TakeProfit_3==0){TP=0;}else{TP=Ask+TakeProfit_3*point;}
                
    OrderSend(Symbol(),OP_BUY,NormalizeDouble(Lots_3,Lot_Digits),NormalizeDouble(Ask,Digits),Slippage*Q,SL,TP,"MR.dollar EA",MagicNumber,0,Blue);
                
                 
    PlaySound("Alert.wav");
                
                 
    Time0=Time[0];buyN=false;sellN=true;
              }
           } 
    سوف تقوم بتعديلها لتصبح
    كود PHP:
      if (Open[1]>=ma1_S&&Open[0]<ma1_S &&Time0!=Time[0]&&sellN){
            
           if(
    orderscnt()<1){
             if(
    StopLoss_1==0){SL=0;}else{SL=Bid+StopLoss_1*point;}
              if(
    TakeProfit_1==0){TP=0;}else{TP=Bid-TakeProfit_1*point;}
                
    OrderSend(Symbol(),OP_SELL,NormalizeDouble(Lots_1,Lot_Digits),NormalizeDouble(Bid,Digits),Slippage*Q,SL,TP,"MR.dollar EA",MagicNumber,0,Red);
                
                if(
    StopLoss_2==0){SL=0;}else{SL=Bid+StopLoss_2*point;}
              if(
    TakeProfit_2==0){TP=0;}else{TP=Bid-TakeProfit_2*point;}
                
    OrderSend(Symbol(),OP_SELL,NormalizeDouble(Lots_2,Lot_Digits),NormalizeDouble(Bid,Digits),Slippage*Q,SL,TP,"MR.dollar EA",MagicNumber,0,Red); 
                
                if(
    StopLoss_3==0){SL=0;}else{SL=Bid+StopLoss_3*point;}
              if(
    TakeProfit_3==0){TP=0;}else{TP=Bid-TakeProfit_3*point;}
                
    OrderSend(Symbol(),OP_SELL,NormalizeDouble(Lots_3,Lot_Digits),NormalizeDouble(Bid,Digits),Slippage*Q,SL,TP,"MR.dollar EA",MagicNumber,0,Red);  
                 
    PlaySound("Alert.wav");
                  
    Time0=Time[0];buyN=true;sellN=false;
                 
              }
           }
        } 
    وأيضا نفس التعديل بالنسبه لكود البيع سوف تترك الأمر الأول وتحذف الأمرين الآخرين
    بالنسبه للدخول بعد عدد معين من الشموع
    سوف تقوم بتعديل دالة إستدعاء مؤشر الموفينج
    كود PHP:
      ma1_B=iMA(NULL,0,MaPeriod,0,MaType,PRICE_HIGH,1);
              
    ma1_S=iMA(NULL,0,MaPeriod,0,MaType,PRICE_LOW,1); 
    مثلا لو تريد الدخول بعد مرور ثلاث شمعات من تحقق الشروط سوف تجعل بدلا من 1 تجعلها 3
    أو حسب رقم الشمعه التي تريدها
    ثم تقوم بتعديل شروط الدخول أيضا
    كود PHP:
     if (Open[1]<=ma1_B&&Open[0]>ma1_B&&Time0!=Time[0]&&buyN ){ 
    بدلا من إفتتاح الشمعه رقم 1 سوف تجعلها 3 وبدلا من 0 سوف تجعلها 2
    ونفس الفكره بالنسبه للبيع
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  5. #3290
    الصورة الرمزية mostafa400
    mostafa400 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2008
    الإقامة
    مصر
    المشاركات
    360

    افتراضي

    السلام عليكم ورحمة الله وبركاته
    ممكن شرح لعمل حلقة بعدادين
    وشكرا جزيلا .

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

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

    اقتباس المشاركة الأصلية كتبت بواسطة mostafa400 مشاهدة المشاركة
    السلام عليكم ورحمة الله وبركاته
    ممكن شرح لعمل حلقة بعدادين
    وشكرا جزيلا .
    وعليكم السلام ورحمة الله وبركاته
    مثال
    كود PHP:
      int i,j;
            for(
    i=0,j=0;i<=5;i++,j=j+3)
             {
              Print(
    i);
              Print(
    j);
             } 
    في الكود السابق كما تلاحظ عندما تقوم بعمل حلقه بعدادين فتقوم بتعريف المتغيرين خارج الحلقه for
    يمكنك وضع قيمة إبتدائيه للعدادين
    يمكنك وضع كود الزياده أو النقصان للعدادين
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  7. #3292
    الصورة الرمزية mostafa400
    mostafa400 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2008
    الإقامة
    مصر
    المشاركات
    360

    افتراضي

    جزاك الله خيرا
    ممكن مثال للتوضيح أكثر بعد إذنك
    على هذا الكود مثلا - هل او اى مثال آخر تراه مناسبا

    كود:
     double MyOrdersProfit()
     {
      double c=0;
      int total  = OrdersTotal();
      
      for (int cnt = 0 ; cnt < total ; cnt++)
      {
        OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if ( OrderSymbol()==Symbol() && (OrderType()==OP_BUY || OrderType()==OP_SELL))
        {
          c=c+OrderProfit()+OrderCommission()+OrderSwap();
        }
      }
      return(c);
     }

  8. #3293
    الصورة الرمزية سمير محمد ارمان
    سمير محمد ارمان غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Sep 2009
    الإقامة
    مصر
    المشاركات
    834

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

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

  9. #3294
    الصورة الرمزية reda-hadhod
    reda-hadhod غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Oct 2007
    الإقامة
    مصر
    العمر
    53
    المشاركات
    281

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    لا يوجد في الإكسبرت خيار دخول بعد عدد محدد من الشمعات
    بالنسبه لجعل فتح الصفقه أمر واحد
    هذه أوامر الشراء
    كود PHP:
        if (Open[1]<=ma1_B&&Open[0]>ma1_B&&Time0!=Time[0]&&buyN ){
            
           if(
    orderscnt()<1){
             if(
    StopLoss_1==0){SL=0;}else{SL=Ask-StopLoss_1*point;}
              if(
    TakeProfit_1==0){TP=0;}else{TP=Ask+TakeProfit_1*point;}
                
    OrderSend(Symbol(),OP_BUY,NormalizeDouble(Lots_1,Lot_Digits),NormalizeDouble(Ask,Digits),Slippage*Q,SL,TP,"MR.dollar EA",MagicNumber,0,Blue);
                
                 if(
    StopLoss_2==0){SL=0;}else{SL=Ask-StopLoss_2*point;}
              if(
    TakeProfit_2==0){TP=0;}else{TP=Ask+TakeProfit_2*point;}
                
    OrderSend(Symbol(),OP_BUY,NormalizeDouble(Lots_2,Lot_Digits),NormalizeDouble(Ask,Digits),Slippage*Q,SL,TP,"MR.dollar EA",MagicNumber,0,Blue);
                
                 if(
    StopLoss_3==0){SL=0;}else{SL=Ask-StopLoss_3*point;}
              if(
    TakeProfit_3==0){TP=0;}else{TP=Ask+TakeProfit_3*point;}
                
    OrderSend(Symbol(),OP_BUY,NormalizeDouble(Lots_3,Lot_Digits),NormalizeDouble(Ask,Digits),Slippage*Q,SL,TP,"MR.dollar EA",MagicNumber,0,Blue);
                
                 
    PlaySound("Alert.wav");
                
                 
    Time0=Time[0];buyN=false;sellN=true;
              }
           } 
    سوف تقوم بتعديلها لتصبح
    كود PHP:
      if (Open[1]>=ma1_S&&Open[0]<ma1_S &&Time0!=Time[0]&&sellN){
            
           if(
    orderscnt()<1){
             if(
    StopLoss_1==0){SL=0;}else{SL=Bid+StopLoss_1*point;}
              if(
    TakeProfit_1==0){TP=0;}else{TP=Bid-TakeProfit_1*point;}
                
    OrderSend(Symbol(),OP_SELL,NormalizeDouble(Lots_1,Lot_Digits),NormalizeDouble(Bid,Digits),Slippage*Q,SL,TP,"MR.dollar EA",MagicNumber,0,Red);
                
                if(
    StopLoss_2==0){SL=0;}else{SL=Bid+StopLoss_2*point;}
              if(
    TakeProfit_2==0){TP=0;}else{TP=Bid-TakeProfit_2*point;}
                
    OrderSend(Symbol(),OP_SELL,NormalizeDouble(Lots_2,Lot_Digits),NormalizeDouble(Bid,Digits),Slippage*Q,SL,TP,"MR.dollar EA",MagicNumber,0,Red); 
                
                if(
    StopLoss_3==0){SL=0;}else{SL=Bid+StopLoss_3*point;}
              if(
    TakeProfit_3==0){TP=0;}else{TP=Bid-TakeProfit_3*point;}
                
    OrderSend(Symbol(),OP_SELL,NormalizeDouble(Lots_3,Lot_Digits),NormalizeDouble(Bid,Digits),Slippage*Q,SL,TP,"MR.dollar EA",MagicNumber,0,Red);  
                 
    PlaySound("Alert.wav");
                  
    Time0=Time[0];buyN=true;sellN=false;
                 
              }
           }
        } 
    وأيضا نفس التعديل بالنسبه لكود البيع سوف تترك الأمر الأول وتحذف الأمرين الآخرين
    بالنسبه للدخول بعد عدد معين من الشموع
    سوف تقوم بتعديل دالة إستدعاء مؤشر الموفينج
    كود PHP:
      ma1_B=iMA(NULL,0,MaPeriod,0,MaType,PRICE_HIGH,1);
              
    ma1_S=iMA(NULL,0,MaPeriod,0,MaType,PRICE_LOW,1); 
    مثلا لو تريد الدخول بعد مرور ثلاث شمعات من تحقق الشروط سوف تجعل بدلا من 1 تجعلها 3
    أو حسب رقم الشمعه التي تريدها
    ثم تقوم بتعديل شروط الدخول أيضا
    كود PHP:
     if (Open[1]<=ma1_B&&Open[0]>ma1_B&&Time0!=Time[0]&&buyN ){ 
    بدلا من إفتتاح الشمعه رقم 1 سوف تجعلها 3 وبدلا من 0 سوف تجعلها 2
    ونفس الفكره بالنسبه للبيع
    أشكرك أخى الكريم أسامة تم التعديل ونجحت فية والحمد لله

    بقى لى سؤال واحد مهم هل الخانة المكتوب أمامها lot_digits لها رقم 2 هل تعنى لمنصة رقمين بعد العلامة العشرية ,, ولو جعلتها 3 تكون لمنصة 3 أرقام بعد العلامة العشرية

    وبالتالى الخانة سليبج ستكون كما هى لمنصة 4 أرقام . ونزيد رقم لو كانت لمنصة 5 أرقام

    شكرا كثيرا لك أخى الكريم وبارك الله فى عملك ورزقك

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

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

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

    كود:
     double MyOrdersProfit()
     {
      double c=0;
      int total  = OrdersTotal();
      
      for (int cnt = 0 ; cnt < total ; cnt++)
      {
        OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if ( OrderSymbol()==Symbol() && (OrderType()==OP_BUY || OrderType()==OP_SELL))
        {
          c=c+OrderProfit()+OrderCommission()+OrderSwap();
        }
      }
      return(c);
     }
    في هذا الكود هي حلقه عاديه بعداد واحد
    cnt=0
    هذا تعبير إبتداء الحلقه ومن عندها سوف يبدأ العد
    cnt<total
    يسمى شرط الحلقه فكلما تحقق هذا الشرط يقوم بتنفيذ جسد الحلقه
    cnt++
    تعبير الزياده في الحلقه فكلما تحقق الشرط وقام بتنفيذ جسد الحلقه يقوم بزيادة قيمه الحلقه السابقه

    جسد الحلقه هي الأوامر التي تقوم الحلقه بتنفيذها في كل مره
    في هذا الكود
    كود PHP:
     OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if ( 
    OrderSymbol()==Symbol() && (OrderType()==OP_BUY || OrderType()==OP_SELL))
        {
          
    c=c+OrderProfit()+OrderCommission()+OrderSwap();
        } 
    معنى هذا الكود
    في كل مره يقوم بإختيار الصفقه المفتوحه بناء على رقمها
    ثم يقارن إذا كانت نفس العمله الموضوع على شارت الإكسبرت وكانت الصفقه بيع أو شراء
    ينفذ الكود
    كود PHP:
     c=c+OrderProfit()+OrderCommission()+OrderSwap(); 
    وهذا يعني أن المتغير c يقوم بجمع ربح الصفقات على بعضها
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

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

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

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

  12. #3297
    الصورة الرمزية سمير محمد ارمان
    سمير محمد ارمان غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Sep 2009
    الإقامة
    مصر
    المشاركات
    834

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

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    وعليكم السلام ورحمة الله وبركاته
    لا يمكن ذلك
    لكن أبسط حل يمكن أن تقوم بعمله
    تغيير إسم الداله start في الإكسبرت الذي تريد إستدعائه
    ثم تقوم بإستدعاء هذه الداله بشكل كامل داخل الإكسبرت الجديد
    السلام عليكم استاذى الكريم
    وشكرا على سرعة الرد
    ارجو التوضيح اكثر
    يعنى اعمل كوبى واضع اكسبيرت داخل اكسبيرت واخير اسم دالة : start
    تمام كده ؟
    طيب لو كان كده صح
    مش يكون الاكسبيرت ثقيل على المنصة ؟
    وكمان لو هذه الطريقة صح
    كام اكسبيرت ممكن ادخله على اكسبيرت واحد ؟
    انا فى دماغى فكرة
    هو يكون اكسبيرت شامل كل تحركات السوق
    ومع كل تحرك يشغل الاكسبيرت الخاص بهذا التحرك
    تحياتى لك

  13. #3298
    الصورة الرمزية zzeyani
    zzeyani غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Sep 2012
    الإقامة
    المغرب
    المشاركات
    67

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

    المرجو من الإخوة الاعضاء أن يساعدوني في برمجت هدا الكود
    مهمت الكود الاول سهلة : الدخول في صفقة ب 0,1 في المئة من رأس المال
    مهمت الكود التانية هي : إدا خسر السكريبت في صفقة . أن يقوم بقسمت الوت الدي خسره في الصفقة الصابقة على 5 و الخارج هو عدد الوت الدي سيدخل به في الصفقة جديدة.
    أما أخر طلب أن يشرح لي المبرمج مكان وضع الكود في السكربت .
    وشكرا على هدا المنتدى الرائع

  14. #3299
    الصورة الرمزية mostafa400
    mostafa400 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2008
    الإقامة
    مصر
    المشاركات
    360

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    في هذا الكود هي حلقه عاديه بعداد واحد
    cnt=0
    هذا تعبير إبتداء الحلقه ومن عندها سوف يبدأ العد
    cnt<total
    يسمى شرط الحلقه فكلما تحقق هذا الشرط يقوم بتنفيذ جسد الحلقه
    cnt++
    تعبير الزياده في الحلقه فكلما تحقق الشرط وقام بتنفيذ جسد الحلقه يقوم بزيادة قيمه الحلقه السابقه

    جسد الحلقه هي الأوامر التي تقوم الحلقه بتنفيذها في كل مره
    في هذا الكود
    كود PHP:
     OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
    if ( 
    OrderSymbol()==Symbol() && (OrderType()==OP_BUY || OrderType()==OP_SELL))
    {
    c=c+OrderProfit()+OrderCommission()+OrderSwap();

    معنى هذا الكود
    في كل مره يقوم بإختيار الصفقه المفتوحه بناء على رقمها
    ثم يقارن إذا كانت نفس العمله الموضوع على شارت الإكسبرت وكانت الصفقه بيع أو شراء
    ينفذ الكود
    كود PHP:
     c=c+OrderProfit()+OrderCommission()+OrderSwap(); 
    وهذا يعني أن المتغير c يقوم بجمع ربح الصفقات على بعضها
    شكرا جزيلا وجزاك الله خيرا .

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

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

    اقتباس المشاركة الأصلية كتبت بواسطة سمير محمد ارمان مشاهدة المشاركة
    السلام عليكم استاذى الكريم
    وشكرا على سرعة الرد
    ارجو التوضيح اكثر
    يعنى اعمل كوبى واضع اكسبيرت داخل اكسبيرت واخير اسم دالة : start
    تمام كده ؟
    طيب لو كان كده صح
    مش يكون الاكسبيرت ثقيل على المنصة ؟
    وكمان لو هذه الطريقة صح
    كام اكسبيرت ممكن ادخله على اكسبيرت واحد ؟
    انا فى دماغى فكرة
    هو يكون اكسبيرت شامل كل تحركات السوق
    ومع كل تحرك يشغل الاكسبيرت الخاص بهذا التحرك
    تحياتى لك
    وعليكم السلام ورحمة الله وبركاته
    مثلا مرفق إكسبرتين
    MR.dollar_ MA Breakout
    و
    Ma Crosses EA

    أريد وضع جميع أوامر وكود إكسبرت Ma Crosses EA بداخل الإكسبرت الأول

    هذه هي الداله الرئيسيه في الإكسبرت

    كود PHP:
     int start()
       {
       
    Comment("Programmed by MR.dollar"+"\n"+"منتدى المتداول العربي "+"\n"+"www.arabictrader.com/vb");
      
            
    //////////////////////////////////////////////////
           
           
    double ma1,ma2,ma11,ma22,rsi1,rsi2,ma3,ma33,ma4,ma44;
          
           
    ma1=iMA(NULL,0,Slowma,SlowMa_Shift,Slowma_Mode,PRICE_CLOSE,0);
           
    ma11=iMA(NULL,0,Slowma,SlowMa_Shift,Slowma_Mode,PRICE_CLOSE,1);
           
    ma2=iMA(NULL,0,Fastma,FastMa_Shift,Fastma_Mode,PRICE_CLOSE,0);
           
    ma22=iMA(NULL,0,Fastma,FastMa_Shift,Fastma_Mode,PRICE_CLOSE,1);
          
       
    ////////////////////////////////////////////////////
          
    double SL,TP
          
         
        if(
    MMLots subLotSize();
          if ( (
    ma22<=ma11&&ma2>ma1)&&(NormalizeDouble(Bid,digits)-NormalizeDouble(GlobalVariableGet("x"),digits))/point>=XDistance
          
    )
           {
           
    CloseSellOrders();
           }
           
           if ((
    ma22>=ma11&&ma2<ma1)&&(NormalizeDouble(GlobalVariableGet("x"),digits)-NormalizeDouble(Bid,digits))/point>=XDistance
         
    )
         
        {
        
    CloseBuyOrders();
        }
        if(((
    ma22<ma11&&ma2>ma1)||(ma22>ma11&&ma2<ma1))&&Time00!=Time[0]){
        
    GlobalVariableSet("x",Bid);
      
        
    Time00=Time[0];
        }
         
        
    ////////////////////////////////
         
    if (UseHourTrade){
            if(!(
    Hour()>=FromHourTrade&&Hour()<ToHourTrade)){
               
    Comment("Non-Trading Hours!");
               return(
    0);
             }
           }
              
        if ((
    ma22<=ma11&&ma2>ma1)&&(NormalizeDouble(Bid,digits)-NormalizeDouble(GlobalVariableGet("x"),digits))/point>=XDistance ){
           
           if(
    orderscnt()<MaxTrades){
             if(
    StopLoss==0){SL=0;}else{SL=Ask-StopLoss*Point;}
               if(
    TakeProfit==0){TP=0;}else{TP=Ask+TakeProfit*Point;}
               
                
    OrderSend(Symbol(),OP_BUY,Lots,NormalizeDouble(Ask,digits),Slippage,SL,TP,"MR.dollar EA",MagicNumber,0,Blue);
                 
    PlaySound("Alert.wav");
               
              }
           }
           
        
        
        
    /////////////////////
        
        
    if ((ma22>=ma11&&ma2<ma1)&&(NormalizeDouble(GlobalVariableGet("x"),digits)-NormalizeDouble(Bid,digits))/point>=XDistance  ){
           
           if(
    orderscnt()<MaxTrades){
             if(
    StopLoss==0){SL=0;}else{SL=Bid+StopLoss*Point;}
               if(
    TakeProfit==0){TP=0;}else{TP=Bid-TakeProfit*Point;}
               
                
    OrderSend(Symbol(),OP_SELL,Lots,NormalizeDouble(Bid,digits),Slippage,SL,TP,"MR.dollar EA",MagicNumber,0,Red); 
                 
    PlaySound("Alert.wav");
               
                 
              }
           }
        } 
    سوف أقوم بتغيير إسمها لتصبح مثلا MaCrosses
    كود PHP:
     int MaCrosses()
       {
       
    Comment("Programmed by MR.dollar"+"\n"+"منتدى المتداول العربي "+"\n"+"www.arabictrader.com/vb");
      
            
    //////////////////////////////////////////////////
           
           
    double ma1,ma2,ma11,ma22,rsi1,rsi2,ma3,ma33,ma4,ma44;
          
           
    ma1=iMA(NULL,0,Slowma,SlowMa_Shift,Slowma_Mode,PRICE_CLOSE,0);
           
    ma11=iMA(NULL,0,Slowma,SlowMa_Shift,Slowma_Mode,PRICE_CLOSE,1);
           
    ma2=iMA(NULL,0,Fastma,FastMa_Shift,Fastma_Mode,PRICE_CLOSE,0);
           
    ma22=iMA(NULL,0,Fastma,FastMa_Shift,Fastma_Mode,PRICE_CLOSE,1);
          
       
    ////////////////////////////////////////////////////
          
    double SL,TP
          
         
        if(
    MMLots subLotSize();
          if ( (
    ma22<=ma11&&ma2>ma1)&&(NormalizeDouble(Bid,digits)-NormalizeDouble(GlobalVariableGet("x"),digits))/point>=XDistance
          
    )
           {
           
    CloseSellOrders();
           }
           
           if ((
    ma22>=ma11&&ma2<ma1)&&(NormalizeDouble(GlobalVariableGet("x"),digits)-NormalizeDouble(Bid,digits))/point>=XDistance
         
    )
         
        {
        
    CloseBuyOrders();
        }
        if(((
    ma22<ma11&&ma2>ma1)||(ma22>ma11&&ma2<ma1))&&Time00!=Time[0]){
        
    GlobalVariableSet("x",Bid);
      
        
    Time00=Time[0];
        }
         
        
    ////////////////////////////////
         
    if (UseHourTrade){
            if(!(
    Hour()>=FromHourTrade&&Hour()<ToHourTrade)){
               
    Comment("Non-Trading Hours!");
               return(
    0);
             }
           }
              
        if ((
    ma22<=ma11&&ma2>ma1)&&(NormalizeDouble(Bid,digits)-NormalizeDouble(GlobalVariableGet("x"),digits))/point>=XDistance ){
           
           if(
    orderscnt()<MaxTrades){
             if(
    StopLoss==0){SL=0;}else{SL=Ask-StopLoss*Point;}
               if(
    TakeProfit==0){TP=0;}else{TP=Ask+TakeProfit*Point;}
               
                
    OrderSend(Symbol(),OP_BUY,Lots,NormalizeDouble(Ask,digits),Slippage,SL,TP,"MR.dollar EA",MagicNumber,0,Blue);
                 
    PlaySound("Alert.wav");
               
              }
           }
           
        
        
        
    /////////////////////
        
        
    if ((ma22>=ma11&&ma2<ma1)&&(NormalizeDouble(GlobalVariableGet("x"),digits)-NormalizeDouble(Bid,digits))/point>=XDistance  ){
           
           if(
    orderscnt()<MaxTrades){
             if(
    StopLoss==0){SL=0;}else{SL=Bid+StopLoss*Point;}
               if(
    TakeProfit==0){TP=0;}else{TP=Bid-TakeProfit*Point;}
               
                
    OrderSend(Symbol(),OP_SELL,Lots,NormalizeDouble(Bid,digits),Slippage,SL,TP,"MR.dollar EA",MagicNumber,0,Red); 
                 
    PlaySound("Alert.wav");
               
                 
              }
           }
        } 
    ثم أقوم بوضع كل هذا الكود كأنه داله عاديه في الإكسبرت الأول
    وأقوم بإستدعاء هذه الداله داخل الداله start للإكسبرت الأول
    وطبعا لا تنسى إذا كان يوجد دوال أخرى في الإكسبرت تقوم أيضا بتعريفها أو متغيرات خارجيه تقوم بتعريفها

    أيضا بالنسبه للدوال init و deinit سوف تقوم بتغيير أسمائهم
    ثم تستدعيهم أيضا بداخل الداله init و deinit للإكسبرت الأول

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

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

  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