النتائج 1 إلى 6 من 6
  1. #1
    الصورة الرمزية Algo_Master
    Algo_Master غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Dec 2011
    الإقامة
    مصر
    المشاركات
    1,091

    09 تحويل الدوال من mql4 الى mql5

    السلام عليكم و رحمة الله و بركاته

    اخوانى الاعزاء من المهتمين بالبرمجة ، دارسين و ممارسين …

    بعد موضوعنا السابق عن مناقشة المفاهيم فى تحويل الاصدار من mql4 الى mql5 فى الهدف و فلسفه التطوير ، فقد جعلنا موضوع مناقشة المفاهيم هذا للأسئله العامه فى اللغة وتطورها لإكمال الفهم العميق للمادة …

    وقد خصصنا هذا الموضوع لتحويل الاكواد و الدوال الاساسيه فى mql4 الى نظيرتها فى mql5 ، ليكون شبه مرجع مختصر بقدر الإمكان بحيث قد يساعد الاخوة المبرمجين الراغبين فى التحويل حديثا لبرامجهم القديمة التى يعتمدون عليها فى التداول …

    فالنبدأ بسم الله ,,,
    توقيع العضو
    تخيل _ أبتكر _ شخبط _ برمج _ أختبر _ عدل _ أختبر _ أنجح

  2. #2
    الصورة الرمزية Algo_Master
    Algo_Master غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Dec 2011
    الإقامة
    مصر
    المشاركات
    1,091

    افتراضي

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

    — فترات الرسم البيانى …

    تغيرت ثوابت التعويض عن فترة الرسم البياني ، فأصبح التمثيل بالقيمه "سترينج" فقط ، وتمت إضافة بعض الفترات الزمنية الجديدة …

    عن التعويض من الخارج بمتغيرات "اكستيرن" و التى اصبحت "انبوت" بقيمه "انت" خارجيه بالشكل التالى ……

    اولا : فى المنطقه جلوبال سوف نعرف المتغير الخارجى كما العاده …

    كود PHP:
    input int _PERIOD

    ثانيا : فى الوظيفه "انيت" نعوض مصفوفه الفترات ثم نترجم الاختيار الخارجى للبرنامج كما يلى …

    كود PHP:
    //+------------------------------------------------------------------+
         
    ENUM_TIMEFRAMES tf;

       switch(
    _PERIOD)
         {
          case 
    0tf PERIOD_CURRENT;
          case 
    1tf PERIOD_M1;
          case 
    5tf PERIOD_M5;
          case 
    15tf PERIOD_M15;
          case 
    30tf PERIOD_M30;
          case 
    60tf PERIOD_H1;
          case 
    240tf PERIOD_H4;
          case 
    1440tf PERIOD_D1;
          case 
    10080tf PERIOD_W1;
          case 
    43200tf PERIOD_MN1;
          
          case 
    2tf PERIOD_M2;
          case 
    3tf PERIOD_M3;
          case 
    4tf PERIOD_M4;      
          case 
    6tf PERIOD_M6;
          case 
    10tf PERIOD_M10;
          case 
    12tf PERIOD_M12;
          case 
    16385tf PERIOD_H1;
          case 
    16386tf PERIOD_H2;
          case 
    16387tf PERIOD_H3;
          case 
    16388tf PERIOD_H4;
          case 
    16390tf PERIOD_H6;
          case 
    16392tf PERIOD_H8;
          case 
    16396tf PERIOD_H12;
          case 
    16408tf PERIOD_D1;
          case 
    32769tf PERIOD_W1;
          case 
    49153tf PERIOD_MN1;      
          default: 
    tf PERIOD_CURRENT;
         }

    //+------------ 
    ثم نعوض بعد ذالك بالمتغير "tf" فى المكان المخصص فى الوظيفه "اون تك" …
    توقيع العضو
    تخيل _ أبتكر _ شخبط _ برمج _ أختبر _ عدل _ أختبر _ أنجح

  3. #3
    الصورة الرمزية Algo_Master
    Algo_Master غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Dec 2011
    الإقامة
    مصر
    المشاركات
    1,091

    افتراضي

    Account Information

    يتم سحب بيانات الحساب من مصفوفات "AccountInfo"

    التالى يبين التعويض عن اكثر معلومات الحساب شيوعا طلبا للمبرمجين : …..


    كود PHP:
    double AccountInfoDouble(ACCOUNT_BALANCE)

    double AccountInfoDouble(ACCOUNT_CREDIT)

    string AccountInfoString(ACCOUNT_COMPANY)

    string AccountInfoString(ACCOUNT_CURRENCY)

    double AccountInfoDouble(ACCOUNT_EQUITY)

    double AccountInfoDouble(ACCOUNT_FREEMARGIN)

    int AccountInfoInteger(ACCOUNT_LEVERAGE)

    double AccountInfoDouble(ACCOUNT_MARGIN)

    string AccountInfoString(ACCOUNT_NAME)

    int AccountInfoInteger(ACCOUNT_LOGIN)

    double AccountInfoDouble(ACCOUNT_PROFIT)

    string AccountInfoString(ACCOUNT_SERVER
    توقيع العضو
    تخيل _ أبتكر _ شخبط _ برمج _ أختبر _ عدل _ أختبر _ أنجح

  4. #4
    الصورة الرمزية Algo_Master
    Algo_Master غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Dec 2011
    الإقامة
    مصر
    المشاركات
    1,091

    افتراضي

    Conversion Functions


    كود PHP:

    string CharToString
    (int char_code)

    string DoubleToString(double valueint digits=8)

    double StringToDouble(string value)

    long StringToInteger(string value)

    datetime StringToTime(string value)

    string TimeToString(datetime valueint mode=TIME_DATE|TIME_MINUTES
    توقيع العضو
    تخيل _ أبتكر _ شخبط _ برمج _ أختبر _ عدل _ أختبر _ أنجح

  5. #5
    الصورة الرمزية Asil_ali
    Asil_ali غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2024
    الإقامة
    الأردن
    المشاركات
    162

    افتراضي

    موضوع و تعليمي مهم جدا استاذنا...
    ممكن بعض الأمثلة ان تاتي باي مؤشر mt4 تحوله أمامنا إلى mt5 لكي نتعلم ونرى الاختلاف
    يا ريت تحويل بعض المؤشرات هنا لكي نتعلم أكثر بما انه الهدف تعليمي..
    بدنا عملي وشكرا لك
    آخر تعديل بواسطة Asil_ali ، 24-05-2024 الساعة 12:17 AM

  6. #6
    الصورة الرمزية Algo_Master
    Algo_Master غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Dec 2011
    الإقامة
    مصر
    المشاركات
    1,091

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة Asil_ali مشاهدة المشاركة
    موضوع و تعليمي مهم جدا استاذنا...
    ممكن بعض الأمثلة ان تاتي باي مؤشر mt4 تحوله أمامنا إلى mt5 لكي نتعلم ونرى الاختلاف
    يا ريت تحويل بعض المؤشرات هنا لكي نتعلم أكثر بما انه الهدف تعليمي..
    بدنا عملي وشكرا لك
    برنامج "كامل" صعب تحويله عزيزى المتابع الا على صاحبه ...

    لأن يوجد اكواد فى كثير من الاحيان يكون ليس لها هدف مباشر فى فكره البرنامج و تكون بالنسبه اللذى يقوم بالتحويل صعبه فى وضعها فى البناء الجديد

    يمكن ان تكون هذه النصوص موضوعه لسبب خفى كتأمينى للصفقات او حتى نوعيه وحيده من الصفقات التى يتعامل معها البرنامج مثلا او اى سبب اخر غير مباشر فى الفكره، يصعب اصلا قرائه الكود كامل و تفسيره ، و اقصد بالكامل يعنى كود البرنامج كاملا مكملا ...

    يسهل تفسير الدوال كل على حده

    انما برنامج كامل صعب ... لماذا؟

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

    كالذراع فى الانسان ، يحتاج الى القلب لامداده بالدماء و هو خارج الذراع ، و يحتاج الجهاز الهضمى لامداده بالمغذيات و هو خارج الذراع ، و يحتاج الى المخ لأرسال الاوامر له و هو خارج الذراع ، و يحتاج الى الجهاز العصبى لتوصيل الاوامر و الاحساس ، و يحتاج الى الجهاز المناعى لاصلاح الاضرار عند الجروح ، كل هذا خارج الذراع ...

    فعلى سبيل المثال ان نريد ان نحدث اسلوب المضاعفات فى برنامج معين فعلينا ان نبحث فى اماكن متفرقه من الكود ...
    1) مكان المتغيرات الخاصه بأداره رأسمال
    2) مكان الوظيفه التى تعدل فى الوتات و دراسه طريقه عملها و فهمها و متى تعدل و تعدل الى كم و متى تثبت و الى متى ...الخ
    3) مكان الوظيفه التى تحسب حجم اللوت المتغير اصلا و فهم طريقه الحساب فى الظروف المختلفه
    4) ثم كيفيه الربط بين مهرجان الوظائف و الدوال و المتغيرات هذا
    4) ثم التجارب و مما ادراك بالوقت المهدر فى التجارب و فك طلاسم الاخطاء ... و لأنك تعمل فى بناء غيرك ... فيمكن ان تؤثر اشياء كثيره متفرقه على عمل الوظائف و من الوارد ايضا ان تنسى او تزيد حرف او رمز هنا او هناك نتيجه لزحمه و فوضى الافكار و الروابط و المتغيرات الحادثه نتيجه على انك لست المصمم و المنظم الاول للبناء ...
    لذالك نقول دائما التحويل الكامل لبرنامج صعب الا على صاحبه ...

    هذا نحن كنا نتكلم فقط عن تطبيق واحد كالمضاعفات داخل برنامج يحوى الكثير من التطبيقات فى مكان واحد و بشكل "متداخل و متشابك" و ليس بشكل منفصل او بشكل متتابع

    البناء من جديد اسهل من التعديل على برنامج انت ليس بمصممه ...

    ففى موضوعنا هذا نحن نحاول تحويل الوظائف و الدوال و فهم فلسفه التغيير و التحديث الذى طرأ على اللغه من خلال فهم التغير الذى قد حدث فى الدوال و هياكل البناء ...

    نحن نتناوال و نستعرض هنا الموارد المتاحه فى اللغه لنا للقيام بعمليه بناء للبرامج

    و قد بدأنا فى هذا الموضوع و لم نلحظ تفاعل من الاعضاء عليه و لذلك ترك و اهمل

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

    شكرا لك و جمعه مباركه للجميع,,,,
    آخر تعديل بواسطة Algo_Master ، 24-05-2024 الساعة 11:42 PM
    توقيع العضو
    تخيل _ أبتكر _ شخبط _ برمج _ أختبر _ عدل _ أختبر _ أنجح

الاوسمة لهذا الموضوع


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