صفحة 8 من 12 الأولىالأولى ... 23456789101112 الأخيرةالأخيرة
النتائج 106 إلى 120 من 175
  1. #106
    الصورة الرمزية hand
    hand غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Nov 2010
    المشاركات
    1

    افتراضي رد: دورة صناعة الاكسبيرتات

    الاستاذ الفاضل وضاح عطار.

    اشكرك على الموضوع القيم.

    لقد كنت في الماضي ابحث عن من يعمل لي مؤشر يقوم بحفظ قيمة الصفقة open position price في متغير ثم اقوم بعد ذلك باجراء عدة معادلات على هذا المتغير. واتضح فيما بعد بان هذا العمل لا يتم عن طريق صنع مؤشر بل عن طريق الاكسبيرت.

    وما اريده هو التالي:
    1- متغير يحتفظ بسعر فتح الصفقة.
    2- نقوم باجراء معادلات حسابية على هذا المتغير. فعلى سبيل المثال نختار فترة زمنية (frame time) ساعة واحدة، ويكون كالتالي:

    اذا
    اعلى سعر في الساعة - قيمة المتغير >= 0.0020

    اغلق الصفقة.

    وشكرا( انا هذا الموضوع الذي طرحته اخي وضاح العطار شيق للغاية وسوف اكون في غاية السعادة اذا اريتنا الكود لعمل ذلك ولك كل الحب والشكر).

  2. #107
    الصورة الرمزية Sniper man
    Sniper man غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Jul 2010
    الإقامة
    الإمارات العربية المتحدة
    المشاركات
    1,907

    افتراضي رد: دورة صناعة الاكسبيرتات

    اشكر الاخوة القائمين على هذا الموضوع ( الأخ مستر دولار - الأخ وضاح العطار وجميع الاخوة هنا )

    اخوتي هذا اول سؤال لي هنا وانا مبتدأ بالنسبة لموضوع البرمجة

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

    الاكسبيرت هو اكسبيرت عادي ويقوم على تقاطع خطوط الموفيج .. ويقوم بالدخول بيع أو شراء عند التقاطع

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

    وهاهو النص البرمجي للاكسبيرت

    كود PHP:
    //+------------------------------------------------------------------+ 
    //|                                                        malaz.mq4 | 
    //|                      Copyright © 2010, malaz                     | 
    //|                                      
    //+------------------------------------------------------------------+ 
    #property copyright "malaz" 
    #property link      "[email protected]

    extern string  mm_parameters "------------- Money Management"
    extern double Lots 1
    extern string s5="--------------- order Management"
    extern int StopLoss=100
    extern int TakeProfit=100
     
    extern int MagicNumber=2533
      
      
      
      

       

    //+------------------------------------------------------------------+ 
    //| expert initialization function                                   | 
    //+------------------------------------------------------------------+ 
    int init() 
      { 
    //---- 
        
    //---- 
       
    return(0); 
      } 
    //+------------------------------------------------------------------+ 
    //| expert deinitialization function                                 | 
    //+------------------------------------------------------------------+ 
    int deinit() 
      { 
    //---- 
        
    //---- 
       
    return(0); 
      } 
    //+------------------------------------------------------------------+ 
    //| expert start function                                            | 
    //+------------------------------------------------------------------+ 
    int start() 
      { 

        
          
    ////////////////////////////////////////////////// 
            
           
    double ma1,ma2,ma11,ma22
           
           
    ma1=iMA(NULL,0,20,0,MODE_EMA,PRICE_CLOSE,2); 
           
    ma11=iMA(NULL,0,20,0,MODE_EMA,PRICE_CLOSE,1); 
           
    ma2=iMA(NULL,0,50,0,MODE_EMA,PRICE_CLOSE,2); 
           
    ma22=iMA(NULL,0,50,0,MODE_EMA,PRICE_CLOSE,1); 
            
           
       
    //////////////////////////////////////////////////// 
          
    double SL,TP;  
         
         
        
    //////////////////////////////// 
        
               
        
    if (ma1<ma2&& ma11>ma22){ 
            
             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,Ask,3,SL,TP,"malaz",MagicNumber,0,Blue); 
                 
    PlaySound("Alert.wav"); 
                 
              } 
            
            
         
         
        
    ///////////////////// 
         
        
    if (ma1>ma2&&ma11<ma22 ){ 
            
             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,Bid,3,SL,TP,"malaz",MagicNumber,0,Red);  
                 
    PlaySound("Alert.wav"); 
                 
                  
              } 
    آخر تعديل بواسطة Sniper man ، 02-12-2010 الساعة 06:02 PM

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

    افتراضي رد: دورة صناعة الاكسبيرتات

    اقتباس المشاركة الأصلية كتبت بواسطة Sniper man مشاهدة المشاركة
    اشكر الاخوة القائمين على هذا الموضوع ( الأخ مستر دولار - الأخ وضاح العطار وجميع الاخوة هنا )

    اخوتي هذا اول سؤال لي هنا وانا مبتدأ بالنسبة لموضوع البرمجة

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

    الاكسبيرت هو اكسبيرت عادي ويقوم على تقاطع خطوط الموفيج .. ويقوم بالدخول بيع أو شراء عند التقاطع

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

    وهاهو النص البرمجي للاكسبيرت

    كود PHP:
    //+------------------------------------------------------------------+ 
    //|                                                        malaz.mq4 | 
    //|                      Copyright © 2010, malaz                     | 
    //|                                      
    //+------------------------------------------------------------------+ 
    #property copyright "malaz" 
    #property link      "[email protected]

    extern string  mm_parameters "------------- Money Management"
    extern double Lots 1
    extern string s5="--------------- order Management"
    extern int StopLoss=100
    extern int TakeProfit=100
     
    extern int MagicNumber=2533
      
      
      
      

       

    //+------------------------------------------------------------------+ 
    //| expert initialization function                                   | 
    //+------------------------------------------------------------------+ 
    int init() 
      { 
    //---- 
        
    //---- 
       
    return(0); 
      } 
    //+------------------------------------------------------------------+ 
    //| expert deinitialization function                                 | 
    //+------------------------------------------------------------------+ 
    int deinit() 
      { 
    //---- 
        
    //---- 
       
    return(0); 
      } 
    //+------------------------------------------------------------------+ 
    //| expert start function                                            | 
    //+------------------------------------------------------------------+ 
    int start() 
      { 

        
          
    ////////////////////////////////////////////////// 
            
           
    double ma1,ma2,ma11,ma22
           
           
    ma1=iMA(NULL,0,20,0,MODE_EMA,PRICE_CLOSE,2); 
           
    ma11=iMA(NULL,0,20,0,MODE_EMA,PRICE_CLOSE,1); 
           
    ma2=iMA(NULL,0,50,0,MODE_EMA,PRICE_CLOSE,2); 
           
    ma22=iMA(NULL,0,50,0,MODE_EMA,PRICE_CLOSE,1); 
            
           
       
    //////////////////////////////////////////////////// 
          
    double SL,TP;  
         
         
        
    //////////////////////////////// 
        
               
        
    if (ma1<ma2&& ma11>ma22){ 
            
             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,Ask,3,SL,TP,"malaz",MagicNumber,0,Blue); 
                 
    PlaySound("Alert.wav"); 
                 
              } 
            
            
         
         
        
    ///////////////////// 
         
        
    if (ma1>ma2&&ma11<ma22 ){ 
            
             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,Bid,3,SL,TP,"malaz",MagicNumber,0,Red);  
                 
    PlaySound("Alert.wav"); 
                 
                  
              } 
    تفضل هذا الكود على سبيل المثال
    كود PHP:
    Open[0]>ma1&&Close[0]<=ma1+Distance*point&&Close[0]>=ma1 
    لو لاحظت الشروط السابقه سوف تجد إذا كان الإفتتاح أكبر من ma1 وهو المتغير الذي أعطيناه قيمة الموفينج ثم إذا أصبح السعر الحالي أقل من ma1+Distance*point والمتغير Distance هو عدد نقاط معينه قمنا بتحديده في خصائص الإكسبرت بحيث إذا كان السعر لامس الموفينج على بعد عدد معين من النقاط فإننا نعتبرها ملامسه وإرتداد
    في هذه الحاله نقوم بفتح صفقه شراء
    وستكون الشروط بالعكس في حالة البيع

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

  4. #109
    الصورة الرمزية Sniper man
    Sniper man غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Jul 2010
    الإقامة
    الإمارات العربية المتحدة
    المشاركات
    1,907

    افتراضي رد: دورة صناعة الاكسبيرتات

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    تفضل هذا الكود على سبيل المثال
    كود PHP:
    Open[0]>ma1&&Close[0]<=ma1+Distance*point&&Close[0]>=ma1 
    لو لاحظت الشروط السابقه سوف تجد إذا كان الإفتتاح أكبر من ma1 وهو المتغير الذي أعطيناه قيمة الموفينج ثم إذا أصبح السعر الحالي أقل من ma1+Distance*point والمتغير Distance هو عدد نقاط معينه قمنا بتحديده في خصائص الإكسبرت بحيث إذا كان السعر لامس الموفينج على بعد عدد معين من النقاط فإننا نعتبرها ملامسه وإرتداد
    في هذه الحاله نقوم بفتح صفقه شراء
    وستكون الشروط بالعكس في حالة البيع

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

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

    لكن سؤالي اللذي ابحث عن اجابة له الآن هو كيف اعرف distance
    هل من الممكن ان تقوم بالتعديل على الاكسبيرت اللذي وضعته لك بأن تضيف السطر البرمجي للشرط وتعرف لي الديستينس في خصائص الاكسبيرت
    علما بأني حاولت التعريف لها بالعبارة التالية
    extern double Distance = 0,0020*point
    ولكنه بعد فحصه يعطيني البرنامج بأنه هناك خطأ والعبارة التي يعطيني اياها هي
    variable expected
    مع اشارة خطأ حمراء صغيرة بجانبها

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

  5. #110
    الصورة الرمزية raidy
    raidy غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Sep 2010
    الإقامة
    تعز - اليمن
    المشاركات
    736

    افتراضي رد: دورة صناعة الاكسبيرتات

    هل بالامكان توضيح معنى العناوين البرمجيه وما هي وضيفة كل عنوان وبماذا يقوم من عمل وكيف يتم الضبط فانا لا افهم بالبمجة بصورة جيده ولكن دخلت الى محتويات الاكبيرت المصمم من قبل المستر دولار واردت وضع تعديل فيه بحيث ان الاكسبيرت ياخذ الصفقة عند اشارة التقاطع ويغلق الصفقة عند عكس الاشارة وفتح صفقة جديده، واريد اضافة امر اذا كانت الصفقة تحركة الى اتجاه الاردر مثلا" ب 10 نقاط يبداء الاستوب لوس بالتفعيل بتحديد المستوى الاول عند قيمة الاردر وكل ما تحرك المؤشر 5 نقاط باتجاه الاردر يتحرك الاستوب لوس ب 5 نقاط حتى يصل الاردر الى التيك بروفيت 100نقطه مثلا"، ولكني لم استطع التعديل فهل هذه المسطلحات تفي بالغرض وكيف ظبطها.
    extern int BreakEven=0;
    extern int movestopto=0;

    extern int TrailingStop=0;
    extern int TrailingStep=0;

  6. #111
    الصورة الرمزية walid002
    walid002 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Feb 2011
    المشاركات
    229

    04 رد: دورة صناعة الاكسبيرتات

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

  7. #112
    الصورة الرمزية hassas_sa
    hassas_sa غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2008
    المشاركات
    98

    افتراضي رد: دورة صناعة الاكسبيرتات

    السلام عليكم

    مشرفنا العزيز الاخ دولار

    احاول الاستفاده من هذا الموضوع المهم قدر المستطاع

    ولكن اود معرفة كيفية صنع اكسبيرت ب استدعاء مؤشر custom

    ارجو افادتى بالكود الخاص بذلك

    تحياتى و تقديري

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

    افتراضي رد: دورة صناعة الاكسبيرتات

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

    مشرفنا العزيز الاخ دولار

    احاول الاستفاده من هذا الموضوع المهم قدر المستطاع

    ولكن اود معرفة كيفية صنع اكسبيرت ب استدعاء مؤشر custom

    ارجو افادتى بالكود الخاص بذلك

    تحياتى و تقديري
    وعليكم السلام ورحمة الله وبركاته
    راجع هذه المشاركه

    https://forum.arabictrader.com/t93679.html#post1651054
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  9. #114
    الصورة الرمزية sameer digital
    sameer digital غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Dec 2007
    المشاركات
    222

    افتراضي رد: دورة صناعة الاكسبيرتات

    كود PHP:
    extern int point1=55;
    extern int point2=100;
    extern int point3=150;
    extern int point4=200;
    extern int point5=250;
    extern int point6=300;
    extern int point7=350;
    extern int point8=400;
    extern int point9=450;
    extern int point10=500;
    extern int point11=550;
    extern int point12=600;
    extern int point1=-55;
    extern int point2=-100;
    extern int point3=-150;
    extern int point4=-200;
    extern int point5=-250;
    extern int point6=-300;
    extern int point7=-350;
    extern int point8=-400;
    extern int point9=-450;
    extern int point10=-500;
    extern int point11=-550;
    extern int point12=-600;
    extern int magic=123477899;

    extern int i=1;
    int A;
    int slipage=3;

    int init()
      {
      
      if (
    Digits==|| Digits==3){
      
      
    point1=point1*10;
      
    point2=point2*10;
      
    point3=point3*10;
      
    point4=point4*10;
      
    point5=point5*10;
      
    point6=point6*10;
      
    point7=point7*10;
      
    Point8=point8*10;
      
    point1=point9*10;
      
    point2=point10*10;
      
    point3=point11*10;
      
    point4=point12*10;
      
    point5=point13*10;
      
    point6=point14*10;
      
    point7=point15*10;
      
    point8=point16*10;
      
    point1=point17*10;
      
    point2=point18*10;
      
    point3=point19*10;
      
    point4=point20*10;
      
    point5=point21*10;
      
    point6=point22*10;
      
    point7=point23*10;
      
    point8=point24*10;
      
    slipage=slipage*10;
      
      
      }
      
      return(
    0);
      
      }
    //+------------------------------------------------------------------+
    //| expert deinitialization function                                 |
    //+------------------------------------------------------------------+
    //+------------------------------------------------------------------+
    //| expert start function                                            |
    //+------------------------------------------------------------------+
    int start()
      {
      
    double buy =Ask;
    double sell=Bid;
    double MA=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i);

      
    double ExtMapBuffer1=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point1*Point;
    double ExtMapBuffer2=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point2*Point;
    double ExtMapBuffer3=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point3*Point;
    double ExtMapBuffer4=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point4*Point;
    double ExtMapBuffer5=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point5*Point;
    double ExtMapBuffer6=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point6*Point;
    double ExtMapBuffer7=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point7*Point;
    double ExtMapBuffer8=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point8*Point;
    double ExtMapBuffer9=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point9*Point;
    double ExtMapBuffer10=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point10*Point;
    double ExtMapBuffer11=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point11*Point;
    double ExtMapBuffer12=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point12*Point;
    //---------------------------------------------------------------------------------
    double ExtMapBuffer13=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point13*Point;
    double ExtMapBuffer14=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point14*Point;
    double ExtMapBuffer15=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point15*Point;
    double ExtMapBuffer16=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point16*Point;
    double ExtMapBuffer17=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point17*Point;
    double ExtMapBuffer18=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point18*Point;
    double ExtMapBuffer19=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point19*Point;
    double ExtMapBuffer20=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point20*Point;
    double ExtMapBuffer21=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point21*Point;
    double ExtMapBuffer22=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point22*Point;
    double ExtMapBuffer23=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point23*Point;
    double ExtMapBuffer24=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point24*Point;
    ///////////////////////////////////////////////////////////////////////////////////////////////
    if (sell>=ExtMapBuffer1 && OrdersTotal()==0){A=1;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer2 && OrdersTotal()==1){A=2;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer3 && OrdersTotal()==2){A=3;open_sell(lot*(OrdersTotal()+2),0,0);}
    if (
    sell>=ExtMapBuffer4 && OrdersTotal()==3){A=4;open_sell(lot*(OrdersTotal()+5),0,0);}
    if (
    sell>=ExtMapBuffer5 && OrdersTotal()==1){A=5;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer6 && OrdersTotal()==2){A=6;open_sell(lot*(OrdersTotal()+2),0,0);}
    if (
    sell>=ExtMapBuffer7 && OrdersTotal()==3){A=7;open_sell(lot*(OrdersTotal()+5),0,0);}
    if (
    sell>=ExtMapBuffer8 && OrdersTotal()==0){A=8;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer9 && OrdersTotal()==1){A=9;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer10 && OrdersTotal()==2){A=10;open_sell(lot*(OrdersTotal()+2),0,0);}
    if (
    sell>=ExtMapBuffer11 && OrdersTotal()==3){A=11;open_sell(lot*(OrdersTotal()+5),0,0);}
    if (
    sell>=ExtMapBuffer12 && OrdersTotal()==1){A=12;open_sell(lot*(OrdersTotal()+1),0,0);}
     
     
    //_______________________________________________

    //________________________________________________

    if (sell>=ExtMapBuffer13 && OrdersTotal()==0){A=13;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer14 && OrdersTotal()==1){A=14;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer15 && OrdersTotal()==2){A=15;open_sell(lot*(OrdersTotal()+2),0,0);}
    if (
    sell>=ExtMapBuffer16 && OrdersTotal()==3){A=16;open_sell(lot*(OrdersTotal()+5),0,0);}
    if (
    sell>=ExtMapBuffer17 && OrdersTotal()==1){A=17;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer18 && OrdersTotal()==2){A=18;open_sell(lot*(OrdersTotal()+2),0,0);}
    if (
    sell>=ExtMapBuffer19 && OrdersTotal()==3){A=19;open_sell(lot*(OrdersTotal()+5),0,0);}
    if (
    sell>=ExtMapBuffer20 && OrdersTotal()==0){A=20;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer21 && OrdersTotal()==1){A=21;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer22 && OrdersTotal()==2){A=22;open_sell(lot*(OrdersTotal()+2),0,0);}
    if (
    sell>=ExtMapBuffer23 && OrdersTotal()==3){A=23;open_sell(lot*(OrdersTotal()+5),0,0);}
    if (
    sell>=ExtMapBuffer24 && OrdersTotal()==1){A=24;open_sell(lot*(OrdersTotal()+1),0,0);} 
    اين الخطأ في هذا الكود

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

    افتراضي رد: دورة صناعة الاكسبيرتات

    اقتباس المشاركة الأصلية كتبت بواسطة sameer digital مشاهدة المشاركة
    كود PHP:
    extern int point1=55;
    extern int point2=100;
    extern int point3=150;
    extern int point4=200;
    extern int point5=250;
    extern int point6=300;
    extern int point7=350;
    extern int point8=400;
    extern int point9=450;
    extern int point10=500;
    extern int point11=550;
    extern int point12=600;
    extern int point1=-55;
    extern int point2=-100;
    extern int point3=-150;
    extern int point4=-200;
    extern int point5=-250;
    extern int point6=-300;
    extern int point7=-350;
    extern int point8=-400;
    extern int point9=-450;
    extern int point10=-500;
    extern int point11=-550;
    extern int point12=-600;
    extern int magic=123477899;

    extern int i=1;
    int A;
    int slipage=3;

    int init()
      {
      
      if (
    Digits==|| Digits==3){
      
      
    point1=point1*10;
      
    point2=point2*10;
      
    point3=point3*10;
      
    point4=point4*10;
      
    point5=point5*10;
      
    point6=point6*10;
      
    point7=point7*10;
      
    Point8=point8*10;
      
    point1=point9*10;
      
    point2=point10*10;
      
    point3=point11*10;
      
    point4=point12*10;
      
    point5=point13*10;
      
    point6=point14*10;
      
    point7=point15*10;
      
    point8=point16*10;
      
    point1=point17*10;
      
    point2=point18*10;
      
    point3=point19*10;
      
    point4=point20*10;
      
    point5=point21*10;
      
    point6=point22*10;
      
    point7=point23*10;
      
    point8=point24*10;
      
    slipage=slipage*10;
      
      
      }
      
      return(
    0);
      
      }
    //+------------------------------------------------------------------+
    //| expert deinitialization function                                 |
    //+------------------------------------------------------------------+
    //+------------------------------------------------------------------+
    //| expert start function                                            |
    //+------------------------------------------------------------------+
    int start()
      {
      
    double buy =Ask;
    double sell=Bid;
    double MA=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i);

      
    double ExtMapBuffer1=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point1*Point;
    double ExtMapBuffer2=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point2*Point;
    double ExtMapBuffer3=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point3*Point;
    double ExtMapBuffer4=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point4*Point;
    double ExtMapBuffer5=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point5*Point;
    double ExtMapBuffer6=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point6*Point;
    double ExtMapBuffer7=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point7*Point;
    double ExtMapBuffer8=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point8*Point;
    double ExtMapBuffer9=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point9*Point;
    double ExtMapBuffer10=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point10*Point;
    double ExtMapBuffer11=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point11*Point;
    double ExtMapBuffer12=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point12*Point;
    //---------------------------------------------------------------------------------
    double ExtMapBuffer13=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point13*Point;
    double ExtMapBuffer14=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point14*Point;
    double ExtMapBuffer15=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point15*Point;
    double ExtMapBuffer16=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point16*Point;
    double ExtMapBuffer17=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point17*Point;
    double ExtMapBuffer18=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point18*Point;
    double ExtMapBuffer19=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point19*Point;
    double ExtMapBuffer20=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point20*Point;
    double ExtMapBuffer21=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point21*Point;
    double ExtMapBuffer22=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point22*Point;
    double ExtMapBuffer23=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point23*Point;
    double ExtMapBuffer24=iMA(NULL,0,period_MA,0,MODE_EMA,MODE_CLOSE,i)+point24*Point;
    ///////////////////////////////////////////////////////////////////////////////////////////////
    if (sell>=ExtMapBuffer1 && OrdersTotal()==0){A=1;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer2 && OrdersTotal()==1){A=2;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer3 && OrdersTotal()==2){A=3;open_sell(lot*(OrdersTotal()+2),0,0);}
    if (
    sell>=ExtMapBuffer4 && OrdersTotal()==3){A=4;open_sell(lot*(OrdersTotal()+5),0,0);}
    if (
    sell>=ExtMapBuffer5 && OrdersTotal()==1){A=5;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer6 && OrdersTotal()==2){A=6;open_sell(lot*(OrdersTotal()+2),0,0);}
    if (
    sell>=ExtMapBuffer7 && OrdersTotal()==3){A=7;open_sell(lot*(OrdersTotal()+5),0,0);}
    if (
    sell>=ExtMapBuffer8 && OrdersTotal()==0){A=8;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer9 && OrdersTotal()==1){A=9;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer10 && OrdersTotal()==2){A=10;open_sell(lot*(OrdersTotal()+2),0,0);}
    if (
    sell>=ExtMapBuffer11 && OrdersTotal()==3){A=11;open_sell(lot*(OrdersTotal()+5),0,0);}
    if (
    sell>=ExtMapBuffer12 && OrdersTotal()==1){A=12;open_sell(lot*(OrdersTotal()+1),0,0);}
     
     
    //_______________________________________________

    //________________________________________________

    if (sell>=ExtMapBuffer13 && OrdersTotal()==0){A=13;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer14 && OrdersTotal()==1){A=14;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer15 && OrdersTotal()==2){A=15;open_sell(lot*(OrdersTotal()+2),0,0);}
    if (
    sell>=ExtMapBuffer16 && OrdersTotal()==3){A=16;open_sell(lot*(OrdersTotal()+5),0,0);}
    if (
    sell>=ExtMapBuffer17 && OrdersTotal()==1){A=17;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer18 && OrdersTotal()==2){A=18;open_sell(lot*(OrdersTotal()+2),0,0);}
    if (
    sell>=ExtMapBuffer19 && OrdersTotal()==3){A=19;open_sell(lot*(OrdersTotal()+5),0,0);}
    if (
    sell>=ExtMapBuffer20 && OrdersTotal()==0){A=20;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer21 && OrdersTotal()==1){A=21;open_sell(lot*(OrdersTotal()+1),0,0);}
    if (
    sell>=ExtMapBuffer22 && OrdersTotal()==2){A=22;open_sell(lot*(OrdersTotal()+2),0,0);}
    if (
    sell>=ExtMapBuffer23 && OrdersTotal()==3){A=23;open_sell(lot*(OrdersTotal()+5),0,0);}
    if (
    sell>=ExtMapBuffer24 && OrdersTotal()==1){A=24;open_sell(lot*(OrdersTotal()+1),0,0);} 
    اين الخطأ في هذا الكود
    هل الخطأ الذي تقصده في شروط الدخول أم طريقة كتابة الكود وأخطاء مطبعيه
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  11. #116
    الصورة الرمزية sameer digital
    sameer digital غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Dec 2007
    المشاركات
    222

    افتراضي رد: دورة صناعة الاكسبيرتات

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    هل الخطأ الذي تقصده في شروط الدخول أم طريقة كتابة الكود وأخطاء مطبعيه
    في شروط الدخول استاذ ي الكريم واذا كان هناك اخطاء مطبعية يا ريت توضحها ولك الشكر

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

    افتراضي رد: دورة صناعة الاكسبيرتات

    اقتباس المشاركة الأصلية كتبت بواسطة sameer digital مشاهدة المشاركة
    في شروط الدخول استاذ ي الكريم واذا كان هناك اخطاء مطبعية يا ريت توضحها ولك الشكر
    أول خطأ في المتغيرات الخارجيه فلا أدري لماذا قمت بتعريف المتغير بنفس الإسم مرتين
    extern int point1=55
    extern int point1=-55
    فلا يمكن أن نقوم بتعريف نفس المتغير مرتين لذلك قم بتغيير الإسم
    بالنسبه للشرط
    sell>=ExtMapBuffer1
    فأحب أن أوضح فقط أن الإكسبرت في هذه الحاله سوف يقوم بالدخول في الصفقه دائما دالما السعر أكبر من
    المتغير ExtMapBuffer1 وليس فقط عند الملامسه الأولى لذلك قم بإضافة بعض الشروط الأخرى لحل هذه المشكله
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  13. #118
    الصورة الرمزية robin
    robin غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2011
    المشاركات
    12

    افتراضي رد: دورة صناعة الاكسبيرتات

    اخى مستر دولار ارجو مساعدتى فى مفاهيم البرمجة وقد قرأت مواضيعك التعليميه مثل اكسبرت الباربولك سار وحاولت عمل اكسبرت مضاعفات عكسيه بنفس طريقة عمله لكى اتعلم و لكنه فشل ولهذا لدى بعض الاسئلة بشكل عام:
    1-الدالة int orderstotal() كيف ستتغير القيمة cnt وانت كما ذكرت ان الدالة يمر عليها الاكسبرت مرة واحده فقط عند بداية عمله.
    2- الدالة int init() if(Digits<4 point=0.01 else point=0.0001 digits=4
    اليس المفروض ان يكون digits=5وليس 4 وpoint=0.00001 للشركات التى تستخدم خمس ارقام.
    3-الدالة voidهل هى خارج الدالة start ام دخلها و لماذا؟
    4-الاكسبرت المرفق للمضاعفات فكرته حصر السعر بين حد علوى و سفلى فمثلا عند وصوله للحد العلوى يتم فتح صفقة شراء وفى نفس الوقت يفتح صفقة معلقة بيع لوت مضاعف عند الحد السفلى ولا يتم فتح صفقات اكثر من صفقة مفعله و صفقة معلقة وعند وصول السعر للهدف يتم الغاء الصفقة المعلقة .
    ارجو مناقشة الاخطاء فى مفاهيم الاكسبرت .
    5-شكرا اخى العزيز.
    الملفات المرفقة الملفات المرفقة

  14. #119
    الصورة الرمزية islammohammedhassan
    islammohammedhassan غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Sep 2010
    المشاركات
    10

    افتراضي رد: دورة صناعة الاكسبيرتات

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

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

    افتراضي رد: دورة صناعة الاكسبيرتات

    اقتباس المشاركة الأصلية كتبت بواسطة robin مشاهدة المشاركة
    اخى مستر دولار ارجو مساعدتى فى مفاهيم البرمجة وقد قرأت مواضيعك التعليميه مثل اكسبرت الباربولك سار وحاولت عمل اكسبرت مضاعفات عكسيه بنفس طريقة عمله لكى اتعلم و لكنه فشل ولهذا لدى بعض الاسئلة بشكل عام:
    1-الدالة int orderstotal() كيف ستتغير القيمة cnt وانت كما ذكرت ان الدالة يمر عليها الاكسبرت مرة واحده فقط عند بداية عمله.
    2- الدالة int init() if(Digits<4 point=0.01 else point=0.0001 digits=4
    اليس المفروض ان يكون digits=5وليس 4 وpoint=0.00001 للشركات التى تستخدم خمس ارقام.
    3-الدالة voidهل هى خارج الدالة start ام دخلها و لماذا؟
    4-الاكسبرت المرفق للمضاعفات فكرته حصر السعر بين حد علوى و سفلى فمثلا عند وصوله للحد العلوى يتم فتح صفقة شراء وفى نفس الوقت يفتح صفقة معلقة بيع لوت مضاعف عند الحد السفلى ولا يتم فتح صفقات اكثر من صفقة مفعله و صفقة معلقة وعند وصول السعر للهدف يتم الغاء الصفقة المعلقة .
    ارجو مناقشة الاخطاء فى مفاهيم الاكسبرت .
    5-شكرا اخى العزيز.
    الداله التي يمر عليها الإكسبرت مره واحده فقط هي الداله init
    فلاحظ يوجد فرق بين الداله init وبين الكلمة المحجوزه int وهي لتعريف متغير على أنه عدد صحيح
    أما الداله orderstotal فهذا الداله قمنا ببرمجتها ثم بعد ذلك إستدعائها داخل الداله الأصليه start وبالتالي في كل مره يتم عمل الداله start سوف تكون الداله orderstotal بداخلها ويتم إستدعائها

    بالنسبه للشركات التي تستخدم خمس أرقام فعلى سبيل المثال إذا أردت وضع الهدف 50 نقطه بالتالي إذا كانت العمله اليورو دولار والسعر 1.4030 فسوف يكون الهدف حسب كلامك 1.4030+50*0.00001
    فالناتج 1.4035 أما إذا جعلتها 0.0001 فالناتج 1.4030+50*0.0001 = 1.4080 وهو الصحيح

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

صفحة 8 من 12 الأولىالأولى ... 23456789101112 الأخيرةالأخيرة

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

  1. طلب صناعة إكسبرت RSI
    By FOREX_WAR in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EA
    مشاركات: 22
    آخر مشاركة: 29-04-2017, 10:58 PM
  2. طلب = صناعة سكربت
    By cobra100 in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EA
    مشاركات: 6
    آخر مشاركة: 28-10-2008, 02:41 PM
  3. طريقة صناعة الاكسبيرتات الاليه
    By ماجد كو in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EA
    مشاركات: 24
    آخر مشاركة: 05-05-2008, 03:02 PM

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


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