أساسيات MQL5 EA — كيف يعمل روبوت MetaTrader 5 فعلاً

آخر مراجعة: · محتوى دائم الخضرة
تحذير المخاطر · YMYL هذا المقال لأغراض تعليمية فحسب وليس نصيحة استثمارية. ينطوي التداول في سوق الفوركس على مخاطر عالية لخسارة رأس المال — تشير بيانات ESMA إلى أن 74–89% من حسابات التجزئة تخسر أموالها.

المستشار الخبير المكتوب بلغة MQL5 هو تطبيق صغير يعيش على الرسم البياني داخل منصة MetaTrader 5، ويفحص في كل تيك ما إذا كانت السوق قد أنتجت الشرط الذي حددته مسبقاً كنقطة دخول. إن تحقق ذلك، أرسل EA الأمر من تلقاء نفسه دون أن يستأذن أحداً. هذا المقال يشرح كيف يُبنى EA من الداخل، وكيف يتحدث مع المنصة والوسيط، ومتى يكون تشغيله منطقياً فعلاً. إنه ليس دليلاً تعليمياً للبرمجة — لن تجد فيه سطراً واحداً من الكود.

ما هو المستشار الخبير في MQL5

MQL5 هي لغة برمجة قريبة من C++، طُوِّرت تحديداً لمنصة MetaTrader 5. المستشار الخبير (EA) هو برنامج واحد بهذه اللغة، يُترجَم إلى ملف ثنائي بامتداد .ex5 ويُرفق بالرسم البياني لأي أداة مالية تماماً كما يُرفق المؤشر. لكن الفرق جوهري: المؤشر يرسم فقط، أما EA فيحق له تنفيذ أوامر حقيقية على حساب التداول. هذا التمييز البسيط على مستوى الصلاحيات هو ما يفصل الأتمتة المستقلة عن مجرد العرض التصويري.

كيف يختلف EA عن "روبوت التداول" بمفهومه العام؟ الاختلاف في النظام البيئي فحسب. الروبوت المكتوب بلغة Python هو أيضاً روبوت، لكنه يعيش خارج المحطة الطرفية ويتصل بالوسيط عادةً عبر REST API أو بروتوكول FIX. أما EA فيعيش بتعريفه داخل MT5. للاطلاع على المقارنة الأوسع، راجع قسم المنصات والأدوات، وللتوسع في المشهد الأعمق، استكشف المنهجية والتطبيق العملي.

كيف يتواصل EA مع المنصة — دورة OnInit وOnTick وOnDeinit

لكل مستشار خبير إيقاع حياة خاص به تحكمه ثلاثة أحداث تستدعيها المنصة نيابةً عنه. OnInit يُطلق مرة واحدة فقط عند إرفاق EA بالرسم البياني أو عند إعادة تشغيل المحطة الطرفية. هذه هي اللحظة التي يقرأ فيها EA معاملات الإدخال الخاصة به، ويفتح مقابض المؤشرات التي يعتمد عليها، ويُعلم المنصة أنه جاهز لاستقبال التيكات.

الحدث الثاني هو الأهم: OnTick يُستدعى في كل مرة تصل فيها اقتباس جديد من سيرفر الوسيط للرمز الذي يجلس عليه EA. على زوج سائل كـ EUR/USD خلال جلسة لندن، قد يحدث هذا عشرات المرات في الثانية. داخل OnTick يقرر EA ما إذا كان السعر الحالي يستوفي شروط الدخول، وما إذا كان يجب تحريك وقف الخسارة، أو إغلاق مركز مفتوح. كل منطق الاستراتيجية يسكن في هذه الدالة الواحدة.

الحدث الثالث، OnDeinit، يُستدعى عند إزالة EA من الرسم البياني أو تغيير الرمز أو إغلاق MT5. وظيفته الترتيب والتنظيف — تحرير مقابض المؤشرات، وحفظ الحالة، وإغلاق ملفات السجل. أتجاوز عمداً المعالجات المساعدة كـ OnTimer وOnTrade لأنها لا تغير المبدأ. كل EA هو في جوهره برنامج معالجة أحداث يستجيب لما تقدمه إليه MT5.

كيف يُرسل EA الأوامر — فئة CTrade

الشيء الثاني الجدير بالفهم دون الغوص في التركيب النحوي هو الطريقة التي يتواصل بها EA مع الوسيط. لا تتيح MT5 "إرسال أمر شراء" بالطريقة التي يفعلها الإنسان حين ينقر على الواجهة. كل أمر يُرسل كطلب منظم — MqlTradeRequest — والسيرفر يرد بنتيجة تحتوي على رمز يخبرك إذا كان الأمر قد نُفِّذ أو رُفض لأسباب كنقص الهامش، أو مستويات وقف غير صالحة، أو تجاوز الانحراف المسموح.

ملء هذه الهياكل يدوياً عملية مرهقة، لذا تُوفر MetaQuotes فئة CTrade في مكتبتها القياسية، تلف كل شيء في دوال سهلة مثل Buy وSell وPositionClose وOrderModify. تناقشات المنتديات لا تنتهي حول الدقائق — هل تستخدم Buy(volume, symbol) أم تملأ الهيكل بنفسك، وكيف تتعامل مع requotes، وكيف ترد على الانزلاق السعري (slippage) عند اختراقات السعر السريعة. لمعظم استراتيجيات التجزئة، CTrade أكثر من كافية.

Strategy Tester — كيف تتحقق أن EA لم يحفظ التاريخ

Strategy Tester المدمج في MT5 أداة أكثر متانة بكثير من نظيره في MT4. يغذي EA بتيكات تاريخية (مولَّدة من الأشرطة أو تيكات حقيقية من سيرفر MetaQuotes)، ويشغل آلاف المسارات عبر مجموعات المعاملات، وينتج تقريراً بمنحنى الرأسمال والتراجع الأقصى (drawdown) ومعامل الربح.

المشكلة أن هذا الـ Tester نفسه المفترض أن يتحقق من عملك يتحول في الغالب إلى مصنع للأوهام. تحسين المعاملات على كامل التاريخ يُنتج دائماً تقريباً منحنى رأسمال سلساً كالخيط — وهذا المنحنى ينهار تقريباً دائماً بمجرد أن يواجه EA المال الحقيقي. للظاهرة اسم — curve fitting — وهي حتمية رياضية لا مجرد سوء حظ. الإجراء المضاد هو تقسيم البيانات إلى فترة للتحسين (in-sample، مثلاً 2018–2022) وفترة للتحقق (out-of-sample، مثلاً 2023–2024) تشغّل عليها EA دون تعديل إضافي للمعاملات. walk-forward analysis تذهب خطوة أبعد — تُمرر نافذتي التدريب والاختبار عبر كامل التاريخ.

"الاستراتيجية التي حققت ربحاً على البيانات التاريخية ليست بالضرورة مربحة في المستقبل. البيانات التاريخية عينة صغيرة من كون الحالات السوقية الممكنة، وتحسين المعاملات على تلك العينة هو بالضبط ما يبدو عليه — تكييف مع العينة." — Ernest P. Chan، 2013

متى يُفيد EA فعلاً ومتى يضر

مدى جدوى تشغيل EA يعتمد بشكل كبير على طبيعة الاستراتيجية. ثلاثة مواقف يمنح فيها EA ميزة حقيقية: التنفيذ المتسق لقواعد لا يستطيع الإنسان الالتزام بها نفسياً (تخيّل مئتي صفقة سكالبينج شهرياً)، ومراقبة الأسواق على مدار الساعة خلال جلسات آسيا حين يكون بقية العالم نائماً، والتداول حيث يجب اتخاذ القرار في جزء من الثانية — ميدان يكون فيه الإنسان ببساطة بطيئاً جداً.

في المقابل، يؤدي EA أداءً سيئاً في كل مكان يُستلزم فيه الحكم. التداول قبيل إصدار Non-Farm Payrolls، والحكم على ما إذا كان تحرك الأسعار الحالي تغييراً حقيقياً في النظام السوقي أم مجرد ضجيج مؤقت، وتفسير السياق الجيوسياسي — كل هذا يُقصي EA في العادة. الإحصاء من دراسات مستقلة في منتديات MQL5 قاسٍ: الغالبية العظمى من EA المباعة على Marketplace، رغم الرسوم البيانية البراقة للاختبارات الخلفية، تُسجّل خسائر في التداول الفعلي خلال عامها الأول. هذا ليس نزاهة البائعين موضع تساؤل — الاختبار الخلفي الجيد رخيص، أما الحافة الحقيقية فنادرة.

هل يستحق كتابة EA خاص بك؟

إذا كنت تفهم استراتيجيتك وتستطيع وصفها بقواعد دقيقة بما يكفي لإزالة أي تقدير شخصي، فإن بناء EA خاص بك هو أفضل استثمار للوقت يمكنك القيام به في هذا المجال. ثلاثة إلى ستة أشهر مع وثائق MQL5 ومشروع اختبار بسيط وStrategy Tester تبني معرفة لن تشتريها ضمن حزمة روبوت جاهز.

السبب الثاني عملي. يعمل EA 24/5 — لكن فقط إذا كان الجهاز الذي يعيش عليه يعمل هو أيضاً 24/5. سطح المكتب المنزلي الذي تعتمد طاقته على كابل واحد ليس كافياً. هنا يأتي دور VPS، حيث يمكن وضعه في نفس مركز البيانات الخاص بسيرفر الوسيط ليخفض الكمون من نحو خمسين ميلي ثانية إلى بضعة. التكلفة لدى مزودي MT المتخصصين تتراوح اليوم بين 15 و50 EUR شهرياً. بعض الوسطاء يقدمون VPS مجاناً عند تجاوز حد معين من الإيداع أو الحجم.

ماذا تفعل الآن

  1. قم بتنزيل MetaTrader 5 من الموقع الرسمي لوسيطك، وافتح حساب تجريبي، ثم انتقل إلى تبويب Strategy Tester. حمّل أحد أمثلة EA المدمجة (Moving Average أو MACD Sample) على EUR/USD بإطار زمني H1، وشغّل مساراً واحداً، واقرأ التقرير الناتج بعناية لترى كيف تبدو المقاييس الأساسية — منحنى الرأسمال والتراجع الأقصى ومعامل الربح — في التطبيق الفعلي.
  2. افتح التوثيق الرسمي لـ MQL5 على mql5.com/en/docs واقرأ ثلاثة فصول فقط: OnInit وOnTick وفئة CTrade. لا تحاول كتابة أي كود بعد — الهدف هو رؤية كيفية تنظيم التوثيق وأين تجد الأمثلة العملية حين تحتاجها لاحقاً.
  3. اكتب استراتيجيتك الحالية كقواعد منطقية من شكل "إذا تحقق X وY فأدخل مركز شراء على EUR/USD مع وقف الخسارة عند مستوى Z". إذا استمر ظهور عبارات من قبيل "حسب السياق" أو "بشكل حدسي" بعد ساعة من العمل، فهذه علامة على أن استراتيجيتك تقديرية والأتمتة لن تنقذها — عُد إلى بناء إطار الإعداد والتخطيط قبل كتابة أي كود.
  4. إذا خرجت القواعد لا لبس فيها، خطّط جدولاً للتعلم: نحو ثلاثة أشهر من أساسيات MQL5 من وثائق MetaQuotes، إلى جانب مشروع جانبي لمدة أسبوع لبناء أبسط EA ممكن استناداً إلى تقاطع متوسطين متحركين. هذا المشروع الواحد يُعلمك أكثر من عشرة روبوتات مشتراة.
  5. قبل تشغيل أي شيء على أموال حقيقية، التزم بشهر كامل على الأقل من الاختبار الأمامي (forward test) على حساب تجريبي بالأسعار الجارية. لا يمكن للاختبار الخلفي أن يحل محل الاختبار الأمامي — الاختبار الأمامي يكشف كمون تنفيذ الوسيط الحقيقي الذي لا يراه الاختبار الخلفي.
Jarosław Wasiński
نبذة عن المؤلف

Jarosław Wasiński

رئيس تحرير MyBank.pl · محلل مالي وأسواق

محلل مستقل وممارس متمرس يمتلك أكثر من 20 عاماً من الخبرة في القطاع المالي. مؤسس ورئيس تحرير بوابة MyBank.pl العاملة منذ عام 2004. يُجري التحليل الأساسي لأسواق العملات الأجنبية والأسواق الكلية منذ عام 2007.

المصادر والمراجع

  1. MetaQuotes MQL5 Reference — OnTick event handler · oficjalna dokumentacja zdarzenia wywoływanego na każdą kwotację www.mql5.com ↗
  2. MetaQuotes MQL5 Standard Library — CTrade class · klasa biblioteki standardowej do składania zleceń przez EA www.mql5.com ↗
  3. MetaQuotes MetaTrader 5 — Strategy Tester documentation · narzędzie do backtestowania i optymalizacji EA www.metatrader5.com ↗

الأسئلة الشائعة

ما الفرق بين EA في MQL5 و"روبوت" Python؟

من حيث المنطق — لا يختلفان. كلاهما ينتهي إلى حلقة تفحص ظروف السوق بصفة دورية وترسل الأوامر. الفرق في النظام البيئي. EA في MQL5 وليد MetaTrader: يُرفق بالرسم البياني ويستخدم المؤشرات المدمجة وStrategy Tester. روبوت Python يعيش خارج المحطة الطرفية ويتصل بالوسيط خارجياً — عادةً عبر REST API أو بروتوكول FIX. EA يتفوق إذا كانت استراتيجيتك تعتمد مؤشرات MT5 وتحتاج الـ Tester المدمج. Python يتفوق إذا أردت استخدام مكتبات التعلم الآلي أو الإحصاء أو الجمع بين بيانات من مصادر متعددة.

هل أحتاج إلى معرفة البرمجة لتشغيل EA؟

لمجرد تشغيل EA لشخص آخر — لا. تسحب ملف .ex5 على الرسم البياني، وتضبط المعاملات، وتُفعّل AutoTrading. الصعوبة الحقيقية تبدأ بعد ذلك: دون معرفة MQL5 لا تستطيع التحقق مما يفعله الروبوت فعلاً بداخله، وكيف يتعامل مع الانزلاق السعري، وهل يستخدم طريقة Martingale سراً. بائعو EA في MQL5 Market كثيراً ما يخفون أهم المعاملات عن المستخدم. دون القدرة على فتح الكود المصدري (ومعظم EA التجارية مغلقة) أنت محكوم بالثقة العمياء. لذا أنصح بالاستثمار في تعلم أساسيات اللغة — أسابيع قليلة من التوثيق تكفي لفهم ما تقرأه.

لماذا يُظهر Strategy Tester نتائج رائعة بينما يُظهر التداول الفعلي خسائر؟

لأن Strategy Tester أداة تحسين وليس أداة تنبؤ. إذا مشّطت كامل البيانات التاريخية بحثاً عن المعاملات التي تعطي أفضل منحنى رأسمال، ستجد شبه حتمي مجموعة تُنتج نتيجة رائعة — لكن على تلك العينة تحديداً فقط. هذه الظاهرة تُسمى curve fitting وهي حتمية رياضية. الإجراء المضاد هو تقسيم البيانات إلى فترة تحسين in-sample (مثلاً 2018–2022) وفترة تحقق out-of-sample (مثلاً 2023–2024) تشغّل عليها EA دون تعديل إضافي للمعاملات. فقط نتيجة متسقة في فترة التحقق تجعل من المعقول أنك لا تنظر إلى أثر زائف. walk-forward analysis تذهب خطوة أبعد — تُمرر نافذتي التدريب والاختبار عبر كامل التاريخ.

هل VPS ضروري لتشغيل EA؟

لاستراتيجية تتفاعل في جزء من الثانية — نعم، بلا جدال. سكالبر يُطلق EA عشرات الأوامر يومياً يخسر ميزته في كل مرة تنقطع الاتصال المنزلي أو يدخل الجهاز في وضع السكون. VPS موضوع في نفس مركز البيانات الخاص بسيرفر الوسيط يستطيع خفض الكمون من نحو خمسين ميلي ثانية إلى بضعة. لاستراتيجية مراكز تُنفذ صفقة واحدة أسبوعياً، VPS هو راحة لا شرط — جهاز المكتب المنزلي مع UPS يكفي. التكلفة لدى مزودي MT المتخصصين تتراوح اليوم بين 15 و50 EUR شهرياً. بعض الوسطاء يقدمون VPS مجاناً عند تجاوز حد معين من الإيداع أو الحجم. في منطقة الخليج والشرق الأوسط (MENA)، تُعمل الجهات التنظيمية كـ SCA في الإمارات وCMA في السعودية وفق أطر محلية مستقلة؛ تحقق دائماً من أن الوسيط مرخص في بلدك قبل إيداع أي أموال.

تعمق أكثر · الدليل الشامل