عرض مشاركة واحدة
قديم 10-07-2010, 05:05 AM   #2
nermine
مشرفة منتدى الأعمال
الصورة الرمزية nermine

المعلومات





آحدث المواضيع


الاتصال

nermine غير متصل

nermine is on a distinguished road
افتراضي رد: بالتطبيق المباشر تعلم برمجة الإكسبرتات من البدايه حتى الإحتراف

بسم الله الرحمن الرحيم

الآن لنبدأ في شرح الإكسبرت السابق بالتفصيل الممل

أول جزء في الإكسبرت

تم تصغير هذه الصورة تلقائياً. أبعاد الصورة الحقيقي 1024*768 و بحجم 62KB.

كود PHP:
//+------------------------------------------------------------------+
//| |
//| Copyright, created 16 Apr 2010 |
//| Desinged by MR.dollar |
//| |
//| mrdollar.cs@gmail.com |
//+------------------------------------------------------------------+

وهو الجزء الخاص بحقوق الملكيه ويمكن حذفه ولن يؤثر على أداء الإكسبرت كما سنلاحظ أنه ذو لون باهت أي أنه عباره عن كومنت أو تعليق لذلك يسبق كل سطر علامه //

كود PHP:
#property copyright "MR.dollar EA"
#property link "mrdollar.cs@gmail.com"

ثم يأتي الجزء التابع له وهو أيضا الخاص بحقوق الملكيه وحذفه لن يؤثر على آداء الإكسبرت أيضا

الجزء الثاني

كود PHP:
extern string MM_Parameters = "---------- Money Management";
extern double Lots = 1
;


extern string S5="---------------- Order Management"
;
extern int StopLoss=50
;
extern int TakeProfit=50
;
extern int MagicNumber=2533
;

وهو الجزء الخاص بالمتغيرات الخارجية للإكسبرت والتي ستظهر في خصائص الإكسبرت عن تفعيله على الشارت مثل الأستوب لوز أو الهدف

ولكن لنلاحظ شيء الآن

ماذا تعني extern
كما لاحظنا أن هذه الكلمة تتلون عند كتابتها في محرر الميتاإيديتور لذلك فهي من الكلمات المحجوزه وتستخدم لتعريف متغير خارجي ويتم كتابتها قبل نوع المتغير (ولكن ما هي المتغيرات وماذا تعني بنوع المتغير ؟)

المتغيرات
كما قلنا في الدرس السابق هي كلمات قمنا بإستخدامها وأعطيناها دلالة محدده أو قيمة معينه تعبر عنها
فمثلا أنا كتبت المتغير A وقمت بإعطاءه الرقم 1
فيعتبر A هو المتغير والقيمه التي أعطيتها له هي الرقم 1
ولكن هل يمكن أن أكتب في محرر الميتاإيدتور مباشره
كود PHP:
A=1

في هذه الحاله سيعطي خطأ لأن الميتاإيديتور لا يعرف ما معنى A أساسا هل هي رقم صحيح هل هي حرف هل هي رقم عشري

تماما كما لو أنك أعطيت شخص علبه وقلت له إستخدمها ولكن هو لا يعرف ما هذه العلبه هل سيستطيع إستخدامها . بالتأكيد لأ
ولكن إذا أخبرته بأنها يوضع بها الماء عندها سيتمكن من إستخدامها
وبنفس الطريقه سنقوم بتعريف هذه المتغيرات


إذا كيف نقوم بتعريف المتغيرات ؟

وماذا تعني string double int bool

int
هذه الكلمة المحجوزه تستخدم لتعريف متغير على أنه رقم صحيح وليس عشري
مثال:
كود PHP:
int StopLoss=30;
int ahmed=1
;

ففي المثال السابق عرفنا المتغير StopLoss على أنه عدد صحيح وأعطيناه القيمه 30
ونفس الشيء عرفنا المتغير ahmed على أنه عدد صحيح وأعطيناه القيمه 1

double
تستخدم هذه الكلمة لتعريف متغير على أنه رقم عشري
مثال:
كود PHP:
double Lots = 1.5;

عرفنا المتغير Lots على أنه عدد عشري

string
تستخدم هذه الكلمة المحجوزه لتعريف متغير على أنه سلسلة نصيه أو كلمه ويجب كتابة هذه الكلمة بين علامتي تنصيص " "
مثال:
كود PHP:
string MM_Parameters = "---------- Money Management";

فقد عرفنا المتغير MM_Parameters على أنه متغير نصي ويحمل الكلمه أو الجمله
"---------- Money Management"

bool
تستخدم هذه الكلمة المحجوزه لتعريف متغير على أنه متغير منطقي يأخذ قيمتين فقط إما صح (true) أو خطأ (false)
مثال:
كود PHP:
bool Buy=false;
bool Sell=true
;

فمثلا إذا وضعت شرط في الإكسبرت إذا كانت قيمة Sell=true إفتح صفقة بيع
عندها سيقوم الإكسبرت بإختبار الشرط هل قيمة Sell=true فإذا كان صحيح سيقوم بالبيع

ويجب ملاحظة أن في نهاية كل سطر برمجي نقوم بوضع علامة الفاصله المنقوطه ;
وهي شيء أساسي يجب أن تكون موجوده في نهاية السطر البرمجي في لغة MQL

الجزء الثالث
تم تصغير هذه الصورة تلقائياً. أبعاد الصورة الحقيقي 1024*768 و بحجم 60KB.

وهو الداله init

كود PHP:
int init()
{
//----

//----
return(0
);
}

وكما أخبرنا سابقا فإن هذه الداله يتم إستدعائها مرة واحد عند بداية عمل الإكسبرت أو المؤشر وأحيانا كثيره لا يتم إستخدامها وتترك فارغه وليس بداخلها أية أوامر لذلك سنتركها حاليا

الجزء الرابع
كود PHP:
int deinit()
{
//----

//----
return(0
);
}

وهو الداله deinit
ويتم إستدعائها مرة واحد عند نهاية عمل الإكسبرت أو المؤشر وحذفه من الشارت


وبإذن الله في الدرس القادم سندخل مباشرة في الداله start

أي سؤال يرجى وضعه في هذا الموضوع
مناقشة دروس تعلم برمجة الإكسبرتات بالتطبيق المباشر

يتبع






رد مع اقتباس