Functions in MQL
الدوال في لغة MQL
مقدمة
لغة MQL (MetaQuotes Language) هي لغة البرمجة المستخدمة لتطوير الخوارزميات التداول، المؤشرات الفنية، والروبوتات (Expert Advisors) لمنصات MetaTrader 4 (MQL4) و MetaTrader 5 (MQL5). تعتبر الدوال (Functions) جزءًا أساسيًا من أي لغة برمجة، و MQL ليست استثناءً. تسمح الدوال بتنظيم الكود، إعادة استخدامه، وتبسيط المهام المعقدة. هذه المقالة موجهة للمبتدئين في MQL وتهدف إلى شرح مفهوم الدوال وكيفية استخدامها في سياق تداول العملات المشفرة و الأسواق المالية.
ما هي الدوال؟
الدالة هي كتلة من التعليمات البرمجية التي تؤدي مهمة محددة. يمكن للدالة استقبال المعاملات (Parameters) و إرجاع قيمة (Return Value). تخيل الدالة كآلة صغيرة: تدخل إليها بيانات (المعاملات)، تقوم بمعالجتها، ثم تخرج نتيجة (قيمة الإرجاع).
فوائد استخدام الدوال:
- إعادة الاستخدام: يمكنك كتابة الدالة مرة واحدة واستخدامها عدة مرات في البرنامج الخاص بك.
- التنظيم: تجعل الدوال الكود أكثر تنظيمًا ويسهل فهمه.
- التبسيط: تساعد على تقسيم المهام المعقدة إلى أجزاء أصغر وأكثر قابلية للإدارة.
- القراءة: الكود الذي يستخدم الدوال يكون أسهل في القراءة والصيانة.
أنواع الدوال في MQL
هناك نوعان رئيسيان من الدوال في MQL:
- الدوال المضمنة: هذه الدوال تأتي مع MQL بشكل افتراضي، مثل iMA (لحساب المتوسط المتحرك)، iRSI (لحساب مؤشر القوة النسبية)، OrderSend (لإرسال الأوامر) وغيرها. يمكنك العثور على قائمة كاملة بالدوال المضمنة في توثيق MQL.
- الدوال المعرفة من قبل المستخدم: هذه الدوال هي التي تكتبها بنفسك لتنفيذ مهام محددة.
تعريف الدوال في MQL
لتعريف دالة في MQL، يجب عليك تحديد:
- نوع الإرجاع: نوع البيانات التي ستعيدها الدالة (مثل int، double، bool، string، إلخ). إذا كانت الدالة لا تعيد أي قيمة، استخدم void.
- اسم الدالة: اسم فريد للدالة (يجب أن يتبع قواعد تسمية المتغيرات).
- المعاملات: قائمة المعاملات التي تستقبلها الدالة (اختياري).
- جسم الدالة: التعليمات البرمجية التي تنفذها الدالة.
صيغة تعريف الدالة:
```mql <نوع الإرجاع> <اسم الدالة>(<قائمة المعاملات>) {
// جسم الدالة return <القيمة>; // إذا كان نوع الإرجاع ليس void
} ```
مثال:
```mql int CalculateSum(int a, int b) {
int sum = a + b; return sum;
} ```
هذه الدالة تأخذ معاملين من نوع عدد صحيح (int) وتُرجع مجموعهما.
استدعاء الدوال في MQL
لاستدعاء دالة، استخدم اسم الدالة متبوعًا بقائمة المعاملات (إذا كانت الدالة تتطلب معاملات).
مثال:
```mql int main() {
int result = CalculateSum(5, 3); Print("The sum is: ", result); // سيطبع: The sum is: 8 return 0;
} ```
الدوال المضمنة الأكثر استخدامًا
| الدالة | الوصف | | ----------- | ----------------------------------------- | | iMA | حساب المتوسط المتحرك. | | iRSI | حساب مؤشر القوة النسبية. | | iMACD | حساب مؤشر الماكد. | | iATR | حساب متوسط المدى الحقيقي. | | OrderSend| إرسال أمر تداول. | | OrderClose| إغلاق أمر تداول. | | MarketInfo| الحصول على معلومات السوق. | | TimeCurrent| الحصول على الوقت الحالي. | | AccountInfo| الحصول على معلومات الحساب. | | NormalizeDouble| تقريب قيمة عشرية. |
أمثلة عملية
- حساب نسبة المخاطرة إلى العائد:
```mql double CalculateRiskRewardRatio(double takeProfit, double stopLoss) {
if (stopLoss == 0) { return 0.0; // تجنب القسمة على صفر } return takeProfit / stopLoss;
} ```
- التحقق من شروط الدخول في صفقة:
```mql bool CheckEntryConditions(double currentPrice, double resistanceLevel) {
return currentPrice <= resistanceLevel;
} ```
نصائح لاستخدام الدوال بفعالية
- استخدم أسماء وصفية للدوال: اجعل اسم الدالة يعكس بوضوح المهمة التي تؤديها.
- حافظ على الدوال قصيرة وبسيطة: إذا كانت الدالة طويلة جدًا أو معقدة جدًا، فقم بتقسيمها إلى دوال أصغر.
- استخدم التعليقات: اشرح ما تفعله الدالة وكيفية استخدامها.
- اختبر الدوال جيدًا: تأكد من أن الدالة تعمل بشكل صحيح قبل استخدامها في برنامجك.
الموارد الإضافية
- توثيق MQL4: [[1]]
- توثيق MQL5: [[2]]
- منتدى MQL4: [[3]]
- منتدى MQL5: [[4]]
استراتيجيات ذات صلة وتحليل فني
- استراتيجية المتوسطات المتحركة المتقاطعة
- استراتيجية الاختراق
- استراتيجية التداول باستخدام مؤشر القوة النسبية
- استراتيجية تداول الماكد
- تحليل فيبوناتشي
- نماذج الشموع اليابانية
- تحليل حجم التداول
- مؤشر ستوكاستيك
- مؤشر بولينجر باندز
- التحليل الفني الشامل
- استراتيجية سكالبينج
- استراتيجية التداول المتأرجح
- استراتيجية التداول اليومي
- استراتيجية مارتينجال
- استراتيجية المضاعفة
روابط ذات صلة
المتغيرات في MQL، أنواع البيانات في MQL، الحلقات في MQL، الشروط في MQL، المصفوفات في MQL، الصفوف في MQL، التعليقات في MQL، الأخطاء في MQL، تصحيح الأخطاء في MQL، الروبوتات (Expert Advisors)، المؤشرات الفنية، الخوارزميات التداول، تداول الخيارات الثنائية، تحليل البيانات المالية، إدارة المخاطر في التداول.
ابدأ التداول الآن
سجل في IQ Option (الحد الأدنى للإيداع $10) افتح حساباً في Pocket Option (الحد الأدنى للإيداع $5)
انضم إلى مجتمعنا
اشترك في قناة Telegram الخاصة بنا @strategybin للحصول على: ✓ إشارات تداول يومية ✓ تحليلات استراتيجية حصرية ✓ تنبيهات باتجاهات السوق ✓ مواد تعليمية للمبتدئين