if داخل if أخرى و لا تشتغل

اقتباس

سلام الله عليكم ،،

كيف الحال ؟؟

أنا مبتدئ في البرمجة و انتهيت للتو من دراسة لغة mql4 ، أتمرن حاليا على صياغة كود بسيط جدا مكون من بعض الدوال الاساسية :

الكود عبارة عن تفعيل 3 أوامر :

  •  الامر الاول : أمر شراء ( بدون شروط ) ،
  • الامر الثاني : إذا صعد السعر لنقاط معينة يتم تفعيل أمر بيع ،
  • و (( و ليس أو )) ،
  • الامر الثالث : إذا نزل السعر لنقاط معينة يتم تفعيل أمر شراء ، (( هذا الامر مرتبط بالامر الثاني و لا يتحقق الا بعد تحقق الامر الثاني )) ،،

واجهت مشاكل مع دالة ordersend حيث كان يتفعل عندي اوامر كثيرة عوض امر واحد فوجدت مساعدة في باقي المنتديات و لله الحمد فتم حل المشكل ،،،

فصار يتفعل الامر الاول الخاص بالشراء ، ثم الامر الثاني الخاص بالبيع ،،، لكن الامر الثالث لا يتفعل ، مع العلم ان الامر الثالث مرتبط بتحقق الامر الثاني ،،،

اتمنى الحصول على مساعدتكم و اعتباري طالب عندكم ، فالهدف عندي التعلم و لايزال عندي الكثير من الاسئلة ،،،

تقبلوا احترامي و شكري ،،،

الملفات التي تم تحميلها:
اقتباس

عليكم السلام

اختصار استراتيجيتك بتقول

1 - اذا كان لا يوجد اي صفقة مفتوحه يقوم الاكسبرت بفتح صفقة شراء

2 - ثم اذا صعد السعر اعلى من سعر الصفقة الاولى عدد من النقاط يقوم الاكسبرت بفتح صفقة بيع

3 - ثم اذا رجع وهبط السعر لاسفل من سعر الصفقة الاولى عدد من النقاط يفتح صفقة شراء

كما بالصورة

تم اصلاح الكود حتى يقوم بالمطلوب ( علما ان الاكواد المرفقة منك اولا لا تتضمن متى يتم اغلاق الصفقات المفتوحه , ثانيا بناء على استراتيجيتك فاذا تم فتح الصفقة الثانية واستمر السعر في الصعود فلن يتم فتح الصفقة الثالثة لانه لم تتحقق شروطها )

الملفات التي تم تحميلها:
اقتباس

شكرا أخي ،،

ربي يبارك فيك ،،

فهمت الآن خطئي ،،

فقط عندي سؤالين سأكون شاكرا و ممتنا ان تكرمت و رديت عليهما ،،

السؤال الأول : حاولت تعريف المتغير () total=TotalOrders في بداية الكود كمتغير كلوبال فلم يفلح الأمر ، لم ؟؟؟؟

السؤال الثاني : هل التغيير اللذي وضعته في الكود من إبداعك الشخصي كلمسة خاصة بك كمبرمج ، أم الامر منقول و معمول به عند أغلب المبرمجين للغة mql4 ، إن كان منقول فهل هناك مراجع أستفيد منها ؟؟؟

تحياتي و معذرة على الازعاج

اقتباس

 

اقتبس من driss في 4 مايو، 2018, 1:58 م

السؤال الأول : حاولت تعريف المتغير () total=TotalOrders في بداية الكود كمتغير كلوبال فلم يفلح الأمر ، لم ؟؟؟؟

بالنسبة لتعريف متغير كجلوبال يتم فقط وضع اسم المتغير فقط في الجلوبال اما قيمته لابد ان تكون داخل دالة من الدوال مثل دالة int init()  او void OnTick() او اي داله اخرى 

 

اقتبس من driss في 4 مايو، 2018, 1:58 م

 

 

السؤال الثاني : هل التغيير اللذي وضعته في الكود من إبداعك الشخصي كلمسة خاصة بك كمبرمج ، أم الامر منقول و معمول به عند أغلب المبرمجين للغة mql4 ، إن كان منقول فهل هناك مراجع أستفيد منها ؟؟؟

تحياتي و معذرة على الازعاج

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

ابدا مافيش ازعاج اهلا بك مرة اخرى