النتائج 1 إلى 8 من 8

الموضوع: سؤال برمجي 2

  1. #1
    الصورة الرمزية Qamar14
    Qamar14 غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Sep 2010
    الإقامة
    المملكة العربية السعودية
    المشاركات
    1,488

    08 سؤال برمجي 2

    اهلين بالمبرمجين
    كيفكم وكيف الصحه

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

    فانا عملت اوامر معلقعه
    وتم تعليقه في الشاشه
    ولكن ما تم تفعليه
    هل بقدر اغير موقعه (برمجيا) قبل ان يتم التفعيل

    متال
    انا كاتبه هاد الكود
    كود PHP:
    OrderSend(Symbol(),OP_BUYSTOP,ldLot,IdPrice,3,ldStop,ldTake,lsComm,MAGIC,0,Blue); 
    وتم تعليق الأوردر
    وتغير السعر 10%
    وانا ابغى أنو الأوردر يتم تعديله كمان بـ10%
    هل هاد ممكن

    او لازم نحدف التيكيت
    ونعمل وحده تانيه مكانها؟!!!




    السؤال التاني:
    بعرف كيف أخلي الاكسبيرت يحسب الهاي للشمعه السابقه من 1 و 2 وغيرها
    ولكن أبغا أحدد اللهاي لشمعه اللي عند الساعه 12:44 متلا!
    كيف بقدر؟!!

    منتظره ردكم

  2. #2
    الصورة الرمزية wadi2012
    wadi2012 غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Aug 2012
    الإقامة
    جرين لاند
    المشاركات
    1,089

    افتراضي

    بالنسبة للسؤال الاول حتى يتم تغيير قيمة الاوردير المعلق تحتاج لعمل متغير وتضعيه في دالة ordersend وتعمل للمتغير شرط بحيث ان زاد او نقص عن قيمة تتغير قيمة المتغير وبالتالي تتغير قيمة الاوردير
    بالنسبة للسؤال الثاني لتحديد قيمة الهاي عند ساعة معينة
    حدد الزمن في متغير مستقل ثم استخدمي امر ibarshift
    ضعي الزمن فيه وتوقيت الشارت يعني هل بار الساعة او ربع ساعة وستعيد لك قيمة البار وثم ضعيه في الامر high وسيعطيك قيمة الهاي عند تلك الفترة
    انا اعطيك الفكرة وانت حاولي ان تتعبي شوية

  3. #3
    الصورة الرمزية أسامة
    أسامة غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Jun 2005
    الإقامة
    ليبيا
    المشاركات
    1,763

    افتراضي رد:سؤال برمجي 2

    اقتباس المشاركة الأصلية كتبت بواسطة wadi2012 مشاهدة المشاركة
    بالنسبة للسؤال الاول حتى يتم تغيير قيمة الاوردير المعلق تحتاج لعمل متغير وتضعيه في دالة ordersend وتعمل للمتغير شرط بحيث ان زاد او نقص عن قيمة تتغير قيمة المتغير وبالتالي تتغير قيمة الاوردير
    بالنسبة للسؤال الثاني لتحديد قيمة الهاي عند ساعة معينة
    حدد الزمن في متغير مستقل ثم استخدمي امر ibarshift
    ضعي الزمن فيه وتوقيت الشارت يعني هل بار الساعة او ربع ساعة وستعيد لك قيمة البار وثم ضعيه في الامر high وسيعطيك قيمة الهاي عند تلك الفترة
    انا اعطيك الفكرة وانت حاولي ان تتعبي شوية
    أخي wadi2012
    بالنسبة لردك على الجزء الأول ... أظنها غير ممكنة في حالة إرسال الأوردر المعلق إلى السيرفر ...
    وبحسب فهمي للسؤال ... بأن الأوردر قد تم وضعه على السيرفر ولكن لم ينفذ بعد بسبب أن سعر الدخول المنتظر لم يصل بعد وأيضا ممكن يتغير لو حصل شرط آخر ... لذلك لابد من إستخدام ...

    كود:
    bool OrderModify( int ticket, double price, double stoploss, double takeprofit, datetime expiration, color arrow_color=CLR_NONE)
    والله أعلم !
    توقيع العضو
    نَصِيحَتِي لَكَ... اِبْحَثْ جَيِّدًا قَبْلَ أَنْ تَسْأَلَ... فَهَذَا يُعْلِمَك أَكْثَرَ

  4. #4
    الصورة الرمزية wadi2012
    wadi2012 غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Aug 2012
    الإقامة
    جرين لاند
    المشاركات
    1,089

    افتراضي رد:سؤال برمجي 2

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

    كود:
    bool OrderModify( int ticket, double price, double stoploss, double takeprofit, datetime expiration, color arrow_color=CLR_NONE)
    والله أعلم !
    مزبوط صح كلامك انا نسيت
    لكن لم اجرب ordermodify
    ولكن اعتقد من الاصلح اغلاء الاوردير عن طريق orderdelete
    أعتذر عن الخطا الاول

  5. #5
    الصورة الرمزية أسامة
    أسامة غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Jun 2005
    الإقامة
    ليبيا
    المشاركات
    1,763

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة wadi2012 مشاهدة المشاركة
    مزبوط صح كلامك انا نسيت
    لكن لم اجرب ordermodify
    ولكن اعتقد من الاصلح الغاء الاوردر عن طريق orderdelete
    أعتذر عن الخطا الاول
    لاعليك يا أخي ... كلنا بنتعلم من بعض .
    نعم ... من الممكن إلغاء الأوردر وإرسال أوردر جديدة للسيرفر
    بدلا من تعديل الأوردر الموجود. وهذه أيضا فكرة جميلة
    توقيع العضو
    نَصِيحَتِي لَكَ... اِبْحَثْ جَيِّدًا قَبْلَ أَنْ تَسْأَلَ... فَهَذَا يُعْلِمَك أَكْثَرَ

  6. #6
    الصورة الرمزية Qamar14
    Qamar14 غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Sep 2010
    الإقامة
    المملكة العربية السعودية
    المشاركات
    1,488

    افتراضي رد:سؤال برمجي 2

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

    ............
    او لازم نحدف التيكيت
    ونعمل وحده تانيه مكانها؟!!!
    .................


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

    ولكن اعتقد من الاصلح اغلاء الاوردير عن طريق orderdelete

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

    بالفعل هاد اللي قاعده اجربها === شوف المرفقات

    وبالنسبه للسؤال التاني
    للحين ما عارفه ليها
    الصور المصغرة للصور المرفقة الصور المصغرة للصور المرفقة test.jpg‏  

  7. #7
    الصورة الرمزية xcv114
    xcv114 غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Oct 2010
    الإقامة
    مصر
    المشاركات
    1,022

    افتراضي رد:سؤال برمجي 2

    اقتباس المشاركة الأصلية كتبت بواسطة Qamar14 مشاهدة المشاركة
    اهلين بالمبرمجين
    كيفكم وكيف الصحه

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

    فانا عملت اوامر معلقعه
    وتم تعليقه في الشاشه
    ولكن ما تم تفعليه
    هل بقدر اغير موقعه (برمجيا) قبل ان يتم التفعيل

    متال
    انا كاتبه هاد الكود
    كود PHP:
    OrderSend(Symbol(),OP_BUYSTOP,ldLot,IdPrice,3,ldStop,ldTake,lsComm,MAGIC,0,Blue); 
    وتم تعليق الأوردر
    وتغير السعر 10%
    وانا ابغى أنو الأوردر يتم تعديله كمان بـ10%
    هل هاد ممكن

    او لازم نحدف التيكيت
    ونعمل وحده تانيه مكانها؟!!!




    السؤال التاني:
    بعرف كيف أخلي الاكسبيرت يحسب الهاي للشمعه السابقه من 1 و 2 وغيرها
    ولكن أبغا أحدد اللهاي لشمعه اللي عند الساعه 12:44 متلا!
    كيف بقدر؟!!

    منتظره ردكم
    بالنسبة للسؤال الأول : الأخوة ما قصروش .. بارك الله فيهم
    ------------------------
    بالنسبة للسؤال الثاني:
    عشان أجوابك على السؤال التاني هطول في الإجابة شوية
    كود PHP:
    Time[] 
    دي عبارة عن مصفوفة فيها الوقت إللي مضى بالثانية من 1 يناير 1970 حتى الأن
    وبالتالي لما نحتاج نجيب أي توقيت لازم نحول الأيام والساعات والدقايق لثواني

    يعني خلينا في مثال على التوقيت إللي في مشاركتك
    12:44
    يبقى الساعات 12 والدقايق 44
    كود PHP:
    int hour=12;  int minute=44
    أو مثلا تخليهم متغيرات خارجية بحيث تقدري تغيري فيهم براحتك
    ------------
    عشان نحول الساعات لثواني هنضرب 12 × 60 × 60
    عشان نحول الدقايق لثواني هنضرب 44 × 60
    ونجمع الناتجين مع بعض
    كود PHP:
    int seconds=(hour*60*60)+(minute*60); 
    ويبقى كده إحنا جبنا الوقت إللي مضى بالثواني منذ بداية اليوم 00:00 حتى 12:44
    --------------------

    دلوقتي بقى هنحتاج نجيب التوقيت بالثواني لبداية اليوم الحالي ( يعني الوقت إللي مر بالثواني من 1 يناير 1970 حتى اليوم الحالي ) ودي بسيطة
    كود PHP:
    int daystart=iTime(Symbol(),PERIOD_D1,0); 
    دلوقتي إحنا معانا
    1 - التوقيت بالثواني للحظة بداية اليوم الحالي daystart
    2 - التوقيت بالثواني للشمعة 12:44 ( طبعا شارت الدقيقة ) seconds

    هنجمع daystart + seconds
    كود PHP:
    int TimeOfCandle=daystart+seconds
    وكده يكون عندنا الوقت بالثانية من 1 يناير 1970 حتى الساعة 12:44
    ---------------------

    عايزين بقى نجيب رقم الشمعة إللي كان عندها الوقت بالثواني = TimeOfCandle إللي إحنا جبناها
    هنستخدم iBarShift
    كود PHP:
    int CandleShift=iBarShift(Symbol(),PERIOD_M1,TimeOfCandle); 
    وكده يكون CandleShift هو رقم الشمعة على شارت الدقيقة ( لاحظي إستخدما شارت الدقيقة PERIOD_M1 )

    نجيب بقى منه هاي الشمعة
    كود PHP:
    double CandleHigh=iHigh(Symbol(),PERIOD_M1,CandleShift); 
    الكود النهائي بالشكل ده :
    كود PHP:
    int hour=12;  int minute=44
       
    int daystart=iTime(Symbol(),PERIOD_D1,0);
       
       
    int seconds=(hour*60*60)+(minute*60);
       
    int TimeOfCandle=daystart+seconds;
       
    int CandleShift=iBarShift(Symbol(),PERIOD_M1,TimeOfCandle);
       
       
    double CandleHigh=iHigh(Symbol(),PERIOD_M1,CandleShift);
       
    Comment(CandleHigh); 

  8. #8
    الصورة الرمزية Qamar14
    Qamar14 غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Sep 2010
    الإقامة
    المملكة العربية السعودية
    المشاركات
    1,488

    افتراضي

    شرح دقيق ومبدع
    الف شكر ليك
    وبميزان حسناتك يااااارب


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