صفحة 1 من 2 12 الأخيرةالأخيرة
النتائج 1 إلى 15 من 29
  1. #1
    الصورة الرمزية د/مصطفى
    د/مصطفى غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Jul 2010
    الإقامة
    مصر
    المشاركات
    1,168

    افتراضي تعالوا نتعلم برمجة

    بسم الله الرحمن الرحيم

    معظمنا الان بيعتمدوا في تجارتهم على المؤشرات و نسبة مش قليلة بدأت تستخدم الاكسبيرتات و تقلل من التداول اليدوي ...... البعض لانه مش متفرغ و لان الاكسبيرت بيشيل الحالة النفسية من التجارة تماما و كمان شغال 24 ساعة

    و حتى اللي مش بيستخدم الاكسبيرتات و بيفضل التداول اليدوي فغالبا بيستعمل استراتيجية فيها مؤشر او اكتر
    اما MOVING AVERAGE او MACD او BOLLINGER BANDS او او او ...
    بس للاسف بعضنا بيستخدم المؤشرات دي من غير ما يعرف هوا بيشغل ازاي ( و انا منهم طبعا )
    ( ان انته تعرف المؤشر بيشتغل ازاي ده هيخليك تعرف هل هو مفيد و لا و امته تستخدمه و ازاي تستخدمه )

    و احيانا كتير بنقعد ندور على اكسبيرتات و نعمل باك تيست و تغيير في الاعدادت و مش بنعرف هيا الاعدادات دي اعدادات ايه اصلا

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

    احيان كتيرة بتيجي في دماغي افكار جامدة بس مش عارف اطبقها ازاي لاني معرفش ابرمج و حتى لو عرفت اطبقها باخد وقت طويل جدا عشان اختبرها و اطورها .... لو كنت اعرف اعملها اكسبيرت كنت عملت باك تيست في ثواني و عرفت هل محتاجه تطوير تاني و لا لأ

    كام واحد مننا بيغلط نفس الغلطة لاكتر من مرة اما تسرع في دخول الصفقة قبل اكتمال الشروط او دخول بلوت عالي او يكون زعلان و مخنوق من الخسارة فتيجي فرصة ممتازة قدامه و ميرضاش يدخلها ..... طبعا لو كان اكسبيرت مكنش حصل و لا حاجه من دول

    للاسباب اليي فاتت قررت اتعلم برمجة و بحثت في النت عن افضل كورس بيشرح MQL4 و لقيت ناس كتيرة بتمدح في CODERS GURU
    لما دورت في المنتديات العربية عرف ان CODERS GURU ده اصلا مهندس عربي مسلم ( المهندس احمد سليمان ) و كمان لقيت اغلب الكورس مترجم عربي ( اللي عاوزه يكتب دروس د وليد سليمان في جوجل )

    بدات اتعلم في الكورس و خلصت فيه كتير بس للاسف الكورس كان ناقص 3 او 4 دروس و طبعا لقيت بعض الحاجات مش فاهمها فطلبت مساعدة حبيبنا المهندس اسامة و بالفعل قبل يساعدني و قالي اي درس مش فاهمه او حاجه صعبة قلي عليها و انا هشرحها تاني

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

    فاي شخص عاوز يتعلم , يتفضل معانا هنا و يقرا الدروس و يحاول يطبق و نساعد بعض لغاية ما نوصل لمرحلة الاحتراف في MQL4

    في الرابط الكورس كامل ما عدا اخر اربع دروس اللي الاستاذ اسامة وعدنا انه هيشرحهم
    https://forum.arabictrader.com/t119065.html

    وربنا يوفقنا ان شاء الله

  2. #2
    الصورة الرمزية uae forex
    uae forex غير متواجد حالياً موقوف
    تاريخ التسجيل
    Apr 2009
    الإقامة
    ALAIN
    المشاركات
    1,101

    افتراضي

    متابع ان شاء الله

  3. #3
    الصورة الرمزية د/مصطفى
    د/مصطفى غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Jul 2010
    الإقامة
    مصر
    المشاركات
    1,168

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة uae forex مشاهدة المشاركة
    متابع ان شاء الله
    شرف لي متابعتك اخي الكريم و ان شاء الله نساعد بعض في تعلم البرمجة

  4. #4
    الصورة الرمزية Ahmed Shihab
    Ahmed Shihab غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Feb 2009
    المشاركات
    496

    افتراضي

    عليك بهذا الموضوع

    https://forum.arabictrader.com/t133299.html

  5. #5
    الصورة الرمزية Qadri
    Qadri غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jul 2007
    الإقامة
    مصر
    المشاركات
    164

    افتراضي

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

  6. #6
    الصورة الرمزية د/مصطفى
    د/مصطفى غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Jul 2010
    الإقامة
    مصر
    المشاركات
    1,168

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة Qadri مشاهدة المشاركة
    كل يوم هاتلاقينى هنا ان شاء الله .. ولو انى معرفش خطة العمل هاتبقى ازاى بس انا متحمس
    هنقسم الكورس بحيث اننا كل يوم نفهم درسين و نحاول نطبق ...... لو صح نكمل و لو غلط هنكتب الكود هنا عشان مستر دولار يصححه لينا

    النهاردة ان شاء الله الدرس الاول و الثاني

  7. #7
    الصورة الرمزية McGene2010
    McGene2010 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jul 2010
    المشاركات
    128

    افتراضي

    Jazak Allah Khyarn.. Very good subject and strategy of learning. I am with you..

  8. #8
    الصورة الرمزية p7i
    p7i
    p7i غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Sep 2010
    الإقامة
    الإمارات العربية المتحدة
    المشاركات
    446

    افتراضي

    موضوع رائع و كنت اريد اقول نفس الكلام يا رب ينجح هذا الموضوع
    و جزاك الله خير يا صاحب الموضوع

  9. #9
    الصورة الرمزية د/مصطفى
    د/مصطفى غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Jul 2010
    الإقامة
    مصر
    المشاركات
    1,168

    افتراضي

    شكرا لكل اللي رد و ان شاء الله تكون بداية موفقة

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

  10. #10
    الصورة الرمزية د/مصطفى
    د/مصطفى غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Jul 2010
    الإقامة
    مصر
    المشاركات
    1,168

    افتراضي

    الدروس للدكتور وليد سليمان


    بسم الله الرحمن الرحيم

    مرحبا بكم في مقدمة دروس لغة MQL4 ,

    في هذه السلسلة من الدروس , سأحاول ان اكشف اسرار و غموض لغة MQL4 بمنحكم دروس شاملة مدعمة بالأمثلة الواضحة والفعالة .

    في هذه السلسلة من الدروس سأريكم بأذن الله تعالى كيف تستخدمون MQL4 لبناء الكسبيرت والمؤشر والسكريبت الخاص بكم .

    لو أحد المتابعين معي من مبرمجي لغة ال C (او اللغة المتقدمة ++C ) فسيفهم لغة MQL4 قبل حتى ان ابدأ الدروس , وعلى العكس من ذلك , لو لم تكتب اي برامج من قبل (وهم الأغلبية الساحقة) , ليس هناك اي مشكلة , فسأخذ بيدك وأساعدك لتفهم علم البرمجة بوجه عام

    الأن دعونا نبدأ على بركة الله من البداية :

    لغة MQL4 ؟ ما هي ولماذا نستخدمها واين نكتبها ؟

    لغة MQL4 هي اختصار الحروف الأولى من MetaQuotes Language 4.
    MetaQuotes هي اسم الشركة التي قامت ببناء برنامج الميتاتريدر الشهير للتداول.
    ولجعله أقوى برنامج تداول على مستوى الشركات والبروكرز قامت بتزويده بلغة برمجية خاصة به(MQL4) تمكنك كمستخدم للبرنامج من صنع استراجيتك الخاصة على هيئة برنامج يقوم بالمتاجرة اليا بدلا منك

    لماذا نستخدم لغة MQL4 ؟
    في الحقيقة هناك 3 استخدامات رئيسية لهذه اللغة :

    1- الخبير الألي (الإكسبيرت) .. Expert Advisor
    2- المؤشرات الخارجية .. Custom indicator
    3- البرامج المساعدة .. Scripts

    ** الخبير الألي (الأكسبيرت) .. Expert Advisor : وهو برنامج يقوم بالمتاجرة بدلا عنك وادارة صفقاتك بطريقة اوتوماتيكية , على سبيل المثال هو يفتح عقودك بيع او شراء على طريقتك الخاصة ويديرها من وضع او تغيير ستوب لوز او ليميت بطريقة الية بحتة

    ** المؤشرات الخارجية .. Custom indicator : وهو برنامج يقوم برسم اشارات لتحديد نقاط الدخول والخروج وسلوك محدد للسعر دون الدخول في متاجرة الية او فتح او ادارة صفقات .

    ** البرامح المساعدة .. Scripts : وهو برنامج مخصص للقيام بعمليات بعيدة عن المتاجرة بل لتسهيل بعض الأمور , على سبيل المثال برنامج ينبهك بوصول رسالة الى بريدك او اغلاق جميع الصفقات بضغطة زر واحد وغيرها من الأمور العادية .

    والأن السؤال الأخير .. اين نكتب لغة MQL4 ؟

    لكتابة اكواد لغة MQL4 وكأي شئ في العالم هناك طريقتين , الطريقة الصعبة والطريقة السهلة .

    1- الطريقة الصعبة :

    الطريقة الصعبة هي كتابة اكواد لغة MQL4 على اي محرر نصوص تفضله وبرنامج وسيط لعملية تجميع الكود Compile (تحويل الكود المكتوب بلغتنا التي نفهمها الى لغة الألة الثنائية , الصفر والواحد ) .
    برنامج ال Notebad الموجود على اجهزتنا جميعا ليس سيئا , ويمكنك بعد ذلك حفظه يدويا على اي امتداد تحب وان كان في حالتنا هنا سيكون الأمتداد mq4. .

    بعد ذلك نأتي لخطوة التجميع Compile .:

    * ما هو التجميع او Compile ?
    ** هي عملية تحويل البرنامج المكتوب بلغتنا البشرية المفهومة والمقروءة (الأنجليزية) الى لغة الألة (اللغة الثنائية Binary system) وهي عملية مهمة للغاية فهي اللغة الوحيدة التي يفهمها الكومبيوتر لينفذ اوامرنا وبرامجنا وأفكارنا .

    وخطوة التجميع Compile في هذه الطريقة معقدة بعض الشئ , فعليك استدعاء ملف MetaLang.exe من مجلد الميتاتريدر على جهازك لتحويل ملف mq4 الذي كتبته بيدك ليحوله الى ملف ذو امتداد ex4 المكتوب بلغة الألة والغير مفهومة لنا .

    بعد تصنيع ملف ex4 لن يحتاج الميتاتريدر الملف الأصلي mq4 المكتوب بلغتنا والذي يحتوي على اكواد برنامجك الخاص.

    *** الخبر الجيد هنا اننا لن نحتاج الى هذه الطريقة (للقراءة فقط) وانما تكلمت عنها فقط لمعرفة الية عمل البرنامج وسيكون عملنا كله بالطريقة الثانية الأتي الكلام عنها بعد قليل.

    2- الطريقة البسيطة :

    الميتاتريدر هنا يوفر علينا كل الخطوات السابقة ببرنامجه الرائع الميتااديتور MetaEditor والذي يحتوي على هذه المميزات:

    * محرر نصوص متطور يقوم بتمييز مفردات اللغة ووضوح البناء التركيبي للأكواد والتفريق بين مفردات لغة MQL4 الخاصة ومفردات اكوادك الشخصية مما يوفر سهولة التعديل او الأضافة في الكود الخاص بك.

    * سهولة عملية تجميع compile لبرنامجك فيكفي ان تضغط على F5 او اضغط على compile في اعلى صفحة الميتااديتور وسيقوم هو بكل العمل الصعب عليك بتحويل برنامجك الى ex4 , الى جانب انه خلال عملية التجميع compile يقوم باكتشاف الأخطاء البرمجية بسهولة واخبارك بها في جزء الأخطاء اسفل المحرر.

    * سهولة معرفة مفردات اللغة الخاصة عن طريق تضليل الكلمة المراد شرح عملها في لغة MQL4 بالماوس والضغط على F1





    في الدرس القادم بأذن الله سنعرف اكثر عن برنامج الميتا اديتور MetaEditor
    اليوم احببت ان اقدم لكم مقدمة بسيطة وامسي عليكم
    وغدا بأذن الله سيبدأ العمل الحقيقي وسندرس البناء الهيكلي او قواعد Syntax لغة الميتا
    وارحب بكل اسئلتكم واستفساراتكم واقتراحاتكم ...

    اراكم على خير مجددا
    وليد


  11. #11
    الصورة الرمزية د/مصطفى
    د/مصطفى غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Jul 2010
    الإقامة
    مصر
    المشاركات
    1,168

    افتراضي

    الدروس للدكتور وليد سليمان

    بسم الله الرحمن الرحيم

    مرحبا بكم في الدرس الأول ... قواعد لغة الميتا (Syntax)

    سنتكلم اليوم عن القواعد النحوية للغة MQL4

    * ما معنى كلمة SYNTAX بالنسبة للغة الميتا ؟
    ** هي القواعد النحوية للغة من مفردات خاصة بها (الكلمات المحجوزة) لأشاراتها لأعدادتها ووضع الأوامر والشروط (الأكواد) بطريقة صحيحة برمجيا .

    (قواعد اللغة العربية من مبتدأ وخبر وحروف جر ومفعول به وعلامات ترقيم وأوزان .. الخ هي ما يسمى ب SYNTAX اللغة العربية اي البناء الهيكلي للغة العربية)

    وهكذا سندرس ال Syntax للغة MQL4 اي سندرس قواعدها وسنكتب اساسياتها التي تتكون من :

    * التنظيم Format
    * التعليقات Comments
    *المعرفات Identifiers
    *الكلمات المحجوزة Reserved words

    الأن دعونا نتكلم عنهم بشئ من التفصيل ..

    1- التنظيم Format:

    متى بدأت كتابة برنامجك فلك حرية تنظيم المسافات والسطور بين اكواد واوامر برنامجك لتجعلها واضحة ومنظمة بطريقتك الخاصة ولراحتك الشخصية .

    على سبيل المثال ,
    كل هذه السطور البرمجية صحيحة في MQL4 رغم اختلاف تنظيمها ولكنها تؤدي نفس الغرض :

    كود PHP:
    double MacdCurrent, MacdPrevious, SignalCurrent;
    كود PHP:
    double

    MacdCurrent,

    MacdPrevious,

    SignalCurrent;
    كود PHP:
    double MacdCurrent, MacdPrevious, SignalCurrent;
    ولكن كما ترى فأول سطر هو اسهلهم قراءة وأكثرهم وضوحا برمجيا.

    وككل شئ في هذا العالم هناك استثناءات من هذه القاعدة :

    a- غير مسموح بعمل سطر جديد في ما يسمى ب "Controlling Compilation".

    سنعرف اكثر عن "Controlling Compilation" في الدرس القادم ان شاء الله , وحتى ذلك الحين تذكر فقط انها استثناء.

    على سبيل المثال , السطر التالي من الكود غير مسموح به في لغة MQL4 .. وخلال عملية التجميع compile سيعطي خطأ برمجي

    كود PHP:
    #property

    copyright "Copyright © 2004, MetaQuotes Software Corp."
    اما هذا السطر فمسموح به "Controlling Compilation" :

    كود PHP:
    #property copyright "Copyright © 2004, MetaQuotes Software Corp."
    (لاحظ ان "Controlling Compilation" اعتبر جملة property copyright كلمة واحدة , وحين تم فصلهم في الكود الأول اخل بتوافق الجملة , وهي من الأستثناءات كما اسلفنا)

    b- غير مسموح بأستخدام الفراغات space او سطور جديدة في منتصف قيم ثابتة او معرفات او كلمات محجوزة باللغة.

    على سبيل المثال , هذا الكود مسموح به في لغة MQL4 :

    كود PHP:
    extern int MA_Period=13;
    هنا كلمتا extern و int كلمتان محجوزتان في لغة MQL4 , كلمة MA_Period معرف , رقم 13 هنا قيمة ثابتة.
    (سنعرف الكثير عنهم في الدروس القادمة)

    الأكواد التالية غير مسموح بها في لغة MQl4:

    كود PHP:
    extern int MA_Period=1

    3;
    وايضا :
    كود PHP:
    extern int MA_Period=1 3;
    هل لاحظت الفراغ بين رقم 13

    وايضا:
    كود PHP:
    ex

    tern int MA_Period=13;
    (لاحظ اننا ليس لنا حرية استخدام الفراغات والسطور بين حروف الكلمة الواحدة فهي استثناء كما اسلفنا)

    2- التعليقات Comments:

    لجعل العالم البرمجي اسهل واقل تعقيدا , اي لغة برمجة لها ستايل التعليقات Comments الخاص بها.

    نحن نستخدم التعليقات Comments لنضيف سطورا توضيحية لبعض اكواد البرنامج ويتم تجاهلها من قبل البرنامج خلال عمله. اي انها لا دخل لها بعمل البرنامج وانما يتم اضافتها للتوضيح فقط لأي قارئ للبرنامج.

    لنفترض مثلا انك كتبت برنامجك الخاص في فصل الصيف , وجاء الشتاء واردت ان تقرأه , بدون التعليقات Comments , بالرغم من انك كاتب البرنامج الا انك لن تستطيع ان تفهم الألغاز التي كتبتها , ومن هنا نعرف اهمية التعليقات.

    لغة MQL4 (وكذلك لغة ال C و ++C) تستحدم نوعين من التعليقات Comments:

    a- تعليقات Comments السطر الواحد:

    يبدأ تعليق Comment السطر الواحد بالعلامة // وينتهي بسطر جديد.

    مثال:

    كود PHP:
    //This is a comment

    extern int MA_Period=13;
    كود PHP:
    extern int MA_Period=13; //This is another comment
    b- تعليقات Comments الأسطر المتعددة:

    يبدأ تعليق Comment الأسطر المتعددة بالعلامة * / وتنتهي بالعلامة / * .

    يمكنك استخدام اكثر من سطر او اكثر بوضع * / في بداية اول سطر , و / * في نهاية أخر سطر.

    مثال:

    كود PHP:
    / * this

    is

    multi

    line

    comment* /
    يمكنك ايضا وضع تعليق Comment السطر الواحد بداخل تعليق Comment الأسطر المتعددة .. هكذا مثلا:

    كود PHP:
    / * this

    is

    multi //another comment nested here.

    line

    comment* /
    هذا ايضا مسموح به في MQL4:

    كود PHP:
    extern int / *HELLO! I’m a comment* / MA_Period=13;
    لكن هذا غير مسموح به في MQL4:

    كود PHP:
    extern int //test MA_Period=13;
    (راجع شرط تعليق Comment السطر الواحد وكيف ينتهي)

    3- المعرفات Identifiers:

    المعرف Identifier هو اسم تختاره بنفسك (حتى لو كان اسمك شخصيا) لأطلاقه على المتغيرات variables والثوابت constants والوظائف functions.

    على سبيل المثال , MA_Period هنا تعتبر معرف Identifier:

    كود PHP:
    extern int MA_Period=13;
    هناك بعض القواعد والقيود لأختيار اسماء المعرفات Identifiers:

    a- طول اسم المعرف Identifier لا يجب ان يتجاوز عدد حروفه 31 حرفا.

    b- لابد ان يبدأ اسم المعرف Identifier بحرف او علامة _ .
    وعليه لا يمكن ان يبدأ برقم او اي علامة أخرى غير _.

    c- لا يمكن استخدام الكلمات المحجوزة reserved words كمعرفات Identifiers.
    (سنرى قائمة بالكلمات المحجوزة reserved words قريبا)

    d- المعرفات Identifiers حساسة جدا لحالة الأحرف.
    مثلا MA_PERIOD مختلفة تماما عن ma_period او MA_Period.

    سنأخذ بعض الأمثلة للمعرفات Identifiers:

    كود PHP:
    Name1 مسموح

    _Name1 مسموح

    1Name غير مسموح (لا يمكن ان يبدأ برقم )

    ~Name1 غير مسموح (لا يمكن ان يبدأ برقم او اي علامة أخرى غير _.)

    N~ame1 غير مسموح (لا يمكن ان يبدأ برقم او اي علامة أخرى غير _.)

    i_love_my_country_and_my_country_loves_all_the_wor ld

    غير مسموح ( لا يجب ان يتجاوز عدد حروفه 31 حرفا)

    Color مسموح

    color غير مسموح (لا يمكن استخدام الكلمات المحجوزة و color كلمة محجوزة)
    4- الكلمات المحجوزة Reserved words:

    هي كلمات خاصة تستخدمها لغة MQL4 في تنفيذ اوامر محددة خاصة باللغة,
    ولا يمكن استخدامها كمعرفات او اي اعمال برمجية أخرى (غير المخصصة لها).

    وهذه قائمة بالكلمات المحجوزة Reserved words:



    وعلى سبيل المثال , هذه الأكواد غير مسموح بها في MQL4:

    كود PHP:
    extern int datetime =13;

    int extern =20;

    double continue = 0;




    في الدرس القادم بأذن الله سنتكلم عن انواع البيانات في لغة MQL4
    اراكم على خير مجددا
    وليد

  12. #12
    الصورة الرمزية Qadri
    Qadri غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jul 2007
    الإقامة
    مصر
    المشاركات
    164

    افتراضي

    الله ينور ... متابعك ومنتظر المزيد

  13. #13
    الصورة الرمزية د/مصطفى
    د/مصطفى غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Jul 2010
    الإقامة
    مصر
    المشاركات
    1,168

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة Qadri مشاهدة المشاركة
    الله ينور ... متابعك ومنتظر المزيد
    ربنا يخليك.... دايما بترفع من معنوياتي ههههه

  14. #14
    الصورة الرمزية MR.dollar
    MR.dollar غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,851

    افتراضي

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

    بسم الله الرحمن الرحيم

    مرحبا بكم في الدرس الأول ... قواعد لغة الميتا (Syntax)

    سنتكلم اليوم عن القواعد النحوية للغة MQL4

    * ما معنى كلمة SYNTAX بالنسبة للغة الميتا ؟
    ** هي القواعد النحوية للغة من مفردات خاصة بها (الكلمات المحجوزة) لأشاراتها لأعدادتها ووضع الأوامر والشروط (الأكواد) بطريقة صحيحة برمجيا .

    (قواعد اللغة العربية من مبتدأ وخبر وحروف جر ومفعول به وعلامات ترقيم وأوزان .. الخ هي ما يسمى ب SYNTAX اللغة العربية اي البناء الهيكلي للغة العربية)

    وهكذا سندرس ال Syntax للغة MQL4 اي سندرس قواعدها وسنكتب اساسياتها التي تتكون من :

    * التنظيم Format
    * التعليقات Comments
    *المعرفات Identifiers
    *الكلمات المحجوزة Reserved words

    الأن دعونا نتكلم عنهم بشئ من التفصيل ..

    1- التنظيم Format:

    متى بدأت كتابة برنامجك فلك حرية تنظيم المسافات والسطور بين اكواد واوامر برنامجك لتجعلها واضحة ومنظمة بطريقتك الخاصة ولراحتك الشخصية .

    على سبيل المثال ,
    كل هذه السطور البرمجية صحيحة في MQL4 رغم اختلاف تنظيمها ولكنها تؤدي نفس الغرض :

    كود PHP:
    double MacdCurrent, MacdPrevious, SignalCurrent;
    كود PHP:
    double

    MacdCurrent,

    MacdPrevious,

    SignalCurrent;
    كود PHP:
    double MacdCurrent, MacdPrevious, SignalCurrent;
    ولكن كما ترى فأول سطر هو اسهلهم قراءة وأكثرهم وضوحا برمجيا.

    وككل شئ في هذا العالم هناك استثناءات من هذه القاعدة :

    a- غير مسموح بعمل سطر جديد في ما يسمى ب "Controlling Compilation".

    سنعرف اكثر عن "Controlling Compilation" في الدرس القادم ان شاء الله , وحتى ذلك الحين تذكر فقط انها استثناء.

    على سبيل المثال , السطر التالي من الكود غير مسموح به في لغة MQL4 .. وخلال عملية التجميع compile سيعطي خطأ برمجي

    كود PHP:
    #property

    copyright "Copyright © 2004, MetaQuotes Software Corp."
    اما هذا السطر فمسموح به "Controlling Compilation" :

    كود PHP:
    #property copyright "Copyright © 2004, MetaQuotes Software Corp."
    (لاحظ ان "Controlling Compilation" اعتبر جملة property copyright كلمة واحدة , وحين تم فصلهم في الكود الأول اخل بتوافق الجملة , وهي من الأستثناءات كما اسلفنا)

    b- غير مسموح بأستخدام الفراغات space او سطور جديدة في منتصف قيم ثابتة او معرفات او كلمات محجوزة باللغة.

    على سبيل المثال , هذا الكود مسموح به في لغة MQL4 :

    كود PHP:
    extern int MA_Period=13;
    هنا كلمتا extern و int كلمتان محجوزتان في لغة MQL4 , كلمة MA_Period معرف , رقم 13 هنا قيمة ثابتة.
    (سنعرف الكثير عنهم في الدروس القادمة)

    الأكواد التالية غير مسموح بها في لغة MQl4:

    كود PHP:
    extern int MA_Period=1

    3;
    وايضا :
    كود PHP:
    extern int MA_Period=1 3;
    هل لاحظت الفراغ بين رقم 13

    وايضا:
    كود PHP:
    ex

    tern int MA_Period=13;
    (لاحظ اننا ليس لنا حرية استخدام الفراغات والسطور بين حروف الكلمة الواحدة فهي استثناء كما اسلفنا)

    2- التعليقات Comments:

    لجعل العالم البرمجي اسهل واقل تعقيدا , اي لغة برمجة لها ستايل التعليقات Comments الخاص بها.

    نحن نستخدم التعليقات Comments لنضيف سطورا توضيحية لبعض اكواد البرنامج ويتم تجاهلها من قبل البرنامج خلال عمله. اي انها لا دخل لها بعمل البرنامج وانما يتم اضافتها للتوضيح فقط لأي قارئ للبرنامج.

    لنفترض مثلا انك كتبت برنامجك الخاص في فصل الصيف , وجاء الشتاء واردت ان تقرأه , بدون التعليقات Comments , بالرغم من انك كاتب البرنامج الا انك لن تستطيع ان تفهم الألغاز التي كتبتها , ومن هنا نعرف اهمية التعليقات.

    لغة MQL4 (وكذلك لغة ال C و ++C) تستحدم نوعين من التعليقات Comments:

    a- تعليقات Comments السطر الواحد:

    يبدأ تعليق Comment السطر الواحد بالعلامة // وينتهي بسطر جديد.

    مثال:

    كود PHP:
    //This is a comment

    extern int MA_Period=13;
    كود PHP:
    extern int MA_Period=13; //This is another comment
    b- تعليقات Comments الأسطر المتعددة:

    يبدأ تعليق Comment الأسطر المتعددة بالعلامة * / وتنتهي بالعلامة / * .

    يمكنك استخدام اكثر من سطر او اكثر بوضع * / في بداية اول سطر , و / * في نهاية أخر سطر.

    مثال:

    كود PHP:
    / * this

    is

    multi

    line

    comment* /
    يمكنك ايضا وضع تعليق Comment السطر الواحد بداخل تعليق Comment الأسطر المتعددة .. هكذا مثلا:

    كود PHP:
    / * this

    is

    multi //another comment nested here.

    line

    comment* /
    هذا ايضا مسموح به في MQL4:

    كود PHP:
    extern int / *HELLO! I’m a comment* / MA_Period=13;
    لكن هذا غير مسموح به في MQL4:

    كود PHP:
    extern int //test MA_Period=13;
    (راجع شرط تعليق Comment السطر الواحد وكيف ينتهي)

    3- المعرفات Identifiers:

    المعرف Identifier هو اسم تختاره بنفسك (حتى لو كان اسمك شخصيا) لأطلاقه على المتغيرات variables والثوابت constants والوظائف functions.

    على سبيل المثال , MA_Period هنا تعتبر معرف Identifier:

    كود PHP:
    extern int MA_Period=13;
    هناك بعض القواعد والقيود لأختيار اسماء المعرفات Identifiers:

    a- طول اسم المعرف Identifier لا يجب ان يتجاوز عدد حروفه 31 حرفا.

    b- لابد ان يبدأ اسم المعرف Identifier بحرف او علامة _ .
    وعليه لا يمكن ان يبدأ برقم او اي علامة أخرى غير _.

    c- لا يمكن استخدام الكلمات المحجوزة reserved words كمعرفات Identifiers.
    (سنرى قائمة بالكلمات المحجوزة reserved words قريبا)

    d- المعرفات Identifiers حساسة جدا لحالة الأحرف.
    مثلا MA_PERIOD مختلفة تماما عن ma_period او MA_Period.

    سنأخذ بعض الأمثلة للمعرفات Identifiers:

    كود PHP:
    Name1 مسموح

    _Name1 مسموح

    1Name غير مسموح (لا يمكن ان يبدأ برقم )

    ~Name1 غير مسموح (لا يمكن ان يبدأ برقم او اي علامة أخرى غير _.)

    N~ame1 غير مسموح (لا يمكن ان يبدأ برقم او اي علامة أخرى غير _.)

    i_love_my_country_and_my_country_loves_all_the_wor ld

    غير مسموح ( لا يجب ان يتجاوز عدد حروفه 31 حرفا)

    Color مسموح

    color غير مسموح (لا يمكن استخدام الكلمات المحجوزة و color كلمة محجوزة)
    4- الكلمات المحجوزة Reserved words:

    هي كلمات خاصة تستخدمها لغة MQL4 في تنفيذ اوامر محددة خاصة باللغة,
    ولا يمكن استخدامها كمعرفات او اي اعمال برمجية أخرى (غير المخصصة لها).

    وهذه قائمة بالكلمات المحجوزة Reserved words:



    وعلى سبيل المثال , هذه الأكواد غير مسموح بها في MQL4:

    كود PHP:
    extern int datetime =13;

    int extern =20;

    double continue = 0;




    في الدرس القادم بأذن الله سنتكلم عن انواع البيانات في لغة MQL4
    اراكم على خير مجددا
    وليد
    بارك الله فيك
    يا ريت الجزء الخاص بالأكواد تقوم بكتابته داخل كود php حتى يكون واضح وأسهل في القراءه للجميع كهذا
    كود PHP:
    extern int MaPeriod=14
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  15. #15
    الصورة الرمزية McGene2010
    McGene2010 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jul 2010
    المشاركات
    128

    افتراضي

    Done reading and i have a suggestion to add some multiple choice questions as a quiz after every lesson. . Thanks for your translation and to MrDollar

صفحة 1 من 2 12 الأخيرةالأخيرة

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