الدرس الثانى : مفاهيم أساسية
والتعريف
بالثوابت والمتغيرات
مفهوم التيك tick : وهى المعلومة اللحظية التى تؤدى الى تغير السعر أو الزمن على الشارت بمعنى أذا فرضنا ان السعر الحالى هو 1.2561 وان الوقت هو 4 صباحا و5 دقائق فأن هذا السعر ليتغير على الشارت يحتاج وصول تيك من سرفر الشركة المرتبط بها الميتاتريدر الخاص بنا وفى حالة تأخرها تعانى الشارت من عدم التحديث فمثلا قد تلاحظ فى حالة فتحك لشارت الدقيقة وبطئ سرفر الشركة أو أتصال الأنترنت تلاحظ ان الدقيقة قد انتهت على التوقيت الحقيقى فى حاسبك ( فى بعض الأحيان قد يمر 3أو 4 دقائق ) ولكنك تجد ان الشارت لم تتغير سواء من جهة السعر او الزمن ويرجع ذلك الى أن التيك التالية لم تصل بعد . مهم جدا مفهوم التيك هذا لأنه ببساطة وصول تيك جديدة لجهازك هى السبب فى بدء الأكسبرت لعمله فوجود الأكسبرت على الشارت مهما كان فاعلا ألا أنه لن يبدأ تنفيذ الأوامر ألا بوصول التيك وعند نهاية التنفيذ فأنهلن يبدأ دورة جديدة من التعليمات ألا بوصول التيك التالية ...ويجب ان يكون ذلك واضحا . القدرة على التحكم : قبل تفعيل الأكسبرت يكون التحكم فى يد المنصة تماما وكليا و بمجرد تفعيل الأكسبرت و وصول التيك الأولى يصبح الأكسبرت هو المتحكم بمعنى أن المنصة تمرر قدراتها كلها للأكسبرت ليتخذ قراراته بنفسه حتى يعيد return الأكسبرت التحكم مرة أخرى للمنصة ( عادة تستعيد المنصة التحكم فى خلال أجزاء من الثانية تكون كافية للأكسبرت لأداء وظيفته وأعادة التحكم للمنصة ) ... ويجب أيضا تذكر ذلك لأننا سنهتم بأعادة التحكم للمنصة بمجرد أنتهاء الأكسبرت من أداء وظيفته . التعليقات comments : ينقسم البرنامج لنوعين من التكست text أولهما هو الأوامر وأجراءات التشغيل والثانى هو التعليقات والتعليقات تستخدم لكى تسهل تنقيح البرنامج من الاخطاء أو التعديل فية , فهى لاتنفذ بواسطة المنصة ولكن توضع لتوضيح وظيفة الأجزاء المختلفة من البرنامج للمبرمج والمتابعين . والبرنامج الجيد والمبرمج الجيد هو الذى يوضح كل ما يفعله فى الكود بواسطة التعليقات المختلفة . وتنقسم التعليقات الى نوعين : 1- تعليق السطر الواحد one line comment : وهو سطر واحد فقط كتعليق بسيط ويتم الأعلان عنه بواسطة تكرار الرمز " /" مرتين // 2- تعليق متعدد الأسطر multi-line comment : ويتم الأعلان عنه فى بدايته ب " */ " وفى نهاية التعليق نضع " /* " مثال : الثوابت والمتغيرات constants & variables : الثوابت constants : وهى قيم تظل ثابتة فى البرنامج وقد تكون أرقام أو أسماء أو مثلا قيم ثابتة مثل عجلة الجاذبية الأرضية أو نسب الفيبوناتشى . وبمجرد تشغيل البرنامج فأنه يحدد مكان خاص فى ذاكرة الجهاز بحجم ثابت طبقا لنوع الثابت ويحتفظ بالثابت فى هذا الجزء من الذاكرة ولايمكن تغييره أبدا أثناء تشغيل البرنامج سواء بواسطة المبرمج أو البرنامج أو ايا كان . أمثلة : 35، 23.8 % , "Maged" المتغيرات variables : المتغيرات تختلف عن الثوابت حيث يكون للمتغير أسم ويسمى أسم المتغير ويكون له قيمة أبتدائية ويمكن تغيير القيمة فى أى وقت أثناء عمل البرنامج ولكن تخضع تسمية المتغيرات لبعض القواعد الأساسية : 1- نستعمل فى أسماء المتغيرات الحروف من a to z و A to Z و الأرقام 0 to 9 والشرطة السفلى underscore " _ " . 2- يجب أن يبدأ أسم المتغير بحرف .
3- المتغير a يختلف تماما عن المتغير A فى لغة MQL4 .
ويقوم البرنامج بداية بتخصيص جزء من الذاكرة مناسب لنوعية هذا المتغير ويسميه بأسم المتغير وفى حالة ذكر المتغير فى أى سطر من سطور البرنامج يذهب البرنامج لهذا المكان من الذاكرة ويستدعى محتوياته ويعوض عنها مكان أسم المتغير . والذى لايمكن تغييره فى هذة الحالة هو أسم المتغير بمعنى مادمنا حجزنا هذا الجزء من الذاكرة للمتغير A مثلا فلا يمكننا أن نسمى نفس الجزء B مثلا . مثال للثوابت والمتغيرات : المتغيرين a يساوى 17 و b يساوى 5
a = 17
b = 5
هنا جعلنا المتغير c يساوى 22
c = a+b مثال أخر : مثال أخير :[PHP]
a = "nader ";
b= "borsaat";
Alert (a+"loves "+b);
[/PHP]
الأن عند تشغيل البرنامج سنجد التنبية التالى كما فى الصورة : دروسنا القادمة :
-أنواع البيانات .
-العمليات والأصطلاحات .
-المؤثرات.
-الدوال.
- الميتا أديتور تعامله مع الملفات وأنشاء برنامج جديد .
- النظام الداخلى للبرنامج .
- الدوال الخاصة .
التوقيع
طبعا وجود هذا الموضوع بعد ان تأخر كثيرا فى الأستراحة فرحنى جدا ...ورد د.أسامة عادل شجعنى كثيرا
أشكر جميع من رد
... و شكرا إدارة بورصات
م.نادر فيليب