النتائج 1 إلى 8 من 8
الموضوع: سؤال برمجي 2
- 27-06-2013, 11:13 AM #1
سؤال برمجي 2
اهلين بالمبرمجين
كيفكم وكيف الصحه
اليوم انا جايه اتعلم منكم شي محدد
عندي سؤال يخص الاوامر المعلقه
متل
باي ستوب
باي ليمت
ونفس الشي عن البيع
سيب ستوب
سيل لمت
فانا عملت اوامر معلقعه
وتم تعليقه في الشاشه
ولكن ما تم تفعليه
هل بقدر اغير موقعه (برمجيا) قبل ان يتم التفعيل
متال
انا كاتبه هاد الكود
كود PHP:OrderSend(Symbol(),OP_BUYSTOP,ldLot,IdPrice,3,ldStop,ldTake,lsComm,MAGIC,0,Blue);
وتغير السعر 10%
وانا ابغى أنو الأوردر يتم تعديله كمان بـ10%
هل هاد ممكن
او لازم نحدف التيكيت
ونعمل وحده تانيه مكانها؟!!!
السؤال التاني:
بعرف كيف أخلي الاكسبيرت يحسب الهاي للشمعه السابقه من 1 و 2 وغيرها
ولكن أبغا أحدد اللهاي لشمعه اللي عند الساعه 12:44 متلا!
كيف بقدر؟!!
منتظره ردكم
- 27-06-2013, 01:01 PM #2
بالنسبة للسؤال الاول حتى يتم تغيير قيمة الاوردير المعلق تحتاج لعمل متغير وتضعيه في دالة ordersend وتعمل للمتغير شرط بحيث ان زاد او نقص عن قيمة تتغير قيمة المتغير وبالتالي تتغير قيمة الاوردير
بالنسبة للسؤال الثاني لتحديد قيمة الهاي عند ساعة معينة
حدد الزمن في متغير مستقل ثم استخدمي امر ibarshift
ضعي الزمن فيه وتوقيت الشارت يعني هل بار الساعة او ربع ساعة وستعيد لك قيمة البار وثم ضعيه في الامر high وسيعطيك قيمة الهاي عند تلك الفترة
انا اعطيك الفكرة وانت حاولي ان تتعبي شوية
- 27-06-2013, 03:53 PM #3
رد:سؤال برمجي 2
أخي wadi2012
بالنسبة لردك على الجزء الأول ... أظنها غير ممكنة في حالة إرسال الأوردر المعلق إلى السيرفر ...
وبحسب فهمي للسؤال ... بأن الأوردر قد تم وضعه على السيرفر ولكن لم ينفذ بعد بسبب أن سعر الدخول المنتظر لم يصل بعد وأيضا ممكن يتغير لو حصل شرط آخر ... لذلك لابد من إستخدام ...
كود:bool OrderModify( int ticket, double price, double stoploss, double takeprofit, datetime expiration, color arrow_color=CLR_NONE)
- 27-06-2013, 06:12 PM #4
- 27-06-2013, 07:34 PM #5
- 28-06-2013, 12:32 AM #6
- 28-06-2013, 01:40 AM #7
رد:سؤال برمجي 2
بالنسبة للسؤال الأول : الأخوة ما قصروش .. بارك الله فيهم
------------------------
بالنسبة للسؤال الثاني:
عشان أجوابك على السؤال التاني هطول في الإجابة شوية
كود PHP:Time[]
وبالتالي لما نحتاج نجيب أي توقيت لازم نحول الأيام والساعات والدقايق لثواني
يعني خلينا في مثال على التوقيت إللي في مشاركتك
12:44
يبقى الساعات 12 والدقايق 44
كود PHP:int hour=12; int minute=44;
------------
عشان نحول الساعات لثواني هنضرب 12 × 60 × 60
عشان نحول الدقايق لثواني هنضرب 44 × 60
ونجمع الناتجين مع بعض
كود PHP:int seconds=(hour*60*60)+(minute*60);
--------------------
دلوقتي بقى هنحتاج نجيب التوقيت بالثواني لبداية اليوم الحالي ( يعني الوقت إللي مر بالثواني من 1 يناير 1970 حتى اليوم الحالي ) ودي بسيطة
كود PHP:int daystart=iTime(Symbol(),PERIOD_D1,0);
1 - التوقيت بالثواني للحظة بداية اليوم الحالي daystart
2 - التوقيت بالثواني للشمعة 12:44 ( طبعا شارت الدقيقة ) seconds
هنجمع daystart + seconds
كود PHP:int TimeOfCandle=daystart+seconds;
---------------------
عايزين بقى نجيب رقم الشمعة إللي كان عندها الوقت بالثواني = TimeOfCandle إللي إحنا جبناها
هنستخدم iBarShift
كود PHP:int CandleShift=iBarShift(Symbol(),PERIOD_M1,TimeOfCandle);
نجيب بقى منه هاي الشمعة
كود 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);
- 28-06-2013, 08:20 AM #8
شرح دقيق ومبدع
الف شكر ليك
وبميزان حسناتك يااااارب