اف اكس ارابيا..الموقع الرائد فى تعليم فوركس Forex

اف اكس ارابيا..الموقع الرائد فى تعليم فوركس Forex (https://fx-arabia.com/vb/index.php)
-   منتدى المؤشرات و الاكسبيرتات (https://fx-arabia.com/vb/forumdisplay.php?f=6)
-   -   ورشة التعليم والتعلم لبرمجة الأكسبيرتات (https://fx-arabia.com/vb/showthread.php?t=15633)

الهذلي 02-11-2011 01:10 AM

ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
السلام عليكم ورحمة الله وبركاته

اخواني اعضاء منتديات اف اكس اريبيا اولاً احب اشكر ادارة هذا المنتدى الرائع على ما قدموه من معلومات

وقد تعلمت من دورة الاخ العزيز واستاذي الاستاذ حكيم

فأحببت ان اقوم بهذه الورشه التي اسأل الله تعالى ان يعنني على ايصال المعلومه الى اخواني وان ينفع بها واحببت ان اعرض ما لدي ولا ادعي الخبره ولكن انا مبتدى ولعل الاخوان ان يشاركونا فيها وكلاً

بما يعرفه حتى نصل في نهاية الورشه وقد تعلمنا وعلمنا

وهذه الورشه راح تكون لتصميم الاكسبيرتات

وسوف نقوم بعمل اكسبيرت يدخل شراء اذا الشمعة اخترقة موفننج 200 صعود و هبوط

وهذا الكود الذي سيتم العمل عليه

[PHP]//+------------------------------------------------------------------+
//| ART top.mq4 |
//| mnaber |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "mnaber"
#property link "http://www.metaquotes.net"

//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+

int init()

{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----

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

int start()
{
هنا نكتب اوامر الاكسبيرت والاستراتيجيات

return(0);
}
//+------[/PHP]

الهذلي 02-11-2011 01:28 AM

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

[PHP]if(iClose(0,0,3)>iOpen(0,0,3)){if(iClose(0,0,3)>iM A(0,0,200,0,0,0,3)&&iOpen(0,0,2)>iMA(0,0,200,0,0,0 ,3)&&iClose(0,0,2)>iOpen(0,0,2)
iLow(0,0,2)<=iMA(0,0,200,0,0,0,3)&&iOpen(0,0,1)>iC lose(0,0,2)&&iClose(0,0,1)>iOpen(0,0,1))}[/PHP]

نأتي الى شرح الاوامر اولاً

هنا نطلب منه ان يرا هل اغلاق الشمعة رقم 3 اكبر من افتتاح الشمعه رقم 3 اذا كان الشرط متوافق ينتقل الاكسبيرت الى التعليمات الاخر

[PHP]if(iClose(0,0,3)>iOpen(0,0,3))[/PHP]

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

[PHP]{if(iClose(0,0,3)<iMA(0,0,200,0,0,0,3)&&iOpen(0,0, 2)>iMA(0,0,200,0,0,0,3)&&iClose(0,0,2)>iOpen(0,0,2 )
iLow(0,0,2)<=iMA(0,0,200,0,0,0,3)&&iOpen(0,0,1)>iC lose(0,0,2)&&iClose(0,0,1)>iOpen(0,0,1))}[/PHP]


ملاحظه ان الشرط الاول انتها


[PHP]if(iClose(0,0,3)>iOpen(0,0,3))[/PHP]

ويجب فتح { }

هذه العلامه وهنا كما قلنا الفلتره قبل الصفقه

الهذلي 02-11-2011 01:38 AM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
[PHP] { هنا الفلتره وكل الشروط }[/PHP]

ندخل الى الشرط الاول ومعلوم ان الشرط لابد ان يبتدي بي if()

[PHP]if(iClose(0,0,3)>iMA(0,0,200,0,0,0,3))[/PHP]

طلبنا ان يكون الاغلاق في الشمعه رقم 3 اكبر من الموفننج 200 في الشمعة رقم 3

&& وهذه العلامه تعني و في اللغة العربيه يعني ان الاكسبيرت لازم تتوفر فيه الشرط الاول و الشرط الثاني و الشرط الثالث وهكذا

[PHP]iOpen(0,0,2)>iMA(0,0,200,0,0,0,3)[/PHP]

وهنا نطلب منه ان يكون الافتتاح الشمعة 2 اكبر من الموفننج 200 في الشمعه رقم 3

الهذلي 02-11-2011 01:44 AM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
[PHP]iClose(0,0,2)>iOpen(0,0,2)[/PHP]

وهنا نطلب ان يكون الاغلاق في الشمعه رقم 2 اكبر من الافتتاح في الشمعه رقم 2

[PHP]iLow(0,0,2)<=iMA(0,0,200,0,0,0,3)[/PHP]

وهنا لكي نضمن اختبار الشمعه للموفننج طلبنا من ان يكون للو الشمعه اصغر من او يساوي الموفننج 200 في الشمعه رقم 3

[PHP]iOpen(0,0,1)>iClose(0,0,2)[/PHP]

وان يكون الافتتاح في الشمعه رقم 1 اكبر من الاغلاق في الشمعه رقم 2

[PHP]iClose(0,0,1)>iOpen(0,0,1)[/PHP]

وهنا ان تكون الشمعه صاعده اي تعطي ان الترند صاعد

شرطنا ان يكون الاغلاق في الشمعه رقم 1 اكبر من الافتتاح في الشمعه رقم 1

__Dizel__ 02-11-2011 01:47 AM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
مجهود رائع جدا منك أخي الكريم

واصل إبداعك وإن شاء الله إلى الأمام دائما

والله المستعان

الهذلي 02-11-2011 01:57 AM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
هنا انتهينا من وضع الشروط والفلتره قبل الدخول في الصفقه وهذه هي مجموعة الشروط التي كتبناها

[PHP]{if(iClose(0,0,3)<iMA(0,0,200,0,0,0,3)&&iOpen(0,0, 2)>iMA(0,0,200,0,0,0,3)&&iClose(0,0,2)>iOpen(0,0,2 )
iLow(0,0,2)<=iMA(0,0,200,0,0,0,3)&&iOpen(0,0,1)>iC lose(0,0,2)&&iClose(0,0,1)>iOpen(0,0,1))}[/PHP]

والان نأتي الى اعطا اوامر الدخول اذا توافقت كل الشروط وتكون داخل { }

[PHP]OrderSend(Symbol(), OP_BUY,Lot, Ask, slippage, StopLoss, TakeProfit, "", magic, 0, Green);[/PHP]

OrderSend : امر الارسال
Symbol() : تبقى كما هي
OP_BUY : نوع الصفقه
Lot : للو
Ask : السعر الحالي للسوق
slippage : تكون 3 للمنصات اربع خانات
وتكون 30 للمنصات خمس خانات
StopLoss : الاستوب
TakeProfit : الهدف
magic : الرقم السحري وتضع فيه ارقام عشوائيه
Green : وهذا لون السهم واختر اللون الذي يعجبك

الهذلي 02-11-2011 02:07 AM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
[PHP]OrderSend(Symbol(), OP_BUY,1, Ask, 3, Ask-0.0020,Ask+0.0020, "",1236332, 0, Green);[/PHP]

نحن وضعنا شروط وكانت شروط لصفقة شراء لذلك لابد ان نضع OP_BUY
واذا اردنا صفقة بيع نضع OP_SELL

وهنا شراء لذلك OP_BUY

اللوت : 1
Ask : هنا تعني السعر الحالي لسوق
ولو اردنا ان ندخل صفقة بيع نضع بدلها Bid
3 : تم شرحها
Ask-0.0020 : وتعني من سعر دخول الصفقه ضع الاستوب ناقص عشرين

Ask+0.0020 :هما عكس السابقه

1236332 : الرقم السحري
Green : لو سهم الصفقه

الهذلي 02-11-2011 02:12 AM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
وهذه الامر كلها مجموعه في صفقة الشراء

[PHP]
if(iClose(0,0,3)>iOpen(0,0,3)){if(iClose(0,0,3)<iM A(0,0,200,0,0,0,3)&&iOpen(0,0,2)>iMA(0,0,200,0,0,0 ,3)&&iClose(0,0,2)>iOpen(0,0,2)
iLow(0,0,2)<=iMA(0,0,200,0,0,0,3)&&iOpen(0,0,1)>iC lose(0,0,2)&&iClose(0,0,1)>iOpen(0,0,1))OrderSend( Symbol(), OP_BUY,1, Ask, 3, Ask-0.0020,Ask+0.0020, "",1236332, 0, Green);}[/PHP]

ونضيف داله جديده وهي دالة OrdersTotal()

ونجعلها مساويه لصفر حتى لا يفتح صفقه وهنا صفقه مفتوحه

OrdersTotal()==0

وهنا الكود بعد اضافة الداله

[PHP]if(iClose(0,0,3)>iOpen(0,0,3)){if(iClose(0,0,3)<iM A(0,0,200,0,0,0,3)&&iOpen(0,0,2)>iMA(0,0,200,0,0,0 ,3)&&iClose(0,0,2)>iOpen(0,0,2)
iLow(0,0,2)<=iMA(0,0,200,0,0,0,3)&&iOpen(0,0,1)>iC lose(0,0,2)&&iClose(0,0,1)>iOpen(0,0,1)&&OrdersTot al()==0)OrderSend(Symbol(), OP_BUY,1, Ask, 3, Ask-0.0020,Ask+0.0020, "",1236332, 0, Green);}
[/PHP]

الهذلي 02-11-2011 02:20 AM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
ونضع الان نفس الامر السابقه ولكن نعكسها

وهذه الامر للبيع

[PHP]if(iClose(0,0,3)<iOpen(0,0,3)){if(iClose(0,0,3)>iM A(0,0,200,0,0,0,3)&&iOpen(0,0,2)<iMA(0,0,200,0,0,0 ,3)&&iClose(0,0,2)<iOpen(0,0,2)
iLow(0,0,2)>=iMA(0,0,200,0,0,0,3)&&iOpen(0,0,1)<iC lose(0,0,2)&&iClose(0,0,1)<iOpen(0,0,1)&&OrdersTot al()==0)
OrderSend(Symbol(), OP_SELL,1, Bid, 3, Bid+0.0020,Bid-0.0020, "",1236332, 0, Red);}[/PHP]

OP_SELL : قلنا امر للبيع

Bid : سعر العرض

هنا صفقتنا بيع يعني ننا نريد ان ينزل السعر 20 نقطه حتى نحقق هدفنا ان الاستوب فهو يكون فوق سعر الدخول للصفقه

اذا الاستوب في البيع نضعه Bid+0.0020

والهدف في البيع نضعه Bid-0.0020

الى هنا انهيت انشاء الاكسبيرت واذا فيه اي استفسار او تعديل على ما قلت او زياده انا حاضر

وان شاء الله راح نزيد في هذه الورشه كيف نجلب مؤشرات حتى نكون استراتيجيه خاصه بنا

اخوكم الهذلي

الهذلي 02-11-2011 02:22 AM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
الاكسبيرت بعد الانتهى منه

[PHP]//+------------------------------------------------------------------+
//| ART top.mq4 |
//| mnaber |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "mnaber"
#property link "http://www.metaquotes.net"

//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+

int init()

{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----

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

int start()
{

if(iClose(0,0,3)>iOpen(0,0,3)){if(iClose(0,0,3)<iM A(0,0,200,0,0,0,3)&&iOpen(0,0,2)>iMA(0,0,200,0,0,0 ,3)&&iClose(0,0,2)>iOpen(0,0,2)
&&iLow(0,0,2)<=iMA(0,0,200,0,0,0,3)&&iOpen(0,0,1)> iClose(0,0,2)&&iClose(0,0,1)>iOpen(0,0,1)&&OrdersT otal()==0)
OrderSend(Symbol(), OP_BUY,1, Ask, 3, Ask-0.0020,Ask+0.0020, "",1236332, 0, Green);}

if(iClose(0,0,3)<iOpen(0,0,3)){if(iClose(0,0,3)>iM A(0,0,200,0,0,0,3)&&iOpen(0,0,2)<iMA(0,0,200,0,0,0 ,3)&&iClose(0,0,2)<iOpen(0,0,2)
&&iLow(0,0,2)>=iMA(0,0,200,0,0,0,3)&&iOpen(0,0,1)< iClose(0,0,2)&&iClose(0,0,1)<iOpen(0,0,1)&&OrdersT otal()==0)
OrderSend(Symbol(), OP_SELL,1, Bid, 3, Bid+0.0020,Bid-0.0020, "",1236332, 0, Red);}


return(0);
}
//+------------------------------------------------------------------+[/PHP]

ان شاء الله نكون وفقنا في الشرح

الهذلي 02-11-2011 02:27 AM

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

هذا ما احببت ان اطرحه فطرح انت ما تريد

الهذلي 02-11-2011 01:29 PM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
3 مرفق
اليوم معنا استراتيجيه تعتمد على المؤشرات

هذه صور لها

http://www.fx-arabia.com/vb/uploaded...1320229599.jpg

اذا توافقة المؤشرات على اللون الاحمر يدخل بيع واذا توافقة على الاخضر والازرق يدخل شراء

والمؤشرات المستخدمه في المرفقات

الهذلي 02-11-2011 01:35 PM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
الان نضع شرطنا الاول

[PHP]if(iClose(0,0,2)>iOpen(0,0,2))[/PHP]

وهو الاغلاق اكبر من الافتتاح يعني صعود

[PHP]iCustom(0,0,"Awesome",1,2)&&iCustom(0,0,"Awesome", 0,1)[/PHP]

هذه الداله تستخدم لجلب المؤشر من مجلد المؤشرات iCustom

0,0 هذه اكتبها كما هي لأن الصفر الاول يعبر من العمله والصفر الثاني يعبر عن الفريم المستخدم

واشترطنا ان يكون المؤشر Awesome في الشمعه رقم 2 احمر وفي الشمعه رقم 1 اخضر

الهذلي 02-11-2011 01:41 PM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
[PHP]&&[/PHP]

طبعاً لا ننسى هذه العلامه بين الشروط

[PHP]iCustom(0,0,"Trend Momentum",5,3,3,1,2)&&iCustom(0,0,"Trend Momentum",5,3,3,0,1)[/PHP]

اشترطنا ان يكون Trend Momentum بالاعدادات 5,3,3

في الشمعه رقم 2 احمر و في الشمعه رقم 1 يكون ازرق

الهذلي 02-11-2011 02:31 PM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
[PHP]&&iCustom(0,0,"Trend Strength",1,2)&&iCustom(0,0,"Trend Strength",0,1)[/PHP]

وهنا طلبنا ان يكون المؤشر Trend Strength في الشمعه 2 احمر وفي الشمعه 1 ازرق

وكذا نكون انتهينا من شروط الشراء وهذه هي مجموعه

[PHP]if(iClose(0,0,2)>iOpen(0,0,2)){if(iCustom(0,0,"Awe some",1,2)&&iCustom(0,0,"Awesome",0,1)&&iCustom(0, 0,"Trend Momentum",5,3,3,1,2)&&iCustom(0,0,"Trend Momentum",5,3,3,0,1)
&&iCustom(0,0,"Trend Strength",1,2)&&iCustom(0,0,"Trend Strength",0,1)&&OrdersTotal()==0)
OrderSend(Symbol(), OP_BUY,1, Ask, 3, Ask-0.0020,Ask+0.0020, "",1236332, 0, Green);}[/PHP]

الهذلي 02-11-2011 02:33 PM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
وهذه شروط البيع

[PHP]if(iClose(0,0,2)<iOpen(0,0,2)){if(iCustom(0,0,"Awe some",0,2)&&iCustom(0,0,"Awesome",1,1)&&iCustom(0, 0,"Trend Momentum",5,3,3,0,2)&&iCustom(0,0,"Trend Momentum",5,3,3,1,1)
&&iCustom(0,0,"Trend Strength",0,2)&&iCustom(0,0,"Trend Strength",1,1)&&OrdersTotal()==0)
OrderSend(Symbol(), OP_BUY,1, Ask, 3, Ask-0.0020,Ask+0.0020, "",1236332, 0, Green);}
[/PHP]

الهذلي 02-11-2011 02:34 PM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
[PHP]//+------------------------------------------------------------------+
//| ART top.mq4 |
//| mnaber |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "mnaber"
#property link "http://www.metaquotes.net"

//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+

int init()

{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----

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

int start()
{

if(iClose(0,0,2)>iOpen(0,0,2)){if(iCustom(0,0,"Awe some",1,2)&&iCustom(0,0,"Awesome",0,1)&&iCustom(0, 0,"Trend Momentum",5,3,3,1,2)&&iCustom(0,0,"Trend Momentum",5,3,3,0,1)
&&iCustom(0,0,"Trend Strength",1,2)&&iCustom(0,0,"Trend Strength",0,1)&&OrdersTotal()==0)
OrderSend(Symbol(), OP_BUY,1, Ask, 3, Ask-0.0020,Ask+0.0020, "",1236332, 0, Green);}


if(iClose(0,0,2)<iOpen(0,0,2)){if(iCustom(0,0,"Awe some",0,2)&&iCustom(0,0,"Awesome",1,1)&&iCustom(0, 0,"Trend Momentum",5,3,3,0,2)&&iCustom(0,0,"Trend Momentum",5,3,3,1,1)
&&iCustom(0,0,"Trend Strength",0,2)&&iCustom(0,0,"Trend Strength",1,1)&&OrdersTotal()==0)
OrderSend(Symbol(), OP_BUY,1, Ask, 3, Ask-0.0020,Ask+0.0020, "",1236332, 0, Green);}


return(0);
}
//+------------------------------------------------------------------+[/PHP]

هذه الاكسبيرت بعد الانتهاء من وضع الشروط فيه

علاء حمدان 05-11-2011 07:25 PM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
الله عليك
تسلم اخي الهذلي على جهدك المتميز

طيب يا غالي لو افترضنا اني عايز اعمل اكسبيرت بسيط
بيعتمد على اغلاق الشمعة الحالية
بمعني الشرط يكون ...

اذا اغلاق الشمعة الحالية اكبر من اغلاق الشمعة السابقة ضع امر معلق شراء ( فوق سعر الاغلاق بـ X نقطة )
اذا اغلاق الشمعة الحالية اقل من اغلاق الشمعة السابقة ادخل بيع ( تحت سعر الاغلاق بـ X نقطة )

اعتقد ان في الحالة دي الشمعة الحالية عند اغلاقها هتبقي رقم 1 وانا كنت ابتديت فيه بس وقفت والورشة هنا شجعتني اني ابتدي افكر من تاني
وبحيث ان الاكسبيرت هيبقي مراحل
يعني دي مرحلة وبعدها يتم دمجه بمؤشر وهكذا
حتي يكون التعلم على مراحل والعمل كذلك


واحل لايك وتحية لك اخي الهذلي

karimfotouh 05-11-2011 09:47 PM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
موضوع جميل جداا
ومعزره منى لانى اصلا معرفش صفحه الاوامر الى بنكتبها فبن برجاء الافداه
ومعلش انا لسه مبتدىء فى الموضوع ده يعنى معرفش عنو اى حاجه برجاء الايضاح ؟
والف شكر ياباشا

SCORP 09-11-2011 01:31 PM

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

حكيم 17-11-2011 05:29 AM

رد: ورشة التعليم والتعلم لبرمجة الأكسبيرتات
 
1 مرفق
السلام عليكم
كيف حالكم
الاخوة الكرام معذرة على التاخير
تفضلوا الاكسبيرت الرجاء تضعوا معه هذه المؤشرات الموضوعة في ملف indecators
مع المؤشرات في المتاتريدر

اي تغيير او استفسار مرحبا بكم


الساعة الآن 05:25 PM

Powered by vBulletin® Copyright ©2000 - 2025

جميع الحقوق محفوظة الى اف اكس ارابيا www.fx-arabia.com