صفحة 1 من 3 123 الأخيرةالأخيرة
النتائج 1 إلى 15 من 43
  1. #1
    الصورة الرمزية remon78eg
    remon78eg غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    May 2010
    العمر
    46
    المشاركات
    1,484

    Lightbulb مشاكل فنيه وحلول منطقيه

    هل لديك مشكلة فنية تحتاج إلى حل منطقي
    ضع مشكلتك هنا وسنعمل على حلها بإذن الله

    --- --- --- ---
    رابط الموضوع هنا
    https://forum.arabictrader.com/t235625.html#post3043064

    بقلم: ريمون رفعت

  2. #2
    الصورة الرمزية remon78eg
    remon78eg غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    May 2010
    العمر
    46
    المشاركات
    1,484

    افتراضي

    سنبدأ بعرض تلك المشكلة ونحاول إيجاد حل لها


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

    ارجوا المساعدة في حل معادلة حسابية ( تم ارفاق صورة في المرفقات )
    اضغط على الصورة لعرض أكبر

الاســـم:	ترند.PNG
المشاهدات:	663
الحجـــم:	16.3 كيلوبايت
الرقم:	453407
    اريد ابسط طريقة لايجاد ( قيمة نقطة تقاطع خطين مستقيمين )

    وشكرا ..
    آخر تعديل بواسطة remon78eg ، 03-03-2016 الساعة 04:50 PM

  3. #3
    الصورة الرمزية remon78eg
    remon78eg غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    May 2010
    العمر
    46
    المشاركات
    1,484

    افتراضي

    أولا لإيجاد نقطة التقاطع يجب إيجاد معادلة المستقيمين
    ولإيجاد معادلة الخط المستقيم يجب إيجاد الميل
    ولإيجاد الميل يجب ان نستخدم نقطتين على هذا الخط

    نوجد ميل الخط الأول بواسطة النقطتين (س=1،ص=1) - (س=3،ص=3)

    معادلة الميل هي
    اضغط على الصورة لعرض أكبر

الاســـم:	معادلة الميل.gif
المشاهدات:	641
الحجـــم:	1.2 كيلوبايت
الرقم:	453412
    ص-ص ÷ س-س
    3-1 ÷ 3-1 = 2÷2 = 1
    ميل الخط الأول م = 1

    نوجد معادلة الخط الأول
    ص = م س - م (س) + (ص) حيث م= الميل ، (س)= نقطة ، (ص)=نقطة
    نعوض عن قيم (س)=1 (ص)=1 او (س)=3 (ص)=3
    ص=1س-(1×1)+1
    ص=س-1+1
    ص=س
    --------------------

    نوجد ميل الخط الثاني بواسطة النقطتين (س=3،ص=1) - (س=1،ص=3)
    ص-ص ÷ س-س
    1-3 ÷ 3-1 = -2 ÷ 2 = -1
    ميل الخط الثاني هو -1

    نوجد معادلة الخط الثاني
    ص = م س - م (س) + (ص) حيث م= الميل ، (س)= نقطة ، (ص)=نقطة
    نعوض عن قيم (س)=3 (ص)=1 او (س)=1 (ص)=3
    ص=-1س-(-1×3)+1
    ص=-س-(-3)+1
    ص=-س+3+1
    ص=-س+4
    ص=4-س
    ------------------------
    بما ان نقطة التقاطع هي نقطة مشتركة على الخطين
    اذا هذه النقطة يجب ان تحقق المعادلتين معاً
    فنحل المعادلتين لايجاد قيمه س ، ص
    ----------------------------
    المعالتين هما
    ص=س
    ص=4-س
    بالتعويض عن قيمة س بقيمة ص
    ص=4-ص
    ص+ص=4
    2ص=4
    ص=2
    بما ان س=ص ، اذا س=2

    وبما ان النقطة هي (س،ص)
    اذاً فنقطة التقاطع هي (2،2)
    كما هو موضح في الرسم في الصورة


  4. #4
    الصورة الرمزية remon78eg
    remon78eg غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    May 2010
    العمر
    46
    المشاركات
    1,484

    افتراضي

    ملحوظة
    ---------
    من لديه حل آخر مختلف او مشابه
    فليتفضل ويكتبه لان توفر عدة حلول متشابهه يؤكد ان الطريقة صحيحة
    وتوفر حلول مختلفة يمكننا ان نختار منها اسهل وافضل حل

  5. #5
    الصورة الرمزية remon78eg
    remon78eg غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    May 2010
    العمر
    46
    المشاركات
    1,484

    افتراضي

    هذه الفكرة ذكرتني بفكرة برنامج قمت بعمله من عدة سنوات

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

الاســـم:	برنامج حل المعادلات.png
المشاهدات:	47
الحجـــم:	19.3 كيلوبايت
الرقم:	453438




  6. #6
    الصورة الرمزية remon78eg
    remon78eg غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    May 2010
    العمر
    46
    المشاركات
    1,484

    افتراضي

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

    حاولة فهم طريقة الحل , لم استطيع ..

    اذا يوجد شرح مبسط اكون ممنون لك ..

    انا احتاج الطريقة ايجاد نقطة التقاطع

    لاكمال برمجة اكسبيرت

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

  7. #7
    الصورة الرمزية remon78eg
    remon78eg غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    May 2010
    العمر
    46
    المشاركات
    1,484

    Lightbulb

    تحويل المعادلة لكود مع شرح الخطوات

    طريقة تحويل المعادلة التي في المشاركة رقم 3 الى كود برمجي

    المدخلات ستكون احداثيات الخطين

    المخرجات ستكون نقطة التقاطع

    الدالة ستكون كالتالي

    ooooooo
    GetIntersectionPoint(ax1,ay1,ax2,ay2 , bx1,by1,bx2,by2 )
    GetIntersectionPoint( 1 , 1 , 3 , 3 , 1 , 3 , 3 , 1 )

    ooooooo
    ------------------------------------------------
    أولا معادلة إيجاد الميل هي
    م=ص-ص ÷ س-س
    oooooo
    M1=(ay2-ay1)/(ax2-ax1)
    M2=(by2-by1)/(bx2-bx1)
    oooooo
    --------------------------------------------

    اوجدنا الميل للخطين

    نوجد معادلة الخطين

    --------------------------------------------
    ص = م س - م (س) + (ص) حيث م= الميل ، (س)= نقطة ، (ص)=نقطة
    oooooo
    Y=M1*X-M1*ax1+ay1
    Y=M2*X-M2*bx1+by1
    where : (X,Y)=IntersectionPoint
    oooooo
    --------------------------------------------
    اوجدنا معادلة الخطين
    علينا إيجاد نقطة التقاطع بحل المعادلتين
    والتعويض عن س لايجاد معادلة نوجد منها قيمة ص كالتالي
    --------------------------------------------
    Y=M1*X-M1*ax1+ay1
    Y=M2*X-M2*bx1+by1
    بالتعويض عن Y بقيمة Y
    Y=M1*X -(M1*ax1) +ay1
    Y=M2*X -(M2*bx1) +by1

    M1*X -(M1*ax1) +ay1 = M2*X -(M2*bx1) +by1
    M1*X-M2*X = (M1*ax1) -(M2*bx1) +by1-ay1
    (M1-M2)*X = (M1*ax1) -(M2*bx1) +by1-ay1
    X = ((M1*ax1) -(M2*bx1) +by1-ay1) / (M1-M2)
    Y=M1*X -(M1*ax1) +ay1

    X=((M1*ax1)-(M2*bx1) +by1-ay1) / (M1-M2)
    Y=M1*X -(M1*ax1) +ay1

    ------------------------------------
    اوجدنا X ،Y
    -------------------------------------
    نحول تلك المعادلات لكود ونختبره لنعلم هل يوجد أخطاء ام لا
    كود PHP:
    struct STR_POINT{
       
    double X;//X
       
    double Y;//Y
    };
    struct STR_LINE{
       
    double X1;//Point1.X1
       
    double X2;//Point1.X2
       
    double Y1;//Point2.Y1
       
    double Y2;//Point2.Y2
    };
    bool GetIntersectionPoint(STR_LINE &Line1  ,  STR_LINE &Line2  ,  STR_POINT &IntersectionPoint){
      
    double M1,M2;
      
      
    M1=(Line1.Y2-Line1.Y1)/(Line1.X2-Line1.X1);
      
    M2=(Line2.Y2-Line2.Y1)/(Line2.X2-Line2.X1);
      if(
    M1==M2)return false;
     
      
      
    IntersectionPoint.X=((M1*Line1.X1)-(M2*Line2.X1)  +Line2.Y1-Line1.Y1) / (M1-M2);
      
    IntersectionPoint.Y=M1*IntersectionPoint.X  -(M1*Line1.X1)  +Line1.Y1;
      return 
    true;
    }
     
    int OnCalculate(const int rates_total,const int prev_calculated,const datetime &time[],const double &open[],const double &high[],const double &low[],const double &close[],const long &tick_volume[],const long &volume[],const int &spread[]){
      
    STR_LINE  Line1;
      
    STR_LINE  Line2;
      
    STR_POINT iPoint;
      
      
    Line1.X1=1;
      
    Line1.Y1=1;
      
    Line1.X2=3;
      
    Line1.Y2=3;
      
      
    Line2.X1=1;
      
    Line2.Y1=3;
      
    Line2.X2=3;
      
    Line2.Y2=1;
      
      
    GetIntersectionPoint(Line1,Line2,iPoint);
      
    Alert("X=",iPoint.X);
      
    Alert("Y=",iPoint.Y);
      return(
    rates_total);



    آخر تعديل بواسطة remon78eg ، 04-03-2016 الساعة 05:01 PM

  8. #8
    الصورة الرمزية remon78eg
    remon78eg غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    May 2010
    العمر
    46
    المشاركات
    1,484

    Cool

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

الاســـم:	نقطة تقاطع الخطين.png
المشاهدات:	591
الحجـــم:	4.8 كيلوبايت
الرقم:	453462
    في هذه الصورة تجد خطين متقاطعين
    وتجد سهم اخضر يشير لنقطة التقاطع
    اذا حركت الخط تتحرك نقطة التقاطع الخضراء

    مرفق مؤشر به الكود للتجربة
    الملفات المرفقة الملفات المرفقة

  9. #9
    الصورة الرمزية remon78eg
    remon78eg غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    May 2010
    العمر
    46
    المشاركات
    1,484

    06

    كود PHP:
    #property copyright "remon78eg , 04/03/2016   d/m/y"
    #property version   "1.00"
    #property description ""
    #property indicator_chart_window
    //========================================================================================
    struct STR_POINT{
       
    double X;//X
       
    double Y;//Y
    };
    struct STR_LINE{
       
    double X1;//Point1.X1
       
    double X2;//Point1.X2
       
    double Y1;//Point2.Y1
       
    double Y2;//Point2.Y2
    };
    STR_LINE  Line1;
    STR_LINE  Line2;
    STR_POINT iPoint;
     
    bool GetIntersectionPoint(STR_LINE &eLine1  ,  STR_LINE &eLine2  ,  STR_POINT &IntersectionPoint){
      
    double M1,M2;
      
      
    M1=(eLine1.Y2-eLine1.Y1)/(eLine1.X2-eLine1.X1);
      
    M2=(eLine2.Y2-eLine2.Y1)/(eLine2.X2-eLine2.X1);
      if(
    M1==M2)return false;//لا يوجد تقاطع
      
    IntersectionPoint.X=((M1*eLine1.X1)-(M2*eLine2.X1)  +eLine2.Y1-eLine1.Y1) / (M1-M2);
      
    IntersectionPoint.Y=M1*IntersectionPoint.X  -(M1*eLine1.X1)  +eLine1.Y1;
      return 
    true;
    }
    //========================================================================================
     
    int OnInit(){
      
      
    EventSetMillisecondTimer(250);
     return(
    INIT_SUCCEEDED);
    }
    //------------------------------
    void OnDeinit(const int reason){
       
    EventKillTimer();
    }
    void OnTimer(){
      
    Line1.X1=Time [0];
      
    Line1.Y1=ChartGetDouble(0,CHART_PRICE_MIN,0);
      
    Line1.X2=Time [200];
      
    Line1.Y2=ChartGetDouble(0,CHART_PRICE_MAX,0);
      
      
    Line2.X1=Time [0];
      
    Line2.Y1=ChartGetDouble(0,CHART_PRICE_MAX,0);
      
    Line2.X2=Time [200];
      
    Line2.Y2=ChartGetDouble(0,CHART_PRICE_MIN,0);
      
      if(
    ObjectFind(0,"Line1")==-1){ObjectCreate(0,"Line1",OBJ_TREND,0,Line1.X1,Line1.Y1,Line1.X2,Line1.Y2);ObjectSetInteger(0,"Line1",OBJPROP_RAY,false);ObjectSetInteger(0,"Line1",OBJPROP_SELECTED,true);}
      if(
    ObjectFind(0,"Line2")==-1){ObjectCreate(0,"Line2",OBJ_TREND,0,Line2.X1,Line2.Y1,Line2.X2,Line2.Y2);ObjectSetInteger(0,"Line2",OBJPROP_RAY,false);ObjectSetInteger(0,"Line2",OBJPROP_SELECTED,true);}
      
    GetIntersectionPoint(Line1,Line2,iPoint);
      if(
    ObjectFind(0,"Arrow1")==-1){ObjectCreate(0,"Arrow1",OBJ_ARROW_BUY,0,iPoint.X,iPoint.Y);ObjectSetInteger(0,"Arrow1",OBJPROP_SELECTED,true);ObjectSetInteger(0,"Arrow1",OBJPROP_COLOR,clrGreen);}
      
      
      
      
    Line1.Y1=ObjectGet("Line1",OBJPROP_PRICE1);
      
    Line1.Y2=ObjectGet("Line1",OBJPROP_PRICE2);
      
    Line1.X1=ObjectGet("Line1",OBJPROP_TIME1);
      
    Line1.X2=ObjectGet("Line1",OBJPROP_TIME2);
      
      
    Line2.Y1=ObjectGet("Line2",OBJPROP_PRICE1);
      
    Line2.Y2=ObjectGet("Line2",OBJPROP_PRICE2);
      
    Line2.X1=ObjectGet("Line2",OBJPROP_TIME1);
      
    Line2.X2=ObjectGet("Line2",OBJPROP_TIME2);
      
      
    GetIntersectionPoint(Line1,Line2,iPoint);
      
      
    ObjectDelete(0,"Arrow1");ObjectCreate(0,"Arrow1",OBJ_ARROW_BUY,0,iPoint.X,iPoint.Y);ObjectSetInteger(0,"Arrow1",OBJPROP_SELECTED,true);ObjectSetInteger(0,"Arrow1",OBJPROP_COLOR,clrGreen);
      
    }
    //+------------------------------------------------------------------+
    //| Custom indicator iteration function                              |
    //+------------------------------------------------------------------+
    int OnCalculate(const int rates_total,const int prev_calculated,const datetime &time[],const double &open[],const double &high[],const double &low[],const double &close[],const long &tick_volume[],const long &volume[],const int &spread[]){
      return(
    rates_total);


  10. #10
    الصورة الرمزية remon78eg
    remon78eg غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    May 2010
    العمر
    46
    المشاركات
    1,484

    Cool

    تم تصحيح خطأ القسمة على صفر في تقاطع خطين افقي وعامودي بزاوية قائمة

    كود PHP:
    #property copyright "remon78eg , 04/03/2016   d/m/y"
    #property version   "1.00"
    #property description ""
    #property indicator_chart_window
    //========================================================================================
    struct STR_POINT{
       
    double X;//X
       
    double Y;//Y
    };
    struct STR_LINE{
       
    double X1;//Point1.X1
       
    double X2;//Point1.X2
       
    double Y1;//Point2.Y1
       
    double Y2;//Point2.Y2
    };
    STR_LINE  Line1;
    STR_LINE  Line2;
    STR_POINT iPoint;

    bool GetIntersectionPoint(STR_LINE &eLine1  ,  STR_LINE &eLine2  ,  STR_POINT &IntersectionPoint){
      
    double M1,M2;
      
      
    M1=(eLine1.Y2-eLine1.Y1)/iif((eLine1.X2-eLine1.X1)==0,1.0,(eLine1.X2-eLine1.X1));
      
    M2=(eLine2.Y2-eLine2.Y1)/iif((eLine2.X2-eLine2.X1)==0,1.0,(eLine2.X2-eLine2.X1));
      if(
    M1==M2)return false;//لا يوجد تقاطع
      
    IntersectionPoint.X=((M1*eLine1.X1)-(M2*eLine2.X1)  +eLine2.Y1-eLine1.Y1) / (M1-M2);
      
    IntersectionPoint.Y=M1*IntersectionPoint.X  -(M1*eLine1.X1)  +eLine1.Y1;
      return 
    true;
    }
    //========================================================================================

    int OnInit(){
      
      
    EventSetMillisecondTimer(250);
     return(
    INIT_SUCCEEDED);
    }
    //------------------------------
    void OnDeinit(const int reason){
       
    EventKillTimer();
    }
    void OnTimer(){
      
    Line1.X1=Time [0];
      
    Line1.Y1=ChartGetDouble(0,CHART_PRICE_MIN,0);
      
    Line1.X2=Time [200];
      
    Line1.Y2=ChartGetDouble(0,CHART_PRICE_MAX,0);
      
      
    Line2.X1=Time [0];
      
    Line2.Y1=ChartGetDouble(0,CHART_PRICE_MAX,0);
      
    Line2.X2=Time [200];
      
    Line2.Y2=ChartGetDouble(0,CHART_PRICE_MIN,0);
      
      if(
    ObjectFind(0,"Line1")==-1){ObjectCreate(0,"Line1",OBJ_TREND,0,Line1.X1,Line1.Y1,Line1.X2,Line1.Y2);ObjectSetInteger(0,"Line1",OBJPROP_RAY,false);ObjectSetInteger(0,"Line1",OBJPROP_SELECTED,true);}
      if(
    ObjectFind(0,"Line2")==-1){ObjectCreate(0,"Line2",OBJ_TREND,0,Line2.X1,Line2.Y1,Line2.X2,Line2.Y2);ObjectSetInteger(0,"Line2",OBJPROP_RAY,false);ObjectSetInteger(0,"Line2",OBJPROP_SELECTED,true);}
      
    GetIntersectionPoint(Line1,Line2,iPoint);
      if(
    ObjectFind(0,"Arrow1")==-1){ObjectCreate(0,"Arrow1",OBJ_ARROW_BUY,0,iPoint.X,iPoint.Y);ObjectSetInteger(0,"Arrow1",OBJPROP_SELECTED,true);ObjectSetInteger(0,"Arrow1",OBJPROP_COLOR,clrGreen);}
      
      
      
      
    Line1.Y1=ObjectGet("Line1",OBJPROP_PRICE1);
      
    Line1.Y2=ObjectGet("Line1",OBJPROP_PRICE2);
      
    Line1.X1=ObjectGet("Line1",OBJPROP_TIME1);
      
    Line1.X2=ObjectGet("Line1",OBJPROP_TIME2);
      
      
    Line2.Y1=ObjectGet("Line2",OBJPROP_PRICE1);
      
    Line2.Y2=ObjectGet("Line2",OBJPROP_PRICE2);
      
    Line2.X1=ObjectGet("Line2",OBJPROP_TIME1);
      
    Line2.X2=ObjectGet("Line2",OBJPROP_TIME2);
      
      
    GetIntersectionPoint(Line1,Line2,iPoint);
      
      
    ObjectDelete(0,"Arrow1");ObjectCreate(0,"Arrow1",OBJ_ARROW_BUY,0,iPoint.X,iPoint.Y);ObjectSetInteger(0,"Arrow1",OBJPROP_SELECTED,true);ObjectSetInteger(0,"Arrow1",OBJPROP_COLOR,clrGreen);
      
    }
    //+------------------------------------------------------------------+
    //| Custom indicator iteration function                              |
    //+------------------------------------------------------------------+
    int OnCalculate(const int rates_total,const int prev_calculated,const datetime &time[],const double &open[],const double &high[],const double &low[],const double &close[],const long &tick_volume[],const long &volume[],const int &spread[]){
      return(
    rates_total);
    }
    //==========================================
    color iif(bool con,color tr,color fl){
      if(
    con){return(tr);}else{return(fl);}
    }
    int iif(bool con,int tr,int fl){
      if(
    con){return(tr);}else{return(fl);}
    }
    double iif(bool con,double tr,double fl){
      if(
    con){return(tr);}else{return(fl);}
    }
    string iif(bool con,string tr,string fl){
      if(
    con){return(tr);}else{return(fl);}


  11. #11
    الصورة الرمزية Knight_Forex
    Knight_Forex غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Aug 2014
    الإقامة
    المملكة العربية السعودية
    المشاركات
    51

    افتراضي

    الله يعطيك الف عافية .. استاذي ريمون رفعت

    وما شاء الله عليك .. متمكن في الرياضيات والبرمجة

    والله يعلم من فترة وانا عاجز عن تكملت الاكسبيرت بسبب هذي المعادلة ..

    وانا بصراحة لست متمكن مثلك , لي رجاء اخير ..

    هل يمكن استاذي عمل المعادلة دالة اعطيها احداثيات X1 & X2 & Y1 & Y2

    وتستخرج قيمة التقاطع كاقيمة ..


    وفي الاخير كلمة شكرا لن تفي ما قدمته لي من خدمة

  12. #12
    الصورة الرمزية forexcycles
    forexcycles غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jun 2015
    الإقامة
    السعودية
    المشاركات
    291

    افتراضي

    أخي ريمون
    نشكرك على استعدادك للمساعدة للجميع.

    هل لديك حل لهذه المشكلة في مؤشر سحابة الايشيموكو متعدد الزمن كما هو موضح.


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

    الملف المرفق 453481

    إخواني الكرام حملت مؤشر الايشيموكو متعدد التايم فريم

    لكنه يظهر عندى السحابة للفريم الكبير كسحابة مستطيلة تعتمد على الفرق بين سبان أ وسبان ب .دون أن تظهر كسحابة مختلفة المسافات كما في السحابة الموجودة في الفريم الأصلي

    ويظهر الشارت كما في الصورة.

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

    الملف المرفق 453488
    الملفات المرفقة الملفات المرفقة
    آخر تعديل بواسطة forexcycles ، 05-03-2016 الساعة 11:15 AM
    توقيع العضو
    الحمد لله على كل نعمة كانت أو هي كائنة

  13. #13
    الصورة الرمزية remon78eg
    remon78eg غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    May 2010
    العمر
    46
    المشاركات
    1,484

    08

    اقتباس المشاركة الأصلية كتبت بواسطة Knight_Forex مشاهدة المشاركة
    الله يعطيك الف عافية .. استاذي ريمون رفعت

    وما شاء الله عليك .. متمكن في الرياضيات والبرمجة

    والله يعلم من فترة وانا عاجز عن تكملت الاكسبيرت بسبب هذي المعادلة ..

    وانا بصراحة لست متمكن مثلك , لي رجاء اخير ..

    هل يمكن استاذي عمل المعادلة دالة اعطيها احداثيات X1 & X2 & Y1 & Y2

    وتستخرج قيمة التقاطع كاقيمة ..


    وفي الاخير كلمة شكرا لن تفي ما قدمته لي من خدمة


    كود PHP:
    struct STR_POINT{
       
    double X;//X
       
    double Y;//Y
    };
    struct STR_LINE{
       
    double X1;//Point1.X1
       
    double X2;//Point1.X2
       
    double Y1;//Point2.Y1
       
    double Y2;//Point2.Y2
    };
    STR_LINE  Line1;
    STR_LINE  Line2;
    STR_POINT iPoint;
    double iif(bool con,double tr,double fl){
      if(
    con){return(tr);}else{return(fl);}
    }
    bool GetIntersectionPoint(STR_LINE &eLine1  ,  STR_LINE &eLine2  ,  STR_POINT &IntersectionPoint){
      
    double M1,M2;
      
      
    M1=(eLine1.Y2-eLine1.Y1)/iif((eLine1.X2-eLine1.X1)==0,1.0,(eLine1.X2-eLine1.X1));
      
    M2=(eLine2.Y2-eLine2.Y1)/iif((eLine2.X2-eLine2.X1)==0,1.0,(eLine2.X2-eLine2.X1));
      if(
    M1==M2)return false;//لا يوجد تقاطع
      
    IntersectionPoint.X=((M1*eLine1.X1)-(M2*eLine2.X1)  +eLine2.Y1-eLine1.Y1) / (M1-M2);
      
    IntersectionPoint.Y=M1*IntersectionPoint.X  -(M1*eLine1.X1)  +eLine1.Y1;
      return 
    true;
    }
    //========================================================================================
    //========================================================================================
     
    void OnStart(){
      
    Line1.X1=Time [0];
      
    Line1.Y1=ChartGetDouble(0,CHART_PRICE_MIN,0);
      
    Line1.X2=Time [200];
      
    Line1.Y2=ChartGetDouble(0,CHART_PRICE_MAX,0);
      
      
    Line2.X1=Time [0];
      
    Line2.Y1=ChartGetDouble(0,CHART_PRICE_MAX,0);
      
    Line2.X2=Time [200];
      
    Line2.Y2=ChartGetDouble(0,CHART_PRICE_MIN,0);
        
      
      
    GetIntersectionPoint(Line1,Line2,iPoint);
        
    Alert("X=",iPoint.X,"   Y=",iPoint.Y);
     
      


    تحتاج ادخال 4 نقاط هي احداثيات الخطين وكل نقطة لها س،ص أي ستحتاج ادخال 8 ارقام
    كما في المثال السابق

  14. #14
    الصورة الرمزية remon78eg
    remon78eg غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    May 2010
    العمر
    46
    المشاركات
    1,484

    افتراضي

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

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

  15. #15
    الصورة الرمزية forexcycles
    forexcycles غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jun 2015
    الإقامة
    السعودية
    المشاركات
    291

    افتراضي

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

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

صفحة 1 من 3 123 الأخيرةالأخيرة

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


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