Data Types in MQL4
أنواع البيانات في لغة MQL4
مقدمة لغة MQL4 (MetaQuotes Language 4) هي لغة البرمجة المستخدمة لإنشاء روبوتات التداول (Expert Advisors - EAs)، والمؤشرات المخصصة (Custom Indicators)، والسكريبتات (Scripts) لمنصة MetaTrader 4. فهم أنواع البيانات المتوفرة في MQL4 أمر بالغ الأهمية لكتابة برامج فعالة ودقيقة. تحدد أنواع البيانات نوع القيم التي يمكن للمتغير تخزينها، وكيفية استخدام الذاكرة لتخزين هذه القيم. في هذا المقال، سنستعرض بالتفصيل أنواع البيانات المختلفة في MQL4، مع أمثلة توضيحية.
أنواع البيانات الأساسية
MQL4 توفر مجموعة متنوعة من أنواع البيانات الأساسية، والتي يمكن تصنيفها إلى عدة فئات رئيسية:
- الأعداد الصحيحة (Integers): تستخدم لتمثيل الأعداد الصحيحة، سواء كانت موجبة أو سالبة أو صفر.
* int: عدد صحيح بحجم 32 بت (نطاق من -2,147,483,648 إلى 2,147,483,647). يستخدم على نطاق واسع في معظم العمليات الحسابية. المتغيرات في MQL4 * long: عدد صحيح بحجم 64 بت (نطاق أكبر بكثير). يستخدم في الحالات التي تتطلب نطاقًا أوسع من القيم. العمليات الحسابية في MQL4 * short: عدد صحيح بحجم 16 بت. أقل استخدامًا من int و long. * char: حرف واحد، يتم تخزينه كعدد صحيح (ASCII code).
- الأعداد العشرية (Floating-Point Numbers): تستخدم لتمثيل الأعداد التي تحتوي على جزء كسري.
* double: عدد عشري مزدوج الدقة (64 بت). يوفر أعلى دقة ويستخدم بشكل شائع لتمثيل أسعار الصرف والبيانات المالية. الدقة في MQL4 * float: عدد عشري بسيط الدقة (32 بت). أقل دقة من double ولكنه يستهلك ذاكرة أقل.
- القيم المنطقية (Boolean):
* bool: يمكن أن تأخذ قيمتين فقط: true (صحيح) أو false (خطأ). يستخدم في التحكم في تدفق البرنامج والشروط. الشروط في MQL4
- السلاسل النصية (Strings):
* string: سلسلة من الأحرف. تستخدم لتمثيل النصوص والبيانات غير الرقمية. السلاسل النصية في MQL4
أنواع البيانات المخصصة
بالإضافة إلى الأنواع الأساسية، توفر MQL4 أنواع بيانات مخصصة مصممة خصيصًا لتداول الفوركس:
- datetime: يمثل التاريخ والوقت. يستخدم لتخزين طوابع الوقت للأحداث مثل فتح وإغلاق الصفقات. التعامل مع الوقت والتاريخ في MQL4
- color: يمثل لونًا. يستخدم لتخصيص الألوان في المؤشرات والرسوم البيانية. الألوان في MQL4
- enum: نوع بيانات تعداد، يسمح بتحديد مجموعة من القيم المسماة. مفيد لتمثيل الحالات المختلفة أو الخيارات المحددة. التعدادات في MQL4
جدول ملخص لأنواع البيانات
النوع | الحجم (بت) | النطاق | الوصف | مثال |
int | 32 | -2,147,483,648 إلى 2,147,483,647 | عدد صحيح | int age = 30; |
long | 64 | نطاق كبير جدًا | عدد صحيح كبير | long population = 7000000000L; |
short | 16 | -32,768 إلى 32,767 | عدد صحيح صغير | short temperature = -10; |
char | 8 | 0 إلى 255 (ASCII) | حرف واحد | char grade = 'A'; |
double | 64 | نطاق كبير جدًا | عدد عشري مزدوج الدقة | double price = 1.12345; |
float | 32 | نطاق أقل من double | عدد عشري بسيط الدقة | float rate = 0.99f; |
bool | متغير | true أو false | قيمة منطقية | bool isProfitable = true; |
string | متغير | سلسلة من الأحرف | نص | string name = "John Doe"; |
datetime | متغير | طابع زمني | تاريخ ووقت | datetime tradeTime = TimeCurrent(); |
color | متغير | قيمة لون | لون | color arrowColor = clrRed; |
استخدام أنواع البيانات في الممارسة العملية
اختيار نوع البيانات المناسب أمر حيوي لأداء البرنامج. على سبيل المثال:
- إذا كنت بحاجة إلى تخزين عدد الصفقات، استخدم int.
- إذا كنت بحاجة إلى حساب متوسط سعر الصرف، استخدم double.
- إذا كنت بحاجة إلى تحديد ما إذا كانت الصفقة مربحة أم لا، استخدم bool.
- إذا كنت بحاجة إلى عرض رسالة للمستخدم، استخدم string.
التحويل بين أنواع البيانات
في بعض الأحيان، قد تحتاج إلى تحويل قيمة من نوع بيانات إلى آخر. MQL4 توفر دوال للقيام بذلك:
- int() : يحول قيمة إلى عدد صحيح.
- double() : يحول قيمة إلى عدد عشري مزدوج الدقة.
- string() : يحول قيمة إلى سلسلة نصية.
مثال:
```mql4 double price = 1.2345; int integerPrice = (int)price; // تحويل double إلى int (يتم اقتطاع الجزء الكسري) string priceString = string(price); // تحويل double إلى string ```
نصائح مهمة
- استخدم double لتمثيل القيم المالية لتجنب فقدان الدقة.
- اختر نوع البيانات الأصغر الذي يكفي لتلبية احتياجاتك لتوفير الذاكرة.
- كن حذرًا عند تحويل البيانات، فقد يؤدي ذلك إلى فقدان الدقة أو أخطاء غير متوقعة.
- استخدم التعليقات لشرح أنواع البيانات التي تستخدمها في التعليمات البرمجية الخاصة بك. التعليقات في MQL4
روابط لمفاهيم ذات صلة
- المتغيرات في MQL4
- العمليات الحسابية في MQL4
- الشروط في MQL4
- السلاسل النصية في MQL4
- التعامل مع الوقت والتاريخ في MQL4
- الألوان في MQL4
- التعدادات في MQL4
- الدوال في MQL4
- المصفوفات في MQL4
- الهياكل في MQL4
- التعليقات في MQL4
- التحكم في تدفق البرنامج
استراتيجيات وتحليلات ذات صلة
- استراتيجية المتوسطات المتحركة
- استراتيجية الاختراق
- استراتيجية التداول المتأرجح
- مؤشر القوة النسبية (RSI)
- مؤشر الماكد (MACD)
- تحليل فيبوناتشي
- تحليل الشموع اليابانية
- تحليل حجم التداول
- مؤشر بولينجر باندز
- استراتيجية سكالبينج
- استراتيجية التداول اليومي
- استراتيجية مارتينجال
- استراتيجية المضاعفة
- تحليل الدعم والمقاومة
- التحليل الفني الشامل
ابدأ التداول الآن
سجل في IQ Option (الحد الأدنى للإيداع $10) افتح حساباً في Pocket Option (الحد الأدنى للإيداع $5)
انضم إلى مجتمعنا
اشترك في قناة Telegram الخاصة بنا @strategybin للحصول على: ✓ إشارات تداول يومية ✓ تحليلات استراتيجية حصرية ✓ تنبيهات باتجاهات السوق ✓ مواد تعليمية للمبتدئين