Variables in MQL: Difference between revisions

From binaryoption
Jump to navigation Jump to search
Баннер1
(@pipegas_WP)
 
(@CategoryBot: Обновлена категория)
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
[[ملف:Mql4_logo.png|frameless|center|200px]]
=== المتغيرات في لغة MQL4 ===


# المتغيرات في لغة MQL4
المتغيرات هي أساس أي برنامج برمجي، بما في ذلك برامج التداول التي تُكتب بلغة MQL4 المستخدمة في منصة [[MetaTrader 4]]. ببساطة، المتغير هو اسم يُعطى لموقع في الذاكرة يُستخدم لتخزين قيمة. هذه القيمة يمكن أن تتغير أثناء تنفيذ البرنامج، وهذا هو سبب تسميتها "متغيرات". فهم المتغيرات وكيفية استخدامها بشكل صحيح أمر بالغ الأهمية لكتابة [[خبير مستشار]] (Expert Advisor - EA) فعال و [[مؤشر مخصص]] (Custom Indicator).


هذه المقالة موجهة للمبتدئين في برمجة [[MQL4]]، وهي اللغة المستخدمة في منصة [[MetaTrader 4]] لتطوير أنظمة التداول الآلية، والمؤشرات الفنية، والبرامج النصية. فهم [[المتغيرات]] هو أساس أي لغة برمجة، و MQL4 ليست استثناءً.
== أنواع المتغيرات ==


## ما هو المتغير؟
تُصنف المتغيرات في MQL4 إلى عدة أنواع بناءً على نوع البيانات التي يمكنها تخزينها. إليك الأنواع الرئيسية:


المتغير هو مكان في ذاكرة الكمبيوتر يُستخدم لتخزين قيمة. يمكن أن تكون هذه القيمة رقمًا، أو نصًا، أو قيمة منطقية (صحيح أو خطأ)، أو أي نوع آخر من البيانات.  في MQL4، يجب عليك *تعريف* المتغير قبل استخدامه، مع تحديد نوع البيانات التي سيحتوي عليها.
{| class="wikitable"
|+ أنواع المتغيرات في MQL4
|-
| النوع || الوصف || حجم الذاكرة (بايت) || نطاق القيم
|-
| `int` || عدد صحيح || 4 || -2,147,483,648 إلى 2,147,483,647
|-
| `double` || عدد عشري (نقطة عائمة) || 8 || ±1.7976931348623157E+308
|-
| `bool` || قيمة منطقية (صحيح أو خطأ) || 4 || `true` أو `false`
|-
| `string` || سلسلة نصية || متغير (حسب الطول) || أي عدد من الأحرف
|-
| `char` || حرف واحد || 1 || أي حرف ASCII
|-
| `datetime` || تاريخ ووقت || 8 || 1 يناير 1970 - الوقت الحالي
|-
| `color` || لون || 4 || قيم RGB (أحمر، أخضر، أزرق)
|}


## أنواع البيانات في MQL4
=== تعريف المتغيرات ===


تحدد أنواع البيانات نوع القيمة التي يمكن للمتغير تخزينها. إليك بعض أنواع البيانات الأكثر شيوعًا في MQL4:
لتحديد متغير، يجب عليك تحديد نوعه واسمه. الصيغة العامة هي:


*  **int:** (عدد صحيح) يستخدم لتخزين الأعداد الصحيحة (بدون كسور). مثال: `int age = 30;`
```mql4
*  **double:** (عدد عشري مزدوج الدقة) يستخدم لتخزين الأعداد العشرية. مثال: `double price = 1.12345;`
نوع_البيانات اسم_المتغير;
*  **bool:** (قيمة منطقية) يمكن أن يكون له قيمتان فقط: `true` (صحيح) أو `false` (خطأ). مثال: `bool isProfitable = true;`
```
*  **string:** (نص) يستخدم لتخزين سلسلة من الأحرف. مثال: `string symbolName = "EURUSD";`
*  **char:** (حرف) يستخدم لتخزين حرف واحد. مثال: `char grade = 'A';`
*  **datetime:** (تاريخ ووقت) يستخدم لتخزين قيم التاريخ والوقت. مثال: `datetime tradeTime = TimeCurrent();`
*  **color:** (لون) يستخدم لتخزين قيم الألوان المستخدمة في الرسوم البيانية. مثال: `color arrowColor = clrRed;`


## تعريف المتغيرات
على سبيل المثال:
 
لتعريف متغير في MQL4، يجب عليك تحديد نوع البيانات واسم المتغير. يمكنك أيضًا إعطاء المتغير قيمة أولية. الصيغة العامة هي:


```mql4
```mql4
نوع_البيانات اسم_المتغير = القيمة_الأولية;
int age;
double price;
string symbolName;
```
```


أمثلة:
يمكنك أيضًا تهيئة المتغير بقيمة عند تعريفه:


```mql4
```mql4
int lotSize = 0.1;
int age = 30;
double stopLoss = 1.1100;
double price = 1.1234;
string tradeComment = "Auto Trade";
string symbolName = "EURUSD";
```
```


## نطاق المتغيرات
=== نطاق المتغيرات ===


يشير نطاق المتغير إلى الجزء من الكود الذي يمكن فيه الوصول إلى المتغير. في MQL4، هناك ثلاثة أنواع رئيسية من النطاقات:
نطاق المتغير يحدد جزء البرنامج الذي يمكن الوصول إليه فيه. هناك ثلاثة أنواع رئيسية من النطاقات:


*  **المتغيرات المحلية:** يتم تعريفها داخل دالة أو كتلة كود.  لا يمكن الوصول إليها إلا داخل تلك الدالة أو الكتلة.
*  **المتغيرات العامة (Global Variables):** تُعرّف خارج أي دالة ويمكن الوصول إليها من أي مكان في البرنامج.
*  **المتغيرات العامة:** يتم تعريفها خارج أي دالة. يمكن الوصول إليها من أي مكان في البرنامج.
*  **المتغيرات المحلية (Local Variables):** تُعرّف داخل دالة ويمكن الوصول إليها فقط داخل تلك الدالة.
*  **المتغيرات العالمية:** تم تعريفها في بداية البرنامج، وتكون متاحة لجميع الدوال والبرامج النصية.
*  **المتغيرات الثابتة (Static Variables):** تُعرّف داخل دالة ولكنها تحتفظ بقيمتها بين استدعاءات الدالة.


## أمثلة عملية
=== استخدام المتغيرات ===


لنلقِ نظرة على مثال بسيط يوضح كيفية استخدام المتغيرات في برنامج نصي MQL4:
تُستخدم المتغيرات لتخزين البيانات ومعالجتها في البرنامج. يمكنك إجراء عمليات حسابية، مقارنات، وتعيينات على المتغيرات.
 
مثال:


```mql4
```mql4
int OnInit() {
int a = 10;
  int magicNumber = 12345;
int b = 5;
  double currentPrice = SymbolInfoDouble(Symbol(), SYMBOL_ASK);
int sum = a + b; // جمع متغيرين
 
if (sum > 10) {
  Print("Magic Number: ", magicNumber);
   Print("Sum is greater than 10");
   Print("Current Price: ", currentPrice);
 
  return(INIT_SUCCEEDED);
}
}
```
```


في هذا المثال:
=== المتغيرات المعرفة مسبقًا ===


*  `magicNumber` هو متغير محلي من نوع `int` يحتوي على قيمة `12345`.
توفر MQL4 العديد من المتغيرات المعرفة مسبقًا التي توفر معلومات حول السوق والأداة المالية الحالية. بعض الأمثلة:
*  `currentPrice` هو متغير محلي من نوع `double` يحتوي على السعر الحالي للزوج.
*  `Print()` هي دالة MQL4 تستخدم لعرض المعلومات في نافذة "الخبراء" في MetaTrader 4.


## استخدام المتغيرات في استراتيجيات التداول
*  `Symbol()`: اسم الأداة المالية الحالية.
*  `Period()`: الإطار الزمني الحالي.
*  `MarketInfo()`: دالة لإرجاع معلومات حول السوق.
*  `TimeCurrent()`: الوقت الحالي للخادم.
*  `Ask`: سعر الطلب الحالي.
*  `Bid`: سعر العرض الحالي.


تُستخدم المتغيرات بشكل مكثف في تطوير [[استراتيجيات التداول]] الآلية. على سبيل المثال:
=== نصائح لاستخدام المتغيرات ===


*  تخزين قيم [[مؤشرات التحليل الفني]] مثل [[Moving Average]] أو [[RSI]].
*  اختر أسماء متغيرات ذات معنى وواضحة لتسهيل فهم الكود.
*  تخزين قيم [[مستويات الدعم والمقاومة]].
*  تخزين قيم [[حجم التداول]].
*  تخزين قيم [[أوامر وقف الخسارة]] و [[أوامر جني الأرباح]].
*  تخزين بيانات [[التحليل الأساسي]].
 
## نصائح هامة
 
*  اختر أسماء متغيرات وصفية وذات معنى لتسهيل فهم الكود.
*  استخدم التعليقات لشرح الغرض من المتغيرات.
*  استخدم التعليقات لشرح الغرض من المتغيرات.
*  تجنب استخدام أسماء المتغيرات المحجوزة في MQL4 (مثل `int`, `double`, `string`).
*  تجنب استخدام المتغيرات العامة إلا عند الضرورة.
تحقق من نوع البيانات قبل إجراء العمليات الحسابية لتجنب الأخطاء.
تأكد من تهيئة المتغيرات قبل استخدامها.
 
استخدم أنواع البيانات المناسبة لتجنب فقدان الدقة أو حدوث أخطاء.
## المزيد من المعلومات
 
[[دوال MQL4]]: تعلم كيفية استخدام الدوال المختلفة في MQL4.
*  [[عوامل التشغيل في MQL4]]: فهم كيفية استخدام عوامل التشغيل المختلفة لإجراء العمليات الحسابية والمنطقية.
*  [[الشروط والحلقات في MQL4]]: تعلم كيفية استخدام الشروط والحلقات للتحكم في تدفق البرنامج.
*  [[الدوال المخصصة في MQL4]]: تعلم كيفية إنشاء الدوال الخاصة بك.
*  [[الأخطاء الشائعة في MQL4]]: تجنب الأخطاء الشائعة في برمجة MQL4.


## استراتيجيات تداول ذات صلة
=== أمثلة تطبيقية ===


*  [[استراتيجية الاختراق]]
في [[استراتيجية الاختراق]]، يمكن استخدام متغير لتخزين مستوى الدعم أو المقاومة.
*  [[استراتيجية المتوسطات المتحركة المتقاطعة]]
في [[استراتيجية المتوسطات المتحركة]]، يمكن استخدام متغيرات لتخزين قيم المتوسطات المتحركة المختلفة.
*  [[استراتيجية تداول الاتجاه]]
*  في [[استراتيجية بولينجر باندز]]، يمكن استخدام متغيرات لتخزين الانحراف المعياري والنطاقات العلوية والسفلية.
*  [[استراتيجية تداول المدى]]
في [[استراتيجية RSI]]، يمكن استخدام متغير لتخزين قيمة مؤشر القوة النسبية.
*  [[استراتيجية تصحيح فيبوناتشي]]
في [[استراتيجية MACD]]، يمكن استخدام متغيرات لتخزين قيم الخطوط المختلفة.
*  [[استراتيجية تداول الرأس والكتفين]]
في [[استراتيجية فيبوناتشي]]، يمكن استخدام متغيرات لتخزين مستويات فيبوناتشي.
*  [[استراتيجية تداول المثلثات]]
في [[استراتيجية Ichimoku Kinko Hyo]]، يمكن استخدام متغيرات لتخزين قيم الخطوط المختلفة.
*  [[استراتيجية تداول الأنماط الشموع]]
في [[استراتيجية Price Action]]، يمكن استخدام متغير لتخزين حجم الشمعة.
*  [[استراتيجية تداول حجم التداول]]
في [[استراتيجية التداول بناءً على الأخبار]]، يمكن استخدام متغير لتخزين قيمة التأثير الإخباري.
*  [[استراتيجية تداول الأخبار]]
في [[استراتيجية التداول الخوارزمي]]، يمكن استخدام متغيرات لتخزين معلمات الخوارزمية.
*  [[استراتيجية التداول الخوارزمي]]
*  في [[تحليل حجم التداول]]، يمكن استخدام متغيرات لتخزين قيم حجم التداول.
*  [[استراتيجية تداول المارتينجال]]
*  في [[تحليل الشموع اليابانية]]، يمكن استخدام متغيرات لتخزين أنماط الشموع.
*  [[استراتيجية تداول المضاعفة]]
*  في [[تحليل الموجات إليوت]]، يمكن استخدام متغيرات لتخزين أرقام الموجات.
*  [[استراتيجية تداول السكالبينج]]
في [[تحليل الفجوات السعرية]]، يمكن استخدام متغيرات لتخزين قيم الفجوات.
*  [[استراتيجية تداول الديجيتال]]
*  في [[تحليل الأنماط الرسومية]]، يمكن استخدام متغيرات لتخزين نقاط الدخول والخروج.
في [[استراتيجية مارتينجال]]، يمكن استخدام متغير لحساب حجم التداول التالي.
في [[استراتيجية التداول المتأرجح]]، يمكن استخدام متغير لتحديد نقاط الدخول والخروج.
في [[استراتيجية التداول اليومي]]، يمكن استخدام متغير لتحديد أهداف الربح والخسارة.
في [[استراتيجية التداول الليلي]]، يمكن استخدام متغير لتحديد أوقات التداول.
في [[استراتيجية التداول متعدد الأطر الزمنية]]، يمكن استخدام متغيرات لتخزين قيم الإطارات الزمنية المختلفة.


## التحليل الفني وتحليل حجم التداول
=== المراجع ===


*  [[مؤشر القوة النسبية (RSI)]]
*  [[MQL4 Reference]]
*  [[مؤشر الماكد (MACD)]]
*  [[MetaTrader 4 Documentation]]
*  [[مؤشر ستوكاستيك]]
*  [[MQL4 Community Forum]]
*  [[بولينجر باندز]]
*  [[التحليل الفني]]
*  [[التحليل الموجي إليوت]]
*  [[إدارة المخاطر]]
*  [[مؤشر ATR]]
*  [[حجم التداول]]
*  [[مؤشر On Balance Volume (OBV)]]
*  [[مؤشر Chaikin Money Flow (CMF)]]
*  [[مؤشر Volume Price Trend (VPT)]]
*  [[مؤشر Accumulation/Distribution Line (A/D)]]
*  [[التحليل الفني الشامل]]
*  [[أنماط الشموع اليابانية]]
*  [[نظرية الدعم والمقاومة]]
*  [[خطوط الاتجاه]]


[[Category:**الفئة:MQL4**]]


== ابدأ التداول الآن ==
== ابدأ التداول الآن ==
Line 139: Line 134:
✓ تنبيهات باتجاهات السوق
✓ تنبيهات باتجاهات السوق
✓ مواد تعليمية للمبتدئين
✓ مواد تعليمية للمبتدئين
[[Category:MQL4]]

Latest revision as of 10:05, 7 May 2025

المتغيرات في لغة MQL4

المتغيرات هي أساس أي برنامج برمجي، بما في ذلك برامج التداول التي تُكتب بلغة MQL4 المستخدمة في منصة MetaTrader 4. ببساطة، المتغير هو اسم يُعطى لموقع في الذاكرة يُستخدم لتخزين قيمة. هذه القيمة يمكن أن تتغير أثناء تنفيذ البرنامج، وهذا هو سبب تسميتها "متغيرات". فهم المتغيرات وكيفية استخدامها بشكل صحيح أمر بالغ الأهمية لكتابة خبير مستشار (Expert Advisor - EA) فعال و مؤشر مخصص (Custom Indicator).

أنواع المتغيرات

تُصنف المتغيرات في MQL4 إلى عدة أنواع بناءً على نوع البيانات التي يمكنها تخزينها. إليك الأنواع الرئيسية:

أنواع المتغيرات في MQL4
النوع الوصف حجم الذاكرة (بايت) نطاق القيم
`int` عدد صحيح 4 -2,147,483,648 إلى 2,147,483,647
`double` عدد عشري (نقطة عائمة) 8 ±1.7976931348623157E+308
`bool` قيمة منطقية (صحيح أو خطأ) 4 `true` أو `false`
`string` سلسلة نصية متغير (حسب الطول) أي عدد من الأحرف
`char` حرف واحد 1 أي حرف ASCII
`datetime` تاريخ ووقت 8 1 يناير 1970 - الوقت الحالي
`color` لون 4 قيم RGB (أحمر، أخضر، أزرق)

تعريف المتغيرات

لتحديد متغير، يجب عليك تحديد نوعه واسمه. الصيغة العامة هي:

```mql4 نوع_البيانات اسم_المتغير; ```

على سبيل المثال:

```mql4 int age; double price; string symbolName; ```

يمكنك أيضًا تهيئة المتغير بقيمة عند تعريفه:

```mql4 int age = 30; double price = 1.1234; string symbolName = "EURUSD"; ```

نطاق المتغيرات

نطاق المتغير يحدد جزء البرنامج الذي يمكن الوصول إليه فيه. هناك ثلاثة أنواع رئيسية من النطاقات:

  • **المتغيرات العامة (Global Variables):** تُعرّف خارج أي دالة ويمكن الوصول إليها من أي مكان في البرنامج.
  • **المتغيرات المحلية (Local Variables):** تُعرّف داخل دالة ويمكن الوصول إليها فقط داخل تلك الدالة.
  • **المتغيرات الثابتة (Static Variables):** تُعرّف داخل دالة ولكنها تحتفظ بقيمتها بين استدعاءات الدالة.

استخدام المتغيرات

تُستخدم المتغيرات لتخزين البيانات ومعالجتها في البرنامج. يمكنك إجراء عمليات حسابية، مقارنات، وتعيينات على المتغيرات.

مثال:

```mql4 int a = 10; int b = 5; int sum = a + b; // جمع متغيرين if (sum > 10) {

 Print("Sum is greater than 10");

} ```

المتغيرات المعرفة مسبقًا

توفر MQL4 العديد من المتغيرات المعرفة مسبقًا التي توفر معلومات حول السوق والأداة المالية الحالية. بعض الأمثلة:

  • `Symbol()`: اسم الأداة المالية الحالية.
  • `Period()`: الإطار الزمني الحالي.
  • `MarketInfo()`: دالة لإرجاع معلومات حول السوق.
  • `TimeCurrent()`: الوقت الحالي للخادم.
  • `Ask`: سعر الطلب الحالي.
  • `Bid`: سعر العرض الحالي.

نصائح لاستخدام المتغيرات

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

أمثلة تطبيقية

المراجع


ابدأ التداول الآن

سجل في IQ Option (الحد الأدنى للإيداع $10) افتح حساباً في Pocket Option (الحد الأدنى للإيداع $5)

انضم إلى مجتمعنا

اشترك في قناة Telegram الخاصة بنا @strategybin للحصول على: ✓ إشارات تداول يومية ✓ تحليلات استراتيجية حصرية ✓ تنبيهات باتجاهات السوق ✓ مواد تعليمية للمبتدئين

Баннер