النتائج 1 إلى 6 من 6
  1. #1
    الصورة الرمزية lovely2kitten
    lovely2kitten غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Feb 2009
    الإقامة
    القاهرة
    العمر
    39
    المشاركات
    45

    افتراضي سؤال عن وظيفة SetIndexDrawBegin

    ارجو من اساتذتنا الافاضل ان يقوموا بشرح تلك الوظيفه فقد مللت فعلا من Mql4 Documents
    الوظيفه مستخدمه على سبيل المثال فى مؤشر hekin ashi
    وهذا هو الكود الكامل للمؤشر
    كود PHP:
    //+------------------------------------------------------------------+
    //|                                                  Heiken Ashi.mq4 |
    //|                      Copyright c 2004, MetaQuotes Software Corp. |
    //|                                        http://www.metaquotes.net |
    //+------------------------------------------------------------------+
    //| For Heiken Ashi we recommend next chart settings ( press F8 or   |
    //| select on menu 'Charts'->'Properties...'):                       |
    //|  - On 'Color' Tab select 'Black' for 'Line Graph'                |
    //|  - On 'Common' Tab disable 'Chart on Foreground' checkbox and    |
    //|    select 'Line Chart' radiobutton                               |
    //+------------------------------------------------------------------+
    #property copyright "Copyright © 2004, MetaQuotes Software Corp."
    #property link      "http://www.metaquotes.net"

    #property indicator_chart_window
    #property indicator_buffers 4
    #property indicator_color1 Red
    #property indicator_color2 White
    #property indicator_color3 Red
    #property indicator_color4 White
    #property indicator_width1 1
    #property indicator_width2 1
    #property indicator_width3 3
    #property indicator_width4 3

    //----
    extern color color1 Red;
    extern color color2 White;
    extern color color3 Red;
    extern color color4 White;
    //---- buffers
    double ExtMapBuffer1[];
    double ExtMapBuffer2[];
    double ExtMapBuffer3[];
    double ExtMapBuffer4[];
    //----
    int ExtCountedBars=0;
    //+------------------------------------------------------------------+
    //| Custom indicator initialization function                         |
    //|------------------------------------------------------------------|
    int init()
      {
    //---- indicators
       
    SetIndexStyle(0,DRAW_HISTOGRAM01color1);
       
    SetIndexBuffer(0ExtMapBuffer1);
       
    SetIndexStyle(1,DRAW_HISTOGRAM01color2);
       
    SetIndexBuffer(1ExtMapBuffer2);
       
    SetIndexStyle(2,DRAW_HISTOGRAM03color3);
       
    SetIndexBuffer(2ExtMapBuffer3);
       
    SetIndexStyle(3,DRAW_HISTOGRAM03color4);
       
    SetIndexBuffer(3ExtMapBuffer4);
    //----
       
    SetIndexDrawBegin(0,10);
       
    SetIndexDrawBegin(1,10);
       
    SetIndexDrawBegin(2,10);
       
    SetIndexDrawBegin(3,10);
    //---- indicator buffers mapping
       
    SetIndexBuffer(0,ExtMapBuffer1);
       
    SetIndexBuffer(1,ExtMapBuffer2);
       
    SetIndexBuffer(2,ExtMapBuffer3);
       
    SetIndexBuffer(3,ExtMapBuffer4);
    //---- initialization done
       
    return(0);
      }
    //+------------------------------------------------------------------+
    //| Custom indicator deinitialization function                       |
    //+------------------------------------------------------------------+
    int deinit()
      {
    //---- TODO: add your code here
       
    //----
       
    return(0);
      }
    //+------------------------------------------------------------------+
    //| Custom indicator iteration function                              |
    //+------------------------------------------------------------------+
    int start()
      {
       
    double haOpenhaHighhaLowhaClose;
       if(
    Bars<=10) return(0);
       
    ExtCountedBars=IndicatorCounted();
    //---- check for possible errors
       
    if (ExtCountedBars<0) return(-1);
    //---- last counted bar will be recounted
       
    if (ExtCountedBars>0ExtCountedBars--;
       
    int pos=Bars-ExtCountedBars-1;
       while(
    pos>=0)
         {
          
    haOpen=(ExtMapBuffer3[pos+1]+ExtMapBuffer4[pos+1])/2;
          
    haClose=(Open[pos]+High[pos]+Low[pos]+Close[pos])/4;
          
    haHigh=MathMax(High[pos], MathMax(haOpenhaClose));
          
    haLow=MathMin(Low[pos], MathMin(haOpenhaClose));
          if (
    haOpen<haClose
            {
             
    ExtMapBuffer1[pos]=haLow;
             
    ExtMapBuffer2[pos]=haHigh;
            } 
          else
            {
             
    ExtMapBuffer1[pos]=haHigh;
             
    ExtMapBuffer2[pos]=haLow;
            } 
          
    ExtMapBuffer3[pos]=haOpen;
          
    ExtMapBuffer4[pos]=haClose;
            
    pos--;
         }
    //----
       
    return(0);
      }
    //+------------------------------------------------------------------+ 

  2. #2
    الصورة الرمزية lovely2kitten
    lovely2kitten غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Feb 2009
    الإقامة
    القاهرة
    العمر
    39
    المشاركات
    45

    افتراضي رد: سؤال عن وظيفة SetIndexDrawBegin

    اين الخبراء

  3. #3
    الصورة الرمزية WD GANN
    WD GANN غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2008
    الإقامة
    كندا
    المشاركات
    347

    افتراضي رد: سؤال عن وظيفة SetIndexDrawBegin

    السلام عليكم و رحمة الله و بركاته


    الوظيفة تشرح نفسها draw begin يعني بداية الرسم أو بداية رسم المؤشر :

    كود PHP:
     SetIndexDrawBegin(int index,int begin); 
    index : تحديد الخط
    begin : الشمعة التي سيبدأ منها الرسم
    أرجو أن أكون قد أفدتك.


  4. #4
    الصورة الرمزية وضاح عطار
    وضاح عطار غير متواجد حالياً عضو مميز ومشرف سابق
    تاريخ التسجيل
    Apr 2006
    الإقامة
    السعودية
    العمر
    52
    المشاركات
    7,041

    افتراضي رد: سؤال عن وظيفة SetIndexDrawBegin

    هذه الوظيفة تجبر المؤشر أن يبدأ الرسم من الشمعة العاشرة مثلا .

    وهو رقم الشمعة من أول المؤشر ( الشمعات الأقدم ) وليس من آخره .

    وهي مفيدة في حال كان المؤشر مزاح قليلا ويحتاج إلى عشرة شمعات مثلا ليبدأ الرسم فعليا على الشارت .
    توقيع العضو
    اثنان لا يجتمعان علم وسوء خلق

  5. #5
    الصورة الرمزية lovely2kitten
    lovely2kitten غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Feb 2009
    الإقامة
    القاهرة
    العمر
    39
    المشاركات
    45

    افتراضي رد: سؤال عن وظيفة SetIndexDrawBegin

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

    وهو رقم الشمعة من أول المؤشر ( الشمعات الأقدم ) وليس من آخره .

    وهي مفيدة في حال كان المؤشر مزاح قليلا ويحتاج إلى عشرة شمعات مثلا ليبدأ الرسم فعليا على الشارت .
    لك جزيل الشكر استاذ وضاح
    لكن عندما اشرت الى الشمعات الأقدم هل قصدت انه يبدا الرسم من على اليسار (اول الشارت من اليسار) ؟

  6. #6
    الصورة الرمزية وضاح عطار
    وضاح عطار غير متواجد حالياً عضو مميز ومشرف سابق
    تاريخ التسجيل
    Apr 2006
    الإقامة
    السعودية
    العمر
    52
    المشاركات
    7,041

    افتراضي رد: سؤال عن وظيفة SetIndexDrawBegin

    اقتباس المشاركة الأصلية كتبت بواسطة lovely2kitten مشاهدة المشاركة
    لك جزيل الشكر استاذ وضاح
    لكن عندما اشرت الى الشمعات الأقدم هل قصدت انه يبدا الرسم من على اليسار (اول الشارت من اليسار) ؟

    نعم

    الشمعات الأقدم من اليسار بحيث يبدأ العد من أول وأقدم شمعة من اليسار .

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

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

  1. ماهي وظيفة هذا الخيار
    By adam222 in forum توقعات وتوصيات سوق العملات
    مشاركات: 2
    آخر مشاركة: 20-04-2010, 12:39 PM
  2. قصيدةخريج يبحث عن وظيفة
    By jamal_2022 in forum استراحة اعضاء المتداول العربي
    مشاركات: 7
    آخر مشاركة: 17-09-2009, 11:12 PM
  3. ما وظيفة هذا البرنامج Forex Strategy Builder 2.6.0.2؟
    By وليد الامور in forum استفسارات وأسئلة المبتدئين
    مشاركات: 1
    آخر مشاركة: 30-04-2008, 03:44 AM
  4. التوبة وظيفة العمر
    By wajdyss in forum استراحة اعضاء المتداول العربي
    مشاركات: 1
    آخر مشاركة: 25-02-2007, 05:55 PM

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


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