Quran 24/7 الموضوع المخصص للأسئلة البرمجية mql4 - الصفحة 99





صفحة 99 من 143 الأولىالأولى ... 4989979899100101109 ... الأخيرةالأخيرة
النتائج 981 إلى 990 من 1428

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

  1. #981

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة Waddah مشاهدة المشاركة
    لم تنجح أستاذ نفس نتيجتي السابقة -لا توجد رسائل خطأ في الجورنال - ودائما يعيد القيمة 1
    طيب استخدم الدالة بدلالة الزوج وعند استدعائها تضع اسم الزوج
    مثال :
    كود:
    int LastBreak(string symbol)
    {
     for(j=1;j<iBars(symbol,PERIOD_D1);j++)   
     {
      double D1 = iRSI(symbol,PERIOD_D1,14,0,j);
      double D1_2 = iRSI(symbol,PERIOD_D1,14,0,j+1);
      if (D1<70 && D1_2>=70)return(1);
      if (D1>30 && D1_2<=30)return(-1);
     }  
     return(0);
    }
    
    
    LastBreak(pairs[i]);
    // Or
    LastBreak(Symbol());

  2. #982
    عضو جديد
    تاريخ التسجيل
    Apr 2017
    الدولة
    Syria
    المشاركات
    73

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة kira-h مشاهدة المشاركة
    طيب استخدم الدالة بدلالة الزوج وعند استدعائها تضع اسم الزوج
    مثال :
    كود:
    int LastBreak(string symbol)
    {
     for(j=1;j<iBars(symbol,PERIOD_D1);j++)   
     {
      double D1 = iRSI(symbol,PERIOD_D1,14,0,j);
      double D1_2 = iRSI(symbol,PERIOD_D1,14,0,j+1);
      if (D1<70 && D1_2>=70)return(1);
      if (D1>30 && D1_2<=30)return(-1);
     }  
     return(0);
    }
    
    
    LastBreak(pairs[i]);
    // Or
    LastBreak(Symbol());

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

  3. #983

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة Waddah مشاهدة المشاركة
    مشكور جدا ...نجحت بالطريقة الأخيرة ....السؤال أين كان الخطأ في الكود الذي كتبته انا أو الكود في ردك الأول ....منطقيا الكودات صحيحة ولا يوجد أخطاء في الجورنال لماذا النتائج غير صحيحة كانت ؟؟؟؟
    هذا على حسب كيف عرفت المصفوفة pairs، بحيث دالة الاستدعاء LastBreak لا تتعرف على ما بداخل المصفوفة
    التعديل الأخير تم بواسطة kira-h ; 09-02-2018 الساعة 08:21 PM

  4. #984
    عضو جديد الصورة الرمزية forex007
    تاريخ التسجيل
    Nov 2017
    الدولة
    مصر
    المشاركات
    5

    افتراضي

    السلام عليكم
    اذا سمحتوا شباب ابحث عن فونكشن تحسب حجم لوت بناء على الاستوب بمواصفات خاصة تطبق الشروط التالية :
    1- نسبة المخاطرة تحسب حسب وقف الخسارة مثلاً وقف الخسارة 5 نقاط اذا ضرب الاستوب بكون خسرت 1 % او بمرر لها قيمة مثل 0.5% يعني اقل من 1 %
    2- اذا دخلنا الصفقة صاحبة ماجك نمبر مثلا 12345 ضرب فيها الاستوب على خسارة ونحن اساسا قمنا بدخول بحجم لوت 1 % فيها ..الصفقة القادمة بما اني خسران فيها يدخل بنفس حجم لوت الخسران "يحمل نفس ماجك نمبر " وهذا لايعني ضرب الاستوب ندخل بنفس العقد لا لانه اساسا نستخدم تريلنج الاستوب ومطارده الارباح وشيئ طبيعي يضرب الاستوب وقد يضرب على ربح .. لكن الفونكشن تقوم بفحص مالمحصلة التي ضرب عندها وقف الخسارة هل في ربح ؟ او في خسارة ؟ اذا في ربح تستعمل بالعقد التالي النسبة التي قمنا بتمريرها مثلا 1% وعند الاغلاق على خسارة يتجاهل النسبة ويدخل باخر عقد خسرنا فيه والذي يمتلك نفس ماجك نمبر لانه ممكن نشغله ع اكثر من زوج وكل زوج يكون له ماجك نمبر خاص به ..
    3- هذه الخاصية بنفس الفونكشن تكون اكثر تهوراً بالادارة المالية طبعا تكون اختياريه مثل يكون معرفين متغير من نوع bool اسمه fixed اذا كان true عند تشغيل الاكسبيرت يشوف ماهو اعلى مبلغ موجود بالحساب مثلا 500$ دخل بعقد 0.10 وضرب الاستوب يقوم الكود بالنظر للحساب هل هو 500$ او اكثر ؟ اذا اقل او يساوي يفتح نفس العقد الخسران ويتجاهل النسبة يعني يرجع يفتح 0.10 اصبح المبلغ مثلاً 510$ هنا الكود يشوف الحساب ويخزنها بمتغر مثلا maxAccount ويبدء يدخل بنسبة 1% فرضاً اعطانا 0.11 وضرب عندها الاستوب واصبح المبلغ 505$ هنا خسرنا يتجاهل النسبة 1% ويرجع يدخل بعقد 0.11 وهكذا ...
    طبعا الخاصية رقم 3 تكون اختيارية
    بالاخير الفونكشن وظيفتها فقط تعيد لي حجم العقد وانا افقط استدعيها
    إن شاء الله ماتكون الفكرة معقدة
    جزاكم الله خير

  5. #985
    عضو
    تاريخ التسجيل
    Apr 2017
    المشاركات
    196

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة kira-h مشاهدة المشاركة
    السلام عليكم
    ستقارن التوقيت الحالي مع توقيت افتتاح الشمعة كالتالي:
    كود PHP:
    if((TimeCurrent()-Time[0])<60)//... 
    60 ثانية
    https://www.fxprg.com/vb/showthread....l=1#post877518

    طيب ولو عايز اقول في الخمس دقايق الاولى الشروط لم تكتمل
    وبعدين اكتملت في الدقيقة السادسة

  6. #986
    عضو
    تاريخ التسجيل
    Apr 2017
    المشاركات
    108

    افتراضي

    سلام عليكم اخ حسن انا مساوي دالة
    بدي من هل داله تعطين قمة cعند فتح الشمعه فقط وشكرا
    كود PHP:
    double PV() {   double  P=Point*10;   double  ihigh_0  iHigh(NULL,PERIOD_M150);   double  ilow_0  iLow(NULLPERIOD_M150);   double  iClose_0  iClose(NULLPERIOD_M150);               double  P0 = (ihigh_0 ilow_0)/;//----   double  ihigh_1  = iHigh(NULL, PERIOD_M15, 1);   double  ilow_1  = iLow(NULL, PERIOD_M15, 1);   double  iClose_1  = iClose(NULL,PERIOD_M15, 1);            double  P1 = (ihigh_1 + ilow_1 + iClose_1 + iClose_1)/4 ;   //----   double  C=(P0-P1)/P;
       
    return(NormalizeDouble(C,Digits));   } 

  7. #987
    عضو
    تاريخ التسجيل
    Apr 2017
    المشاركات
    108

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة sal_moh85 مشاهدة المشاركة
    سلام عليكم اخ حسن انا مساوي دالة
    بدي من هل داله تعطين قمة cعند فتح الشمعه فقط وشكرا
    كود PHP:
    double PV() {   double  P=Point*10;   double  ihigh_0  iHigh(NULL,PERIOD_M150);   double  ilow_0  iLow(NULLPERIOD_M150);   double  iClose_0  iClose(NULLPERIOD_M150);               double  P0 = (ihigh_0 ilow_0)/;//----   double  ihigh_1  = iHigh(NULL, PERIOD_M15, 1);   double  ilow_1  = iLow(NULL, PERIOD_M15, 1);   double  iClose_1  = iClose(NULL,PERIOD_M15, 1);            double  P1 = (ihigh_1 + ilow_1 + iClose_1 + iClose_1)/4 ;   //----   double  C=(P0-P1)/P;
       
    return(NormalizeDouble(C,Digits));   } 
    كود PHP:
    double PV() {   double  P=Point*10;   double  ihigh_0  iHigh(NULL,PERIOD_M150);   double  ilow_0  iLow(NULLPERIOD_M150);   double  iClose_0  iClose(NULLPERIOD_M150);               double  P0 = (ihigh_0 ilow_0)/;//----   double  ihigh_1  = iHigh(NULL, PERIOD_M15, 1);   double  ilow_1  = iLow(NULL, PERIOD_M15, 1);   double  iClose_1  = iClose(NULL,PERIOD_M15, 1);            double  P1 = (ihigh_1 + ilow_1 + iClose_1 + iClose_1)/4 ;   //----   double  C=(P0-P1)/P;
       
    return(NormalizeDouble(C,Digits));   } 
    ما بعرف ليش هيك عم تطلع داله بس لما خملها على موقع
    double PV()
    {
    double P=Point*10;
    double ihigh_0 = iHigh(NULL,PERIOD_M15, 0);
    double ilow_0 = iLow(NULL, PERIOD_M15, 0);
    double iClose_0 = iClose(NULL, PERIOD_M15, 0);
    double P0 = (ihigh_0 + ilow_0)/2 ;
    //----
    double ihigh_1 = iHigh(NULL, PERIOD_M15, 1);
    double ilow_1 = iLow(NULL, PERIOD_M15, 1);
    double iClose_1 = iClose(NULL,PERIOD_M15, 1);
    double P1 = (ihigh_1 + ilow_1 + iClose_1 + iClose_1)/4 ;
    //----
    double C=(P0-P1)/P;


    return(NormalizeDouble(C,Digits));
    }

  8. #988

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة sal_moh85 مشاهدة المشاركة
    سلام عليكم اخ حسن انا مساوي دالة
    بدي من هل داله تعطين قمة cعند فتح الشمعه فقط وشكرا
    كود PHP:
    double PV() {   double  P=Point*10;   double  ihigh_0  iHigh(NULL,PERIOD_M150);   double  ilow_0  iLow(NULLPERIOD_M150);   double  iClose_0  iClose(NULLPERIOD_M150);               double  P0 = (ihigh_0 ilow_0)/;//----   double  ihigh_1  = iHigh(NULL, PERIOD_M15, 1);   double  ilow_1  = iLow(NULL, PERIOD_M15, 1);   double  iClose_1  = iClose(NULL,PERIOD_M15, 1);            double  P1 = (ihigh_1 + ilow_1 + iClose_1 + iClose_1)/4 ;   //----   double  C=(P0-P1)/P;
       
    return(NormalizeDouble(C,Digits));   } 
    وعليكم السلام
    ستقوم باستدعاء الدالة لحظة افتتاح الشمعة فقط
    مثال :
    كود:
    datetime time=0;
    
    
    void OnTick()
    {
     if(time!=Time[0]&&Volume[0]<=2)
     {
      PV();
      time=Time[0]:
     } 
    }
    التعديل الأخير تم بواسطة kira-h ; 15-02-2018 الساعة 05:19 PM

  9. #989
    عضو
    تاريخ التسجيل
    Apr 2017
    المشاركات
    108

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة kira-h مشاهدة المشاركة
    وعليكم السلام
    ستقوم باستدعاء الدالة لحظة افتتاح الشمعة فقط
    مثال :
    كود:
    datetime time=0;
    
    
    void OnTick()
    {
     if(time!=Time[0]&&Volume[0]<=2)
     {
      PV();
      time=Time[0]:
     } 
    }
    مشكور اخ حسن طيب انا استعيدت الداله بس عند افتتاح الشمعه شلون بدي حطها بي شرط البيع او الشراء
    وسال تاني بي نسبه لي اوامر المعلقه سبريد وين منضيفوه يعني منضيفه بس على تك يروفت وستوب لوز ولا يوجد له اضافات تانيه وشكرا

  10. #990

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة sal_moh85 مشاهدة المشاركة
    مشكور اخ حسن طيب انا استعيدت الداله بس عند افتتاح الشمعه شلون بدي حطها بي شرط البيع او الشراء
    وسال تاني بي نسبه لي اوامر المعلقه سبريد وين منضيفوه يعني منضيفه بس على تك يروفت وستوب لوز ولا يوجد له اضافات تانيه وشكرا
    ستقوم بأضافة الشرط
    كود:
    if(time!=Time[0]&&Volume[0]<=2)
    مع شروط فتح الصفقة

    وبعد دالة OrderSend قم باضافة الصيغة أسفلها مباشرة:
    كود:
    time=Time[0]:
    * لكن سيتم فتح الأمر مرة واحدة بالشمعة ولن يتكرر بسبب تلك الشروط المضافة

    بالنسبة للاوامر المعلقة ستقوم بحساب سعر الأمر المعلق بالأسك أو البيد على حسب نوع الأمر يعني الشراء المعلق بالاسك والبيع المعلق بالبيد وبهذا سيتم احتساب قيمة السبريد
    التعديل الأخير تم بواسطة kira-h ; 15-02-2018 الساعة 06:37 PM

صفحة 99 من 143 الأولىالأولى ... 4989979899100101109 ... الأخيرةالأخيرة

العلامات المرجعية

العلامات المرجعية

ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •