صفحة 5 من 35 الأولىالأولى 123456789101115 ... الأخيرةالأخيرة
النتائج 61 إلى 75 من 524
  1. #61
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,147

    افتراضي

    اسفل الصورة مؤشر AO -- مؤشر معروف مثل الماكد موجود وجاهز في الميتا


    الشرط:
    الشراء: اول شمعة تغلق فوق خط الصفر ندخل شراء ونخرج اذا عادت واغلقت اول شمعة تحت الصفر
    البيع : اول شمعة تغلق تحت خط الصفر ندخل بيع ونخرج اذا عادت واغلقت اول شمعة فوق الصفر

    حسب الكود اعلاه--- xo قيمة المؤشر للشمعة الاحدث j بينما قيمة x1 قيمة المؤشر للشمعة قبلها j+1
    وبالتالي هو يكتشف التقاطع اذا
    (1)
    قيمة الشمعة j+1 تحت الصفر بينما قيمة الشمعة الاحدث j فوق الصفر
    (2)
    قيمة الشمعة j+1 فوق الصفر بينما قيمة الشمعة الاحدث j تحت الصفر

  2. #62
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,147

    افتراضي



    الان نخش في التعقيد--ما اعتقد راح يفهم!! ولكن!

  3. #63
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,147

    افتراضي

    وركز رجاءً---لأننا ذكرنا او شرطنا الاغلاق--يعني ننتظر حتى يتم الاغلاق فنأخذ القرار في الشمعة بعد الكونفرميشن, وبالتالي:
    نعدل في البرنامج مايترجم هذا الكلام, فالشمعة الحالية رقم 0, والكونفرميشن يبنى على الشمعة 1 والشمعة رقم2 -- اخر شمعتين قبل شمعة الان,
    وبناء عليه نغير ال 1 الى 2 و 0 الى 1.



    تجنبنا "يعيد رسم نفسه" !! حيث القرار مبني على قيم لا تتغير--قيم منتهية.
    آخر تعديل بواسطة فيلسوف البادية ، 10-07-2017 الساعة 12:50 AM

  4. #64
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,147

    افتراضي

    اريدك ان تتصور تم اختيار 0 و 1 --- ومؤشر ao قيمه تعتمد على القمة والقاع--وبالتالي لو كان هناك قاع احدث في نفس الشمعة خلال اليوم وكان سابقا قطع الصفر للاعلى -- فإنه سيعود تحت الصفر وقد يحدث هذا في الشمعة الواحدة عدة مرات--فيكون الشرط تحقق دخولا وخروجا والارجح كلها خسارة!

    ولكن مع 1 و 2 قيم هستوري سابقة منتهية لا تتغير.

    والآن مع شرط التقاطع من خلال الدالة الشرطية التي تقارن x0 و x1 بالصفر
    أوليات عقلية: اذا واحد منهم تحت الصفر والاخر فوق الصفر -- اكيد صار فيه تقاطع.

  5. #65
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,147

    افتراضي

    فهو سيفر على الشموع بالترتيب بدءا من اقدم شمعة الشمعة رقم 50 كما حددنا سلفا وحتى اخر شمعة مغلقة.



    نتوقع بعد ذلك إذا حدث القطع أن يميزه لوحده, هل هو قطع للأعلى أم للأسفل--لأن القرارات ستختلف
    مثلا للاعلى نوع العملية يختلف فيما لو تم القطع للأسفل--الاولى شراء والثانية بيع.
    ولكن لأنه تم القطع فإن هناك حاجة اسمها "عملية" وبالتالي نرقمها لهذا الزوج,
    اليورو دولار لو حدث ست تقاطعات نتوقع ان البرنامج دخل عليه ست صفقات وكل صفقة مرقمة لهذا الزوج, ناهيك عن الرقم التسلسلسي لكل العمليات لكل الأزواج وهذا سنتحدث عنه لاحقاُ
    مثلا سألت عن الصفقة الرابعة على هذا الزوج--مباشرة نعرف اين هي بين الصفقات الكثيرة.
    آخر تعديل بواسطة فيلسوف البادية ، 10-07-2017 الساعة 01:11 AM

  6. #66
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,147

    افتراضي

    إذن سنعرف متغير يحصي عدد الصفقات الكلي على كل زوج؟, ولأن هناك ازواج كثيرة لابد يكون مصفوفة,
    وايضا نعرف متغير اخر يحفظ رقم الصفقة الخاصة بهذا الزوج لوحده. الصفقة الاولى عليه؟, الصفقة الثانية عليه؟, وهكذا, . . .
    والاخيرة كما يقضي العقل لابد تكون مصفوفة ثنائية, لـ 1) رقم الزوج نفسه, 2) الرقم التسلسلي للصفقات الخاصة بهذا الزوج.

  7. #67
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,147

    افتراضي


  8. #68
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,147

    افتراضي

    وهناك أمر واحد فقط اذا تمت معرفته, تمت معرفة بقية الامور, وهو رقم شمعة الدخول! لأنك بعدها بالورقة والقلم, تعرف الاقتتااح-اعلى سعر بعد ذلك ادنى سعر الخ!!
    معلومة واحدة فقط كافية لتعرف كل شيء آخر.
    الورقة واقللم تأخذ وقت وبالتالي نحن نستعيض عنها بالبرمجة, وعندما نقول الورقة والقلم نحن نعني دقة نتائج 100%

    إذن لابد نسجل شمعة التقاطع, او بالأحرى الشمعة بعد ثبوت التقاطع, شمعة الدخول

    ولاحظ في البرنامج السابق, لوووب الشموع داخل لوووب الازواج, وبالتالي لن يرتبها زمانيا لأنه يبدأ بصفقات زوج معين ثم ينتقل للزوج بعده, وبناء عليه لايمكن يحسب الدروداون كل يوم كذا,

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

    اذن نعرف متغير لحفظ رقم شمعة الدخول, "وبالتالي وقت الدخول" سنسميه PairEntryCandle
    وكما يقضي العقل ايضا---لابد يكون مصفوفة من بُعدين
    وقيمتها ستكون j --- لماذا؟
    لاننا اعتمدنا j+1 و j+2 والشمعة بعدها هي الشمعة j -- الشمعة التي بعد ثبوت التقاطع لاخر شمعتين.
    آخر تعديل بواسطة فيلسوف البادية ، 10-07-2017 الساعة 01:43 AM

  9. #69
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,147

    افتراضي


  10. #70
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,147

    افتراضي

    ومن أجل وضوح أكثر, او تجميل البرنامج أكثر, نعرف متغير m ليحمل قيمة PairTotallPosition مؤقتاً للسبب في الصورة أسفل: (يعبر عن البُعد الثاني للمصفوفة اذا لزم الأمر)
    آخر تعديل بواسطة فيلسوف البادية ، 10-07-2017 الساعة 01:54 AM

  11. #71
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,147

    افتراضي

    والآن عرفنا أهم شيء وقت الدخول أو شمعة الدخول؟ برمجياً الأمر سيان.
    إذن لابد نحدد هل هي بيع ام شراء كما تم بيانه سابقاً

  12. #72
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,147

    افتراضي

    تكميل نواقص:
    ExpertRemove نريد قبل ازالة الاكسبيرت من التشارت نمسح كل شيء على التشارت, نضيف دالة ObjectsDeleteAll قبل دالة ExpertRemove

    ليمسح اولا ثم يحذف الاكسبيرت ثانياً

  13. #73
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,147

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة فيلسوف البادية مشاهدة المشاركة
    والآن عرفنا أهم شيء وقت الدخول أو شمعة الدخول؟ برمجياً الأمر سيان.
    إذن لابد نحدد هل هي بيع ام شراء كما تم بيانه سابقاً
    يتم هذا على النحو التالي:

  14. #74
    الصورة الرمزية ali_shadi
    ali_shadi غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Apr 2016
    الإقامة
    السويد
    العمر
    29
    المشاركات
    367

    افتراضي

    اخي فيلسوف البادية ...

    رجاءا وضع الاكواد

    فضلا ..... تحياتي

  15. #75
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,147

    افتراضي

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

    رجاءا وضع الاكواد

    فضلا ..... تحياتي
    كود:
    string   str;
    string   S[] = {"EUR" ,"GBP" ,"AUD" ,"NZD" ,"USD" ,"CAD" ,"CHF" ,"JPY"};
    string   pairs[28];
    string   pair_0[28];
    int      NoOfCandles=50;
    
    int OnInit()
    {
       ChartSetInteger(0,CHART_FOREGROUND,0,FALSE);
       ChartSetInteger(0,CHART_COLOR_BACKGROUND,clrBlack);
       ChartSetInteger(0,CHART_COLOR_CHART_LINE,ChartGetInteger(0,CHART_COLOR_BACKGROUND));
       ChartSetInteger(0,CHART_MODE,CHART_LINE);
       ChartSetInteger(0,CHART_SHOW_GRID,0,FALSE);
       ChartSetInteger(0,CHART_SHOW_OHLC,0,FALSE);
       ChartSetInteger(0,CHART_SHOW_BID_LINE,0,FALSE);
       
       ObjectCreate( "CHART_HIDE",OBJ_LABEL,0,0,0);   
       ObjectSet(    "CHART_HIDE",OBJPROP_CORNER,0);
       ObjectSet(    "CHART_HIDE",OBJPROP_XDISTANCE,5);
       ObjectSet(    "CHART_HIDE",OBJPROP_YDISTANCE,25);
       ObjectSetText("CHART_HIDE",CharToStr(108),12,"wingdings",clrRed);
       ObjectCreate( "CHART_CANDLES",OBJ_LABEL,0,0,0);   
       ObjectSet(    "CHART_CANDLES",OBJPROP_CORNER,0);
       ObjectSet(    "CHART_CANDLES",OBJPROP_XDISTANCE,25);
       ObjectSet(    "CHART_CANDLES",OBJPROP_YDISTANCE,25);
       ObjectSetText("CHART_CANDLES",CharToStr(108),12,"wingdings",clrYellow);
       ObjectCreate( "CHART_LINE",OBJ_LABEL,0,0,0);   
       ObjectSet(    "CHART_LINE",OBJPROP_CORNER,0);
       ObjectSet(    "CHART_LINE",OBJPROP_XDISTANCE,45);
       ObjectSet(    "CHART_LINE",OBJPROP_YDISTANCE,25);
       ObjectSetText("CHART_LINE",CharToStr(108),12,"wingdings",clrWhite);
       
       EventSetTimer(1);
       str =StringSubstr(Symbol(),6,10);
    ///////////////////////////
       int j=-1;
       for(int i=0;i<=6;i++)
       {
          for(int k=i+1;k<=7;k++)
          {
             j++;
             pairs[j]=S[i]+S[k]+str;
             pair_0[j]=pairs[j];
          }
       }
       return(INIT_SUCCEEDED);
    }
    ////////////////////////
    void OnTimer()
    {
       ChartSetInteger(0,CHART_FOREGROUND,0,BackOrForeground);
       ChartSetInteger(0,CHART_COLOR_CHART_LINE,LineColor);
       ChartSetInteger(0,CHART_MODE,ChartMode);
    
    
       for(int i=0;i<28;i++)
       {
          if(pair_0[i]==pairs[i]) color clr=clrLime;
          else                          clr=clrWhite;
          ObjectCreate(  "B_"+StringSubstr(pairs[i],0,6)+"_"+i, OBJ_LABEL,0,0,0);
          ObjectSet(     "B_"+StringSubstr(pairs[i],0,6)+"_"+i, OBJPROP_CORNER,0);
          ObjectSet(     "B_"+StringSubstr(pairs[i],0,6)+"_"+i, OBJPROP_XDISTANCE,20);
          ObjectSet(     "B_"+StringSubstr(pairs[i],0,6)+"_"+i, OBJPROP_YDISTANCE,50+i*13);
          ObjectSetText( "B_"+StringSubstr(pairs[i],0,6)+"_"+i, StringSubstr(pairs[i],0,6),9,"Tahoma",clr);
    //      
          ObjectCreate(  "A_"+StringSubstr(pairs[i],0,6)+"_"+i, OBJ_LABEL,0,0,0);
          ObjectSet(     "A_"+StringSubstr(pairs[i],0,6)+"_"+i, OBJPROP_CORNER,0);
          ObjectSet(     "A_"+StringSubstr(pairs[i],0,6)+"_"+i, OBJPROP_XDISTANCE,5);
          ObjectSet(     "A_"+StringSubstr(pairs[i],0,6)+"_"+i, OBJPROP_YDISTANCE,50+i*13);
          ObjectSetText( "A_"+StringSubstr(pairs[i],0,6)+"_"+i, CharToStr(110),9,"wingdings",clr);
       }
          
       ObjectCreate( "ACTIVATE_ALL",OBJ_LABEL,0,0,0);   
       ObjectSet(    "ACTIVATE_ALL",OBJPROP_CORNER,0);
       ObjectSet(    "ACTIVATE_ALL",OBJPROP_XDISTANCE,25);
       ObjectSet(    "ACTIVATE_ALL",OBJPROP_YDISTANCE,425);
       ObjectSetText("ACTIVATE_ALL",CharToStr(110),12,"wingdings",clrLime);
       ObjectCreate( "CANCEL_ALL",OBJ_LABEL,0,0,0);   
       ObjectSet(    "CANCEL_ALL",OBJPROP_CORNER,0);
       ObjectSet(    "CANCEL_ALL",OBJPROP_XDISTANCE,45);
       ObjectSet(    "CANCEL_ALL",OBJPROP_YDISTANCE,425);
       ObjectSetText("CANCEL_ALL",CharToStr(110),12,"wingdings",clrGray);
       
       ObjectCreate(  "REMOVE_EXPERT",OBJ_LABEL,0,0,0);
       ObjectSet(     "REMOVE_EXPERT",OBJPROP_CORNER,0);
       ObjectSet(     "REMOVE_EXPERT",OBJPROP_XDISTANCE,   195);
       ObjectSet(     "REMOVE_EXPERT",OBJPROP_YDISTANCE,   0);
       ObjectSetText( "REMOVE_EXPERT",CharToStr(255),18,"Wingdings",clrWhite);
       
       ObjectCreate( "CLEAN_CHART",OBJ_LABEL,0,0,0);
       ObjectSet(    "CLEAN_CHART",OBJPROP_CORNER,0);
       ObjectSet(    "CLEAN_CHART",OBJPROP_XDISTANCE,145);
       ObjectSet(    "CLEAN_CHART",OBJPROP_YDISTANCE,0);
       ObjectSetText("CLEAN_CHART","DEL",15,"Times New Roman",clrWhite);
       
       ObjectCreate( "Object_Name",OBJ_LABEL,0,0,0);
       ObjectSet(    "Object_Name",OBJPROP_CORNER,0);
       ObjectSet(    "Object_Name",OBJPROP_XDISTANCE,245);
       ObjectSet(    "Object_Name",OBJPROP_YDISTANCE,0);
       ObjectSetText("Object_Name",Object_Name,11,"Times New Roman",clrWhite);
    /////////////////////////
       int PairTotallPosition[28];
       int PairPositionSerial[28][200];
       int PairEntryCandle[28][200];
       string Pair_Order_Type[28][200];
    /////////////////////
       for(i=0;i<=27;i++)
       {//for(i=0;i<28;i++)
          PairTotallPosition[i]=-1;
          if(pairs[i]==pair_0[i])
          {//if(pairs[i]==pair_0[i])
             for(int j=NoOfCandles;j>=1;j--)
             {//for(int j=0;j<=NoOfCandles;j++)
                double x0=iAO(pair_0[i],0,j+1);
                double x1=iAO(pair_0[i],0,j+2);
                
                if((x0<=0 && x1>=0) || (x0>=0 && x1<=0))
                {//if((x0<0 && x1>0) || (x0>0 && x1<0))
                   PairTotallPosition[i]++;
                   int m=PairTotallPosition[i];
                   PairPositionSerial[i][m]=m;
                   PairEntryCandle[i][m]=j;
                
                   if(x0>=0 && x1<=0)            
                   {
                      Pair_Order_Type[i][m]="BUY";
                   }
                   
                   if(x0<=0 && x1>=0)            
                   {
                      Pair_Order_Type[i][m]="SELL";
                   }
                      
    
                }//if((x0<0 && x1>0) || (x0>0 && x1<0))
                
                //--
                //-
                //-
             }//for(int j=0;j<=NoOfCandles;j++)
          }//if(pairs[i]==pair_0[i])
       }//for(i=0;i<28;i++)
    }//OnTimer
    //////////////////////////////////////////////
    string Object_Name;
    //////////////////////////////////////////////
    bool              BackOrForeground=false;
    ENUM_CHART_MODE   ChartMode=CHART_LINE;
    color             LineColor=ChartGetInteger(0,CHART_COLOR_BACKGROUND);
    
    void OnChartEvent(const int id, const long &lparam, const double &dparam,  const string &sparam)
    {
       if(id==CHARTEVENT_OBJECT_CLICK)
       {
    //////////////////////////
          if(sparam=="CHART_HIDE")
          {
            LineColor=ChartGetInteger(0,CHART_COLOR_BACKGROUND);
            ChartMode=CHART_LINE;
            BackOrForeground=false;
          }
          if(sparam=="CHART_CANDLES")
          {
            LineColor=clrOrange;
            ChartMode=CHART_CANDLES;
            BackOrForeground=true;
          }
          if(sparam=="CHART_LINE")
          {
            LineColor=clrOrange;
            ChartMode=CHART_LINE;
            BackOrForeground=true;
          }
    
    
    
          Object_Name=sparam;
          if(StringSubstr(sparam,0,2)=="A_")
          {
             int I1=StrToInteger(StringSubstr(sparam,9,StringLen(sparam)-9));
             pair_0[I1]="YYYXXX";
          }
          if(StringSubstr(sparam,0,2)=="B_")
          {
             int I2=StrToInteger(StringSubstr(sparam,9,StringLen(sparam)-9));
             pair_0[I2]=pairs[I2];;
          }
          
          if(sparam=="CANCEL_ALL")
          {
             for(int k=0;k<=27;k++) pair_0[k]="YYYXXX";
          }
          
          if(sparam=="ACTIVATE_ALL")
          {
             for( k=0;k<=27;k++) pair_0[k]=pairs[k];
          }
    
          if(sparam=="CLEAN_CHART")     ObjectsDeleteAll();
          if(sparam=="REMOVE_EXPERT")   {ObjectsDeleteAll();ExpertRemove();}
    
          
          
    /////////////////////////////////////////   
       }
    }

صفحة 5 من 35 الأولىالأولى 123456789101115 ... الأخيرةالأخيرة

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