Operators in MQL: Difference between revisions

From binaryoption
Jump to navigation Jump to search
Баннер1
(@pipegas_WP)
 
(@pipegas_WP)
Line 1: Line 1:
=== معاملات MQL للمبتدئين ===
=== العوامل في لغة MQL ===


'''مقدمة'''
لغة MQL (MetaQuotes Language) هي لغة البرمجة المستخدمة لتطوير أنظمة التداول الآلية، والمؤشرات الفنية، والبرامج النصية في منصات MetaTrader 4 و MetaTrader 5. فهم [[العوامل]] (Operators) في MQL أمر بالغ الأهمية لكتابة تعليمات برمجية فعالة ودقيقة. هذه المقالة تقدم شرحًا شاملاً للعوامل المختلفة في MQL، مصممة للمبتدئين.


تُعد لغة MQL4 (MetaQuotes Language 4) لغة برمجة قوية تُستخدم بشكل أساسي لتطوير [[الروبوتات الخبيرة]] (Expert Advisors)، والمؤشرات المخصصة، والنصوص البرمجية في منصة [[MetaTrader 4]]. فهم '''المعاملات (Operators)''' في MQL4 أمر بالغ الأهمية لكتابة تعليمات برمجية فعالة ودقيقة. هذه المقالة موجهة للمبتدئين وتهدف إلى شرح أنواع المعاملات المختلفة المستخدمة في MQL4 بطريقة واضحة ومفصلة.
== أنواع العوامل ==


== أنواع المعاملات في MQL4 ==
يمكن تصنيف العوامل في MQL إلى عدة أنواع رئيسية:


يمكن تصنيف المعاملات في MQL4 إلى عدة أنواع رئيسية:
* '''العوامل الحسابية (Arithmetic Operators):''' تستخدم لإجراء العمليات الحسابية الأساسية.
* '''عوامل المقارنة (Comparison Operators):''' تستخدم لمقارنة القيم.
* '''العوامل المنطقية (Logical Operators):''' تستخدم لدمج أو نفي الشروط المنطقية.
* '''عوامل الإسناد (Assignment Operators):''' تستخدم لتعيين القيم للمتغيرات.
* '''عوامل بتية (Bitwise Operators):''' تستخدم لإجراء عمليات على مستوى البت.
* '''عوامل الزيادة والنقصان (Increment/Decrement Operators):''' تستخدم لزيادة أو نقصان قيمة المتغير.


=== 1. المعاملات الحسابية ===
== العوامل الحسابية ==


تُستخدم هذه المعاملات لإجراء العمليات الحسابية الأساسية.
| العامل | الوصف | مثال |
|---|---|---|
| + | الجمع | `a + b` |
| - | الطرح | `a - b` |
| * | الضرب | `a * b` |
| / | القسمة | `a / b` |
| % | باقي القسمة (Modulo) | `a % b` |


{| class="wikitable"
هذه العوامل تعمل على أنواع البيانات الرقمية مثل `int` و `double`. من المهم ملاحظة أن القسمة على صفر تؤدي إلى خطأ في البرنامج. يمكن استخدام هذه العوامل في حساب [[مؤشرات فنية]] مثل [[المتوسط المتحرك]] و [[مؤشر القوة النسبية]].
|+ المعاملات الحسابية
|-
| المعامل | الوصف | مثال |
| + | الجمع | a + b |
| - | الطرح | a - b |
| * | الضرب | a * b |
| / | القسمة | a / b |
| % | باقي القسمة (Modulo) | a % b |
| ++ | الزيادة بمقدار واحد (Increment) | a++ |
| -- | النقصان بمقدار واحد (Decrement) | a-- |
|}


'''شرح إضافي:''' من المهم الانتباه إلى نوع البيانات عند استخدام المعاملات الحسابية لتجنب أخطاء التحويل.  على سبيل المثال، قسمة عدد صحيح على عدد صحيح قد تؤدي إلى اقتطاع الجزء العشري.  راجع [[أنواع البيانات في MQL4]] لمزيد من التفاصيل.
== عوامل المقارنة ==


=== 2. معاملات المقارنة ===
| العامل | الوصف | مثال |
|---|---|---|
| == | يساوي | `a == b` |
| != | لا يساوي | `a != b` |
| > | أكبر من | `a > b` |
| < | أصغر من | `a < b` |
| >= | أكبر من أو يساوي | `a >= b` |
| <= | أصغر من أو يساوي | `a <= b` |


تُستخدم هذه المعاملات لمقارنة قيمتين.
تُرجع عوامل المقارنة قيمة منطقية (true أو false). تستخدم هذه العوامل بشكل كبير في [[شروط التداول]] و [[استراتيجيات الخروج]].  مثال على ذلك استخدامها في تحديد ما إذا كان سعر الأصل قد تجاوز مستوى دعم أو مقاومة.


{| class="wikitable"
== العوامل المنطقية ==
|+ معاملات المقارنة
|-
| المعامل | الوصف | مثال |
| == | يساوي | a == b |
| != | لا يساوي | a != b |
| > | أكبر من | a > b |
| < | أصغر من | a < b |
| >= | أكبر من أو يساوي | a >= b |
| <= | أصغر من أو يساوي | a <= b |
|}


'''تطبيق:''' تُستخدم معاملات المقارنة بشكل كبير في [[الشروط]] (Conditional Statements) مثل `if` و `else` لاتخاذ قرارات بناءً على قيم المتغيرات.
| العامل | الوصف | مثال |
|---|---|---|
| && | AND (و) | `(a > 0) && (b < 10)` |
| || | OR (أو) | `(a > 0) || (b < 0)` |
| ! | NOT (ليس) | `!(a > 0)` |


=== 3. المعاملات المنطقية ===
تُرجع العوامل المنطقية قيمة منطقية (true أو false) بناءً على تقييم الشروط. تستخدم هذه العوامل لإنشاء شروط تداول أكثر تعقيدًا.  يمكن استخدامها مع [[أنماط الشموع]] لتحديد فرص التداول.


تُستخدم هذه المعاملات لدمج أو نفي الشروط المنطقية.
== عوامل الإسناد ==


{| class="wikitable"
| العامل | الوصف | مثال |
|+ المعاملات المنطقية
|---|---|---|
|-
| = | الإسناد البسيط | `a = b` |
| المعامل | الوصف | مثال |
| += | إضافة ثم إسناد | `a += b` (تعادل `a = a + b`) |
| && | و (AND) - تعود بقيمة صحيحة إذا كان كلا الشرطين صحيحين | (a > 0) && (b < 10) |
| -= | طرح ثم إسناد | `a -= b` (تعادل `a = a - b`) |
| || | أو (OR) - تعود بقيمة صحيحة إذا كان أحد الشرطين صحيحًا | (a > 0) || (b < 10) |
| *= | ضرب ثم إسناد | `a *= b` (تعادل `a = a * b`) |
| ! | ليس (NOT) - تنفي الشرط | !(a > 0) |
| /= | قسمة ثم إسناد | `a /= b` (تعادل `a = a / b`) |
|}
| %= | باقي القسمة ثم إسناد | `a %= b` (تعادل `a = a % b`) |


'''أهمية:''' المعاملات المنطقية ضرورية لبناء شروط معقدة في برامجكيمكنك استخدامها لدمج عدة [[مؤشرات فنية]] في استراتيجية تداول واحدة.
تستخدم عوامل الإسناد لتعيين قيم جديدة للمتغيراتتسهل عوامل الإسناد المركبة (مثل +=) كتابة تعليمات برمجية أكثر إيجازًا.


=== 4. معاملات الإسناد ===
== العوامل البتية ==


تُستخدم هذه المعاملات لتعيين قيمة لمتغير.
| العامل | الوصف | مثال |
|---|---|---|
| & | AND البتي | `a & b` |
| | | OR البتي | `a | b` |
| ^ | XOR البتي | `a ^ b` |
| ~ | NOT البتي | `~a` |
| << | إزاحة إلى اليسار | `a << 2` |
| >> | إزاحة إلى اليمين | `a >> 2` |


{| class="wikitable"
تستخدم العوامل البتية لإجراء عمليات على مستوى البت في الأعداد الصحيحة.  تستخدم هذه العوامل بشكل أقل شيوعًا في تداول الفوركس والعملات المشفرة، ولكنها قد تكون مفيدة في بعض التطبيقات المتقدمة.
|+ معاملات الإسناد
|-
| المعامل | الوصف | مثال |
| = | إسناد | a = 5 |
| += | إضافة وإسناد | a += 5 (تكافئ a = a + 5) |
| -= | طرح وإسناد | a -= 5 (تكافئ a = a - 5) |
| *= | ضرب وإسناد | a *= 5 (تكافئ a = a * 5) |
| /= | قسمة وإسناد | a /= 5 (تكافئ a = a / 5) |
| %= | باقي القسمة وإسناد | a %= 5 (تكافئ a = a % 5) |
|}


'''ملاحظة:'''  معامل الإسناد `=` ليس مجرد مقارنة، بل هو عملية تغيير قيمة المتغير.
== عوامل الزيادة والنقصان ==


=== 5. معاملات البت (Bitwise Operators) ===
| العامل | الوصف | مثال |
|---|---|---|
| ++ | الزيادة بمقدار واحد (Post-increment/Pre-increment) | `a++` أو `++a` |
| -- | النقصان بمقدار واحد (Post-decrement/Pre-decrement) | `a--` أو `--a` |


تُستخدم هذه المعاملات للعمل على مستوى البتات الثنائية.  تُستخدم بشكل أقل شيوعًا في تداول العملات الأجنبية ولكنها قد تكون مفيدة في بعض الحالات المتخصصةراجع [[العمليات على مستوى البت]] لمزيد من التفاصيل.
تستخدم عوامل الزيادة والنقصان لزيادة أو نقصان قيمة المتغير بمقدار واحديوجد فرق بين الزيادة/النقصان قبل وبعد (pre/post)، حيث يؤثر ذلك على القيمة التي يتم إرجاعها من التعبير.


=== 6. معامل النقطة (Dot Operator) ===
== الأسبقية العوامل ==


يُستخدم للوصول إلى أعضاء كائن (Object). على سبيل المثال، `SymbolInfoInteger(Symbol(), SYMBOL_TRADE_STOPS_LIMIT)` يستخدم المعامل النقطي للوصول إلى خاصية `SYMBOL_TRADE_STOPS_LIMIT` الخاصة بكائن `SymbolInfo`.
عند استخدام عدة عوامل في تعبير واحد، يتم تقييمها وفقًا لأسبقية معينة. من المهم فهم هذه الأسبقية لضمان الحصول على النتائج الصحيحة. على سبيل المثال، الضرب والقسمة لهما أسبقية أعلى من الجمع والطرح.  يمكن استخدام الأقواس `()` لتغيير ترتيب التقييم.


== الأولوية للمعاملات ==
== أمثلة عملية ==


عند استخدام عدة معاملات في تعبير واحد، يتم تقييمها بترتيب معين بناءً على الأولوية.  من المهم فهم هذه الأولوية لتجنب الأخطاء.  بشكل عام، المعاملات الحسابية لها أولوية أعلى من المعاملات المنطقية.  يمكن استخدام الأقواس `()` لتغيير ترتيب التقييم. راجع [[أولوية المعاملات في MQL4]] للحصول على قائمة كاملة.
* حساب نسبة المخاطرة إلى العائد: `risk_reward_ratio = (stop_loss / take_profit);`
* التحقق من شرط الدخول إلى الصفقة: `if ((close > resistance_level) && (volume > average_volume))`
* تحديث حجم الصفقة: `lot_size += 0.01;`
* التحقق من اتجاه السوق باستخدام [[مؤشر الماكد]] و [[مؤشر ستوكاستيك]].


== أمثلة تطبيقية ==
== مصادر إضافية ==


* '''حساب المتوسط المتحرك:'''  `MA = (Close[0] + Close[1] + Close[2]) / 3;` (يستخدم المعاملات الحسابية)
* [[MQL4 Reference]]
* '''التحقق من شرط الدخول:''' `if (RSI < 30 && MACD > Signal)` (يستخدم معاملات المقارنة والمنطقية)
* [[MQL5 Reference]]
* '''تعديل حجم اللوت:''' `LotSize = InitialLotSize * RiskFactor;` (يستخدم معامل الإسناد)
* [[Variables in MQL]]
* [[Data Types in MQL]]
* [[Control Structures in MQL]]
* [[Functions in MQL]]
* [[Arrays in MQL]]
* [[Strings in MQL]]


== استراتيجيات تداول تعتمد على المعاملات ==
== استراتيجيات ذات صلة ==


العديد من استراتيجيات التداول تعتمد بشكل كبير على المعاملات. إليك بعض الأمثلة:
* [[Scalping Strategy]]
* [[Day Trading Strategy]]
* [[Swing Trading Strategy]]
* [[Breakout Strategy]]
* [[Reversal Strategy]]
* [[Trend Following Strategy]]
* [[News Trading Strategy]]
* [[Arbitrage Strategy]]
* [[Martingale Strategy]]
* [[Fibonacci Trading Strategy]]
* [[Bollinger Bands Strategy]]
* [[Ichimoku Cloud Strategy]]
* [[Elliott Wave Theory]]
* [[Harmonic Patterns]]
* [[Price Action Trading]]


* [[استراتيجية المتوسطات المتحركة المتقاطعة]]
== تحليل فني وتحليل حجم التداول ==
* [[استراتيجية مؤشر القوة النسبية (RSI)]]
* [[استراتيجية MACD]]
* [[استراتيجية بولينجر باندز]]
* [[استراتيجية الاختراق]]
* [[استراتيجية الارتداد]]
* [[استراتيجية التداول بناءً على أخبار السوق]]
* [[استراتيجية مارتينجال]]
* [[استراتيجية المضاد للمارتينجال]]
* [[استراتيجية التداول المتأرجح]]
* [[استراتيجية التداول اليومي]]
* [[استراتيجية التداول الخوارزمي]]
* [[استراتيجية التداول باستخدام أنماط الشموع اليابانية]]
* [[استراتيجية التداول باستخدام مستويات فيبوناتشي]]
* [[استراتيجية التداول باستخدام خطوط الاتجاه]]


== التحليل الفني وحجم التداول ==
* [[Support and Resistance]]
* [[Trend Lines]]
* [[Chart Patterns]]
* [[Volume Analysis]]
* [[Order Flow Analysis]]
* [[Moving Averages]]
* [[Relative Strength Index (RSI)]]
* [[MACD]]
* [[Stochastic Oscillator]]
* [[Bollinger Bands]]
* [[Fibonacci Retracements]]
* [[Ichimoku Cloud]]
* [[Candlestick Patterns]]
* [[Pivot Points]]
* [[Average True Range (ATR)]]


فهم المعاملات يساعدك بشكل كبير في تطبيق تقنيات [[التحليل الفني]] و [[تحليل حجم التداول]].  على سبيل المثال، يمكنك استخدام المعاملات لحساب مؤشرات التحليل الفني المختلفة مثل [[مؤشر ستوكاستيك]]، و [[مؤشر ATR]]، و [[مؤشر ويليامز %R]].  كما يمكنك استخدامها لتحليل بيانات حجم التداول لتحديد نقاط الدخول والخروج المحتملة.
[[Category:الفئة:MQL4/MQL5]]
 
== الموارد الإضافية ==
 
* [[دليل لغة MQL4 الرسمي]]
* [[منتدى MQL4]]
* [[دروس MQL4 على يوتيوب]]
* [[مكتبة MQL4]]
* [[أمثلة على أكواد MQL4]]
 
=== الخلاصة ===
 
المعاملات هي اللبنات الأساسية لأي برنامج MQL4.  فهم أنواع المعاملات المختلفة وأولويتها أمر ضروري لكتابة تعليمات برمجية دقيقة وفعالة.  من خلال التدريب والممارسة، ستتمكن من استخدام المعاملات بفعالية لتطوير [[الروبوتات الخبيرة]] والمؤشرات المخصصة التي تلبي احتياجاتك الخاصة في [[تداول العملات الأجنبية]].
 
[[Category:الفئة:MQL4]]


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

Revision as of 06:34, 27 March 2025

العوامل في لغة MQL

لغة MQL (MetaQuotes Language) هي لغة البرمجة المستخدمة لتطوير أنظمة التداول الآلية، والمؤشرات الفنية، والبرامج النصية في منصات MetaTrader 4 و MetaTrader 5. فهم العوامل (Operators) في MQL أمر بالغ الأهمية لكتابة تعليمات برمجية فعالة ودقيقة. هذه المقالة تقدم شرحًا شاملاً للعوامل المختلفة في MQL، مصممة للمبتدئين.

أنواع العوامل

يمكن تصنيف العوامل في MQL إلى عدة أنواع رئيسية:

  • العوامل الحسابية (Arithmetic Operators): تستخدم لإجراء العمليات الحسابية الأساسية.
  • عوامل المقارنة (Comparison Operators): تستخدم لمقارنة القيم.
  • العوامل المنطقية (Logical Operators): تستخدم لدمج أو نفي الشروط المنطقية.
  • عوامل الإسناد (Assignment Operators): تستخدم لتعيين القيم للمتغيرات.
  • عوامل بتية (Bitwise Operators): تستخدم لإجراء عمليات على مستوى البت.
  • عوامل الزيادة والنقصان (Increment/Decrement Operators): تستخدم لزيادة أو نقصان قيمة المتغير.

العوامل الحسابية

| العامل | الوصف | مثال | |---|---|---| | + | الجمع | `a + b` | | - | الطرح | `a - b` | | * | الضرب | `a * b` | | / | القسمة | `a / b` | | % | باقي القسمة (Modulo) | `a % b` |

هذه العوامل تعمل على أنواع البيانات الرقمية مثل `int` و `double`. من المهم ملاحظة أن القسمة على صفر تؤدي إلى خطأ في البرنامج. يمكن استخدام هذه العوامل في حساب مؤشرات فنية مثل المتوسط المتحرك و مؤشر القوة النسبية.

عوامل المقارنة

| العامل | الوصف | مثال | |---|---|---| | == | يساوي | `a == b` | | != | لا يساوي | `a != b` | | > | أكبر من | `a > b` | | < | أصغر من | `a < b` | | >= | أكبر من أو يساوي | `a >= b` | | <= | أصغر من أو يساوي | `a <= b` |

تُرجع عوامل المقارنة قيمة منطقية (true أو false). تستخدم هذه العوامل بشكل كبير في شروط التداول و استراتيجيات الخروج. مثال على ذلك استخدامها في تحديد ما إذا كان سعر الأصل قد تجاوز مستوى دعم أو مقاومة.

العوامل المنطقية

| العامل | الوصف | مثال | |---|---|---| | && | AND (و) | `(a > 0) && (b < 10)` | | || | OR (أو) | `(a > 0) || (b < 0)` | | ! | NOT (ليس) | `!(a > 0)` |

تُرجع العوامل المنطقية قيمة منطقية (true أو false) بناءً على تقييم الشروط. تستخدم هذه العوامل لإنشاء شروط تداول أكثر تعقيدًا. يمكن استخدامها مع أنماط الشموع لتحديد فرص التداول.

عوامل الإسناد

| العامل | الوصف | مثال | |---|---|---| | = | الإسناد البسيط | `a = b` | | += | إضافة ثم إسناد | `a += b` (تعادل `a = a + b`) | | -= | طرح ثم إسناد | `a -= b` (تعادل `a = a - b`) | | *= | ضرب ثم إسناد | `a *= b` (تعادل `a = a * b`) | | /= | قسمة ثم إسناد | `a /= b` (تعادل `a = a / b`) | | %= | باقي القسمة ثم إسناد | `a %= b` (تعادل `a = a % b`) |

تستخدم عوامل الإسناد لتعيين قيم جديدة للمتغيرات. تسهل عوامل الإسناد المركبة (مثل +=) كتابة تعليمات برمجية أكثر إيجازًا.

العوامل البتية

| العامل | الوصف | مثال | |---|---|---| | & | AND البتي | `a & b` | | | | OR البتي | `a | b` | | ^ | XOR البتي | `a ^ b` | | ~ | NOT البتي | `~a` | | << | إزاحة إلى اليسار | `a << 2` | | >> | إزاحة إلى اليمين | `a >> 2` |

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

عوامل الزيادة والنقصان

| العامل | الوصف | مثال | |---|---|---| | ++ | الزيادة بمقدار واحد (Post-increment/Pre-increment) | `a++` أو `++a` | | -- | النقصان بمقدار واحد (Post-decrement/Pre-decrement) | `a--` أو `--a` |

تستخدم عوامل الزيادة والنقصان لزيادة أو نقصان قيمة المتغير بمقدار واحد. يوجد فرق بين الزيادة/النقصان قبل وبعد (pre/post)، حيث يؤثر ذلك على القيمة التي يتم إرجاعها من التعبير.

الأسبقية العوامل

عند استخدام عدة عوامل في تعبير واحد، يتم تقييمها وفقًا لأسبقية معينة. من المهم فهم هذه الأسبقية لضمان الحصول على النتائج الصحيحة. على سبيل المثال، الضرب والقسمة لهما أسبقية أعلى من الجمع والطرح. يمكن استخدام الأقواس `()` لتغيير ترتيب التقييم.

أمثلة عملية

  • حساب نسبة المخاطرة إلى العائد: `risk_reward_ratio = (stop_loss / take_profit);`
  • التحقق من شرط الدخول إلى الصفقة: `if ((close > resistance_level) && (volume > average_volume))`
  • تحديث حجم الصفقة: `lot_size += 0.01;`
  • التحقق من اتجاه السوق باستخدام مؤشر الماكد و مؤشر ستوكاستيك.

مصادر إضافية

استراتيجيات ذات صلة

تحليل فني وتحليل حجم التداول

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

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

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

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

Баннер