النتائج 1 إلى 4 من 4

الموضوع: هل يوجد كود لارسال اشارات المؤشر الى ملف اكسل

  1. #1
    عضو جديد
    تاريخ التسجيل
    Jun 2020
    المشاركات
    6

    افتراضي هل يوجد كود لارسال اشارات المؤشر الى ملف اكسل

    السلام عليكم و رحمه الله.
    من فضلكم هل يوجد كود mq4 لارسال اشارات المؤشر الى ملف اكسل. سواء ملف DDE . أو غيره وشكرا جزيلا

  2. #2
    مشرف برمجة الصورة الرمزية kira-h
    تاريخ التسجيل
    Apr 2017
    المشاركات
    14,888

    افتراضي

    وعليكم السلام
    نعم ممكن ويمكنك مراجعة كل الدوال التي لها علاقة بالملفات بالرابط التالي (مصدر اللغة) https://docs.mql4.com/files

    ثم راجع الشرح التالي المنقول من أحد الشروحات التعليمية للأستاذ القدير مستر دولار

    بداية عند إستخدام الدوال في لغة MQL4 للتعامل مع الملفات فلا يمكن هذه الدوال أن تتعامل إلا مع الملفات التي بداخل فولدر Data Folder الخاص بالميتاتريدر داخل ملف Files

    في البداية قبل القراءة أو الكتابة في الملفات يجب أن نقوم بفتح الملف ونستخدم الداله FileOpen وتعود برقم معين يستخدم لاحقا للتعامل مع البيانات داخل هذا الملف

    file_name هو إسم الملف الذي تريد فتحه في حال كان الملف غير موجود فسوف تقوم الداله بعمل ملف جديد بهذا الإسم

    open_flags نوع العملية للملف الذي ستقوم بفتحه ( مثلا الملف للقراءة أو الكتابه أو هل الملف نصي أو أكسل .. إلخ )
    delimiter الحرف الذي سيستخدم للفصل بين القيم سواء في الملف النصي أو ملف الأكسل ( مثلا لو تريد وضع كل قيمة في عمود جديد في ملف الأكسل فيجب أن تحدد ما هو الفاصل الذي ستستخدمه )
    codepage كود الترميز عند تحويل النص إلى حروف ( لن نستخدم هذا الخيار فسوف نجعله الخيار الإفتراضي

    مثال عملي
    سوف أقوم بفتح ملف من نوع تكست ( ملف نصي ) وسوف أجعله للقراءة والحرف الفاصل بين الأسطر ستكون ( , )


    بعد فتح الملف الذي نريده



    1- قراءة الملفات

    في البداية سوف نضع شرط هل تم فتح الملف بشكل صحيح أم لأ
    ثم سنستخدم الداله FileIsEnding للتأكد من قراءة جميع القيم في الملف
    الدالة FileIsEnding تعود بالقيمه true إذا وصلت القراءة لنهاية الملف والعكس تعود بالقيمة false
    قراءة القيم في الملف
    يوجد أكثر من دالة لقراءة القيم في الملف أهم جزء والذي سأقوم بشرحه هو

    قراءة النص FileReadString

    هذه الدالة سوف تقوم بقراءة النص داخل الملف .
    إذا كان الملف من نوع bin-file فيجب أن يتم تحديد عدد الحروف التي يتم قرائتها, إذا كان الملف Text فلا داعي لتحديد عدد الحروف وسوف يقرأ كل سطر على حده, إذا كان الملف أكسل فسوف يقرأ حتى الحرف الفاصل الذي تم تحديده عند فتح الملف .
    مثال




    2- الكتابة في الملفات

    أولا يجب أن نقوم بإضافة خيار الكتابة عند فتح الملف بإستخدام الداله FileOpen

    ثم سنستخدم الدالة FileWrite للكتابة في ملف معين
    مثال


    ملحوظه :


    عند فتح ملف سابق كان به بيانات سابقه وتريد الكتابة أسفل آخر بيانات موجوده سابقا فقم بقرائتها أولا ثم الكتابة لكن إذا قمت بالكتابة مباشرة فسوف يبدأ في الكتابة من أول الملف بالتالي سيحذف البيانات القديمه


    إغلاق الملف و حفظ البيانات التي تم كتابتها :


    حتى يتم حفظ البيانات بشكل كامل في الملف يمكن ذلك بطريقتين
    الطريقة الأولى إغلاق الملف بإستخدام الداله FileClose
    الطريقه الثانيه إستخدام الداله FileFlush حتى يجبر الداتا المتبقيه في الذاكره على الكتابه في الفايل
    أخيرا سيكون الكود بشكل كامل هو


    القراءة من ملف أكسل

    كمثال لو أريد قراءة بيانات كل صف وعمود في ملف أكسل وحفظها في مصفوفه
    أولا سأقوم بفتح ملف الأكسل
    ثم دالة قراءة البيانات



    الكتابة في ملف أكسل

    عند الكتابة في ملف الأكسل فيجب أن نستخدم الفاصل الذي قمنا بتحديده عند فتح الملف بإستخدام FileOpen حتى نقوم بتقسيم الداتا في كل عمود
    مثال
    ثم لنفرض أنك تريد الإنتقال للصف التاي فسوف تستخدم FileWrite مره أخرى وهكذا
    أو يمكنك وضعها داخل حلقه
    مثال


    مثال عملي لإسكربت يقوم بكتابة بيانات الزوج ( الهاي, اللو, الإفتتاح, الإغلاق ) في ملف أكسل
    أولا سنقوم بعمل الملف الجديد



    بداية سوف أكتب أول سطر وهو عناوين كل عمود حتى يكون واضح



    ثم سنكتب الحلقه للبحث في جميع الشموع



    وأخيرا إغلاق الملف بعد فتحه



    سيكون شكل الملف

    الاســـم:	1.png
المشاهدات: 130
الحجـــم:	45.7 كيلوبايت
    الملفات المرفقة الملفات المرفقة
    التعديل الأخير تم بواسطة kira-h ; 15-07-2020 الساعة 02:07 AM

  3. #3
    عضو جديد
    تاريخ التسجيل
    Jun 2020
    المشاركات
    6

    افتراضي

    شكرا جزيلا يا أستاذ كيرا.

  4. #4
    مشرف برمجة الصورة الرمزية kira-h
    تاريخ التسجيل
    Apr 2017
    المشاركات
    14,888

    افتراضي

    العفو اخي الكريم

العلامات المرجعية

العلامات المرجعية

ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •