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

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

اسلام العوامى 25-03-2016 01:22 AM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة محمد العمري (المشاركة 861959)
السلام علبكم

كيفك اخي اسلام بأذن الله تكون تمام؟

اخي انا حاليا اقوم ببرمجة مؤشر يعرض لي خصائص المنصة ومعلومات الحساب

لكن توقفت عند موضوع حيرني

اريد تخصيص خانة لأظهار اعلى عدد اوامر (مفتوحة ومعلقة في نفس الوقت) يسمح به البروكر كحد اقصى MaxOrders

ولكن لم اجد دالة لها


مثلا fxdd اقصى عدد اوامر فيها هو 100 امر ... اكتف تريد اقصى عدد اوامر في الحسابات الحقيقية هو 250 امر وفي الحسابات الديمو هو 500 امر .... شركة forex.com اقصى عدد اوامر مفتوح غير محدود

لدي اكسبيرد عرض فيه هذه الخانة لعرض اقصى عدد اوامر يسمح به البروكر ولاكني لا اعرف كيف قام المبرمج ببرمجتها ( يمكن هناك دالة مخصصة لل MaxOrders وانا لا اعرفها؟ )

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

الاولى
فتح عدد لا نهائي من الاوامر المعلقة البعيدة جدا كي لا تتفعل حتى يتوقف البروكر عن قبول اوامر جديدة ثم نحسب عدد الاوامر

الثانية
اسأل البروكر عن اقصى حد من الاوامريقبله

والطريقتين غير منطقيات .... ارجو افادتي

،،،وعليكم السلام ورحمة الله وبركاته،،،

،،،اهلا بك اخي محمد ، معرفة اقصي عدد صفقات ممكن فتحه علي منصة يكون عن طريق الكود التالي،،،

كود:

long y = AccountInfoInteger(ACCOUNT_LIMIT_ORDERS);
،،،تحياتي،،،

محمد العمري 26-03-2016 05:12 AM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة اسلام العوامى (المشاركة 862002)


،،،وعليكم السلام ورحمة الله وبركاته،،،

،،،اهلا بك اخي محمد ، معرفة اقصي عدد صفقات ممكن فتحه علي منصة يكون عن طريق الكود التالي،،،

كود:

long y = AccountInfoInteger(ACCOUNT_LIMIT_ORDERS);
،،،تحياتي،،،


هل هذا الامر يعرض اقصى اوامر مفتوحة + معلقة؟

وكيف يمكنني جعل المؤشر يعرض امام خانة MaxOrders كلمة Unlimited اذا كان الحد الاقصى لعدد الاوامر التي يمكن فتحها على المنصة غير محدود مثل منصة FOREX.COM ؟

اسلام العوامى 26-03-2016 01:02 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة محمد العمري (المشاركة 862128)
هل هذا الامر يعرض اقصى اوامر مفتوحة + معلقة؟

وكيف يمكنني جعل المؤشر يعرض امام خانة MaxOrders كلمة Unlimited اذا كان الحد الاقصى لعدد الاوامر التي يمكن فتحها على المنصة غير محدود مثل منصة FOREX.COM ؟

،،،نعم هذا الامر يعرض اقصي عدد للوامر المفتوحة والمعلقة ، وبالنسبة للسؤال الثاني يمكن ان تقوم بتطبيق الكود الذي تم ارفاقه سابقا علي المنصة المذكورة ومعرفة الناتج ثم وضع جملة شرطية اذا كان الناتج يساوي هذه القيمة يتم كتابة unlimited واذا كان لا يساويها يتم كتابة قيمة الناتج،،،

،،،تحياتي،،،

محمد العمري 27-03-2016 04:54 AM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة اسلام العوامى (المشاركة 862157)


،،،نعم هذا الامر يعرض اقصي عدد للوامر المفتوحة والمعلقة ، وبالنسبة للسؤال الثاني يمكن ان تقوم بتطبيق الكود الذي تم ارفاقه سابقا علي المنصة المذكورة ومعرفة الناتج ثم وضع جملة شرطية اذا كان الناتج يساوي هذه القيمة يتم كتابة unlimited واذا كان لا يساويها يتم كتابة قيمة الناتج،،،

،،،تحياتي،،،

شكرا لك اخ اسلام ... تم عمل المطلوب بنجاح

الان سؤال اخر بعد اذنك

اريد عرض الستوب اوت المنصة (Margin SO) ... (المارجن اوت ليفل)

تعلم ان لكل شركة (المارجن اوت ليفل) عند وصول المارجن لفل لها تستقبل المارجن كول

سؤالي هو هل يوجد دالة مخصصة لعرض المارجن اوت لفل للبروكر ؟

كود عرض مارجن اوت لفل البروكر ؟

اسلام العوامى 27-03-2016 09:36 AM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة محمد العمري (المشاركة 862272)
شكرا لك اخ اسلام ... تم عمل المطلوب بنجاح

الان سؤال اخر بعد اذنك

اريد عرض الستوب اوت المنصة (Margin SO) ... (المارجن اوت ليفل)

تعلم ان لكل شركة (المارجن اوت ليفل) عند وصول المارجن لفل لها تستقبل المارجن كول

سؤالي هو هل يوجد دالة مخصصة لعرض المارجن اوت لفل للبروكر ؟

كود عرض مارجن اوت لفل البروكر ؟

،،،اهلا اخي محمد ، يتم استخدام الكود التالي،،،

كود:

AccountInfoDouble(ACCOUNT_MARGIN_SO_SO);

boto1199 01-04-2016 09:43 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
السلام عليكم استاذ اسلام لو سمحت عندي سؤالين من خلال الصور المرفقة ارجو المساعدة ولك جزيل الشكر اخي . السؤال الاول كيف اضاعف السعر بهذا الاكسبرت بالاعدادات الارقام الموجودة هي 0.02 هل هي عشرين سنت ؟ و0.2 هل هي اثنين دولار؟ الرجاء الافادة وكيف اعدل لمضاعفة السعر وهذه صورته

http://www.4shared.com/download/RkoX...d163e6bc15a96d
االسؤال الثاني مثله لاكسبرت فاب تيربو 0.1 هل هذا لوت واحد دولار واذا لا كيف اعدل عليه ليتضاعف السعر وشكرا استاذي الكريم للمساعدة هذه الصورة الثانية والله يجزيك الخير ويرحم والديك
http://www.4shared.com/download/J5UZ...4142971f5ca96d

raame 02-04-2016 05:24 AM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
السلام عليكم ورحمه الله وبركاتة

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

اسلام العوامى 02-04-2016 09:46 AM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة raame (المشاركة 863601)
السلام عليكم ورحمه الله وبركاتة

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

،،،وعليكم السلام ورحمة الله وبركاته،،،

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

كود:

double MaxLot = 2.0;

if(Lots>=MaxLot){Lots=FirstLot;}

،،،تحياتي،،،

raame 02-04-2016 01:00 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
بارك الله فيك على سرعة الرد
قمت بنسخ ما كتبت
لكن يعطيني خطا على كلمة فيرست لوت FirstLot

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

اسلام العوامى 02-04-2016 01:13 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة raame (المشاركة 863622)
بارك الله فيك على سرعة الرد
قمت بنسخ ما كتبت
لكن يعطيني خطا على كلمة فيرست لوت FirstLot

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

،،،اهلا اخي الفاضل ، first lot اكتب مكانها اسم المتغير الموجود لديك في الاكسبيرت والذي يعبر عن لوت البداية ، و Maxlot متغير يتم اضافته في بداية الاكسبيرت في global area ، والجملة الشرطية يتم وضعها قبل شرط فتح الصفقة مباشرة،،،

،،،تحياتي،،،

raame 06-04-2016 04:10 AM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
بارك الله فيك وجزاك الله كل خير

ماهو الشرط بعد تحقيق هدف اليوم ان يتوقف الاكسبريت عن العمل لليوم التالي ؟؟

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


كيف اجعل الاكسبريت ان يتوقف ساعة محددي في النهار ويلغي جميع العقود المفتوحه ويرجع نشاطه بعد انتهاء الساعه المحددي؟؟

اسلام العوامى 06-04-2016 11:16 AM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة raame (المشاركة 864349)
بارك الله فيك وجزاك الله كل خير

ماهو الشرط بعد تحقيق هدف اليوم ان يتوقف الاكسبريت عن العمل لليوم التالي ؟؟

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


كيف اجعل الاكسبريت ان يتوقف ساعة محددي في النهار ويلغي جميع العقود المفتوحه ويرجع نشاطه بعد انتهاء الساعه المحددي؟؟

،،،اهلا بك اخي الفاضل ، بالنسبة لاول سؤال يتم عمل متغير من النوع datetime ويتم تخزين وقت شمعة اليوم الحالي فيه،،،
كود:

time0=iTime(Symbol(),PERIOD_D1,0);
،،،ثم يتم وضع جملة شرطية في اول الكود ، اذا تحقق الهدف وكان المتغير الجديد يساوي وقت شمعة اليوم الحالي لا يكمل الاكسبيرت،،،

كود:

if(time0==iTime(Symbol(),PERIOD_D1,0)){return(0);}
،،،بالنسبة للسؤال الثاني ، يتم عمل متغير من النوع bool ويأخذ القيمة true في وظيفة oninti ،ثم يضاف لكود تنفيذ الشرط ان قيمة هذا المتغير يجب ان تكون true ، ثم يأخذ المتغير القيمة false بعد تنفيذ الشرط،،،

،،،بالنسبة للسؤال الثالث ، يتم وضع الجملة التالية في اول الكود،،،

كود:

if(TimeCurrent()>=StringToTime("4:00")&&TimeCurrent()<=StringToTime("5:00")){return(0);}
،،،تحياتي،،،

eamn 08-04-2016 03:40 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
مرحبا اخ اسلام
انا عضو جديد في المنتدى اطلعت على دورة البرمجة الخاصة بالاكسبريتات
ونفذت الاكسبريت الخاص الذي أنت عملته على تقاطع الموفنجات ولكن عندما اضغط compile تظهر لي الرسالة التالية "Ordersend error 130"
ولاتظهر أي أخطاء أخرى ما الحل وشكرا لك

اسلام العوامى 08-04-2016 04:35 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة eamn (المشاركة 864768)
مرحبا اخ اسلام
انا عضو جديد في المنتدى اطلعت على دورة البرمجة الخاصة بالاكسبريتات
ونفذت الاكسبريت الخاص الذي أنت عملته على تقاطع الموفنجات ولكن عندما اضغط compile تظهر لي الرسالة التالية "Ordersend error 130"
ولاتظهر أي أخطاء أخرى ما الحل وشكرا لك

،،،اهلا بك اخي الفاضل ، الرجاء ارفاق الكود للاطلاع عليه وتحديد الخطأ،،،
،،،تحياتي،،،

eamn 08-04-2016 11:21 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
لم أفهم مالمقصود بالكود ولكن تظهر لي الرسالة التالية
return value of 'OrderSend' should be checked macrossea.mq4 68 2




eamn 08-04-2016 11:33 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
هذا رابط الاكسبرت http://www.fx-arabia.com/vb/uploaded...1460147467.mq4

raame 09-04-2016 04:36 AM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
بارك الله فيك اخ اسلام على ما تقوم به من مجهود

انا اعمل على اكسبرت عن طريق المضاعفات
اريد من الاكسبريت في حال تم تحقيق هدف اليوم على ربح ان يتوقف لليوم التالي
لقد ارففت لي شرط لكن الشرط يقوم بفتح صفقه واحده يوميه
if(time0==iTime(Symbol(),PERIOD_D1,0)){return(0);}
........................

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

اسلام العوامى 09-04-2016 09:55 AM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
1 مرفق
اقتباس:

المشاركة الأصلية كتبت بواسطة eamn (المشاركة 864852)
لم أفهم مالمقصود بالكود ولكن تظهر لي الرسالة التالية
return value of 'OrderSend' should be checked macrossea.mq4 68 2




اقتباس:

المشاركة الأصلية كتبت بواسطة eamn (المشاركة 864853)

،،،هذه الرسالة تنبيه ولاتؤثر علي عمل الاكسبيرت ولكن يتم التخلص منها بإسناد قيمة الوظيفة الي متغير من النوع bool ، مثل المرفق،،،

،،،تحياتي،،،

اسلام العوامى 09-04-2016 10:03 AM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة raame (المشاركة 864868)
بارك الله فيك اخ اسلام على ما تقوم به من مجهود

انا اعمل على اكسبرت عن طريق المضاعفات
اريد من الاكسبريت في حال تم تحقيق هدف اليوم على ربح ان يتوقف لليوم التالي
لقد ارففت لي شرط لكن الشرط يقوم بفتح صفقه واحده يوميه
if(time0==iTime(Symbol(),PERIOD_D1,0)){return(0);}
........................

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

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

كود:

double Last_Order_pro()
{
  datetime d =0;
  double xt =0;
  int total  = OrdersHistoryTotal();
 
  for (int cnt = 0 ; cnt <= total ; cnt++)
  {
    if(OrderSelect(cnt,SELECT_BY_POS,MODE_HISTORY))
    if (OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)
    {
    if (OrderOpenTime()>d) {d=OrderOpenTime(); xt=OrderProfit();}
    }
  }
  return(xt);
}

كود:

if(Last_Order_pro()>0&&time0==iTime(Symbol(),PERIOD_D1,0)){return(0);}

eamn 09-04-2016 03:48 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
لكن عندما افحص الاكسبرت في الميتاتريدر لا يفتح أي صفقةمهما كان نوع العملة أو الفريم الذي اعمل عليه وتظهر الرسالةالتالية في (journal)
( ma USDJPY,M1: OrderSend error 130 )
اظن لدي نفس المشكلة التي ظهرت لك في الفيديو العاشر

اسلام العوامى 09-04-2016 07:53 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
1 مرفق
اقتباس:

المشاركة الأصلية كتبت بواسطة eamn (المشاركة 864900)
لكن عندما افحص الاكسبرت في الميتاتريدر لا يفتح أي صفقةمهما كان نوع العملة أو الفريم الذي اعمل عليه وتظهر الرسالةالتالية في (journal)
( ma USDJPY,M1: OrderSend error 130 )
اظن لدي نفس المشكلة التي ظهرت لك في الفيديو العاشر

،،،هذه المشكلة لها اكثر من سبب في كود الاكسبيرت ، راجع التعديلات المرفقة وبانتظار اي سؤال منك،،،

،،،تحياتي،،،

raame 09-04-2016 08:46 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة اسلام العوامى (المشاركة 864872)


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

كود:

double Last_Order_pro()
{
  datetime d =0;
  double xt =0;
  int total  = OrdersHistoryTotal();
 
  for (int cnt = 0 ; cnt <= total ; cnt++)
  {
    if(OrderSelect(cnt,SELECT_BY_POS,MODE_HISTORY))
    if (OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)
    {
    if (OrderOpenTime()>d) {d=OrderOpenTime(); xt=OrderProfit();}
    }
  }
  return(xt);
}

كود:

if(Last_Order_pro()>0&&time0==iTime(Symbol(),PERIOD_D1,0)){return(0);}



بارك الله فيك
هاذا ما ابحث عنه
ارجو منك ان تكتب لي بي مثال كيف اضيف ذالك على الاكسبريت ان كان لديك اكسبريت جاهز بنفس الصيغه ارجو ارفاقه من اجل التعلم كيف تكتب تلك الشروط اين توضع

جزاك الله كل خير ارجو ان لا اكون اثقلت عليك

اسلام العوامى 10-04-2016 11:02 AM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة raame (المشاركة 864939)
بارك الله فيك
هاذا ما ابحث عنه
ارجو منك ان تكتب لي بي مثال كيف اضيف ذالك على الاكسبريت ان كان لديك اكسبريت جاهز بنفس الصيغه ارجو ارفاقه من اجل التعلم كيف تكتب تلك الشروط اين توضع

جزاك الله كل خير ارجو ان لا اكون اثقلت عليك

،،،اهلا بك اخي الفاضل ، اول كود يتم وضعه في نهاية كود الاكسبيرت ، والسطر الثاني يتم وضعه في بداية وظيفة Ontick،،،

،،،تحياتي،،،

eamn 10-04-2016 07:45 PM

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

eamn 12-04-2016 02:53 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
1 مرفق
شكرا لك اخ اشلام وبارك الله فيك
اصبح الاكسبرت يفتح الصفقات ولكن هناك مشكلة صغيرة إن الكود ( Orderstotal()==0) يحددعدد الصفقات بواحدة و إذا حدثت فرصة لصفقة جديدة لايفتح هذه الصفقة إذا لم تكن الصفقة السابقة قد أغلقت

raame 12-04-2016 04:21 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
السلام عليكم ورحمه الله

بارك الله فيك اخ اسلام

عندي شرط اريد من الاكسبريت ان يبيع مثلا بعد ان يرتفع السوق مقدار 50 نقطه
المشكله كل ما يرتفع السوق 50 نقطه يبيتع وبعد ان يرتفع 100 نقطه يبيع
ارجو التصيحيح اين المشكله بشرط
if (Close[1]>Open[1] && Ask+(Close[1]-0.0050)){

اسلام العوامى 12-04-2016 09:16 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
1 مرفق
اقتباس:

المشاركة الأصلية كتبت بواسطة eamn (المشاركة 865428)
شكرا لك اخ اشلام وبارك الله فيك
اصبح الاكسبرت يفتح الصفقات ولكن هناك مشكلة صغيرة إن الكود ( Orderstotal()==0) يحددعدد الصفقات بواحدة و إذا حدثت فرصة لصفقة جديدة لايفتح هذه الصفقة إذا لم تكن الصفقة السابقة قد أغلقت

،،،تم التعديل،،،

،،،تحياتي،،،

اسلام العوامى 12-04-2016 09:20 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة raame (المشاركة 865454)
السلام عليكم ورحمه الله

بارك الله فيك اخ اسلام

عندي شرط اريد من الاكسبريت ان يبيع مثلا بعد ان يرتفع السوق مقدار 50 نقطه
المشكله كل ما يرتفع السوق 50 نقطه يبيتع وبعد ان يرتفع 100 نقطه يبيع
ارجو التصيحيح اين المشكله بشرط
if (Close[1]>Open[1] && Ask+(Close[1]-0.0050)){

،،،وعليكم السلام ورحمة الله وبركاته،،،

،،،اهلا بك اخي الفاضل ، الكود المكتوب لاعلاقة له بالمطلوب ، الرجاء تحديد اذا كان المطلوب فتح صفقة مرة واحده بعد تحرك السعر 50 نقطة ام كل 50 نقطة يفتح صفقة وهل البداية من السعر الحالي ام من صفقة مفتوحة،،،

،،،تحياتي،،،

raame 12-04-2016 09:32 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة اسلام العوامى (المشاركة 865513)


،،،وعليكم السلام ورحمة الله وبركاته،،،

،،،اهلا بك اخي الفاضل ، الكود المكتوب لاعلاقة له بالمطلوب ، الرجاء تحديد اذا كان المطلوب فتح صفقة مرة واحده بعد تحرك السعر 50 نقطة ام كل 50 نقطة يفتح صفقة وهل البداية من السعر الحالي ام من صفقة مفتوحة،،،

،،،تحياتي،،،

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

raame 13-04-2016 07:36 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
السلام عليكم ورحمة الله

ارجو من الاخ اسلام شرح تلك النقطه بشي من التفصيل كيف تكتب

،،،بالنسبة للسؤال الثاني ، يتم عمل متغير من النوع bool ويأخذ القيمة true في وظيفة oninti ،ثم يضاف لكود تنفيذ الشرط ان قيمة هذا المتغير يجب ان تكون true ، ثم يأخذ المتغير القيمة false بعد تنفيذ الشرط،،،

،،،بالنسبة للسؤال الثالث ، يتم وضع الجملة التالية في اول الكود،،،


انا عندي شروط اثنين واحد بيع واحد شراء اريد ان ينفذ الشراء ولا يكرر فتح الصفقات الشراء وبعد الانتهاء ينفذ شرط البيع ولا يكرر الصفقه بيع

raame 19-04-2016 03:52 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
السلام عليكم ورحمة الله وبركاتة

اخ اسلام
ماهو الكود

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

اسلام العوامى 19-04-2016 05:53 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة raame (المشاركة 866807)
السلام عليكم ورحمة الله وبركاتة

اخ اسلام
ماهو الكود

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


،،،وعليكم السلام ورحمة الله وبركاته،،،

،،،اهلا بك اخي الفاضل ، يتم عمل متغيران من النوع datetime ،،،

كود:

datetime timeb,times;
،،،ثم في شرط فتح صفقة الشراء يتم اضافة الكود التالي،،،

كود:

if(timeb!=iTime(Symbol(),PERIOD_D1,0))
،،،ثم بعد امر فتح صفقة الشراء يتم كتابة الكود التالي،،،

كود:

timeb=iTime(Symbol(),PERIOD_D1,0)
،،،ويتم عمل نفس الخطوات مع صفقة البيع ولكن باستخدام المتغير الاخر times،،،

،،،تحياتي،،،


raame 21-04-2016 09:03 AM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
بارك الله فيك وجزيت خير الجزاء

كيف يكتب الشرط
في حال اغلقت الشمعه رقم واح صاعده ان يشتري بعد تراجع السوق 20 نقطه او اكبر من 20 نقطه على شمعة صفر

ابراهيم خير 23-04-2016 12:53 AM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
السلام عليكم
مجهود رائع
ماهو كود ( بعد مرور 20% من وقت الشمعة اذا كانت الشمعة صاعدة ياخذ شراء واذاكانت هابطة ياخذ بيع )
وايضا كيفية جعل الاكسبيرت يحسب السبريد ويضيفة على التيك بروفت والستوب لوز

eamn 23-04-2016 01:25 AM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
مرحبا أخي اسلام
اريد أن أسال هل يمكن أفحص الاكسبرت من نوع(mql4) في منصة أخرى غير الميتاتريدر
هل توجد طريقة ليعمل الاكسبرت دون اتصال بالإنترنت (حتى عندما أطفأ الحاسوب)
لأنه هناك منصات مثلا تنفذ أمر (trailing stop) حتى لو كان لايوجد اتصال بالنت أما في الميتاتريدر يجب أن تبقى المنصة مفتوحة ومتصلة بالنت

eamn 23-04-2016 08:28 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
مرحبا أخي اسلام
اريد أن أسال هل يمكن أفحص الاكسبرت من نوع(mql4) في منصة أخرى غير الميتاتريدر
هل توجد طريقة ليعمل الاكسبرت دون اتصال بالإنترنت (حتى عندما أطفأ الحاسوب)
لأنه هناك منصات مثلا تنفذ أمر (trailing stop) حتى لو كان لايوجد اتصال بالنت أما في الميتاتريدر يجب أن تبقى المنصة مفتوحة ومتصلة بالنت

eamn 24-04-2016 02:43 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة اسلام العوامى (المشاركة 865512)


،،،تم التعديل،،،

،،،تحياتي،،،

مرحبا أخ اسلام
أريد أن أجرب الاكسبرت بحيث يعمل طوال اليوم ولا أستطيع (بسبب انقطاع النت مثلا )
هل توجد منصة
تستطيع تشغيل الاكسبرت بشكل دائم دون اتصال بالنت ( منصة ويب , منصة سيركس , أو أي منصة أخرى)

raame 15-05-2016 01:59 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
السلام عليكم ورحمة الله وبركاتة

اسعد الله اوقاتك اخي اسلام

ماهو الشرط ان اجعل الاكسبريت ينفذ على السعر Step دون زياده او نفقصان على نفس عدد النقاط الموضع مسبقا

با رك الله فيك

اسلام العوامى 15-05-2016 02:29 PM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
اقتباس:

المشاركة الأصلية كتبت بواسطة raame (المشاركة 870281)
السلام عليكم ورحمة الله وبركاتة

اسعد الله اوقاتك اخي اسلام

ماهو الشرط ان اجعل الاكسبريت ينفذ على السعر Step دون زياده او نفقصان على نفس عدد النقاط الموضع مسبقا

با رك الله فيك

،،،وعليكم السلام ورحمة الله وبركاته،،،

،،،اهلا بك اخي الفاضل ، يجب اولا عمل وظيفة خارجية لمعرفة سعر افتتاح اخر صفقة تم تفعيلها،،،

كود:


double lastOpenPrice(){
  datetime d =0;
  double xt =0;
  int total  = OrdersTotal();
 
  for (int cnt = 0 ; cnt <= total ; cnt++)
  {
    if(OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))
    if (OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)
    {
    if (OrderOpenTime()>d) {d=OrderOpenTime(); xt=OrderOpenPrice();}
    }
  }
  return(xt);
}

،،،ثم يتم كتابة الشرط التالي قبل امر فتح الصفقة الجديدة،،،

كود:


if(Ask==lastOpenPrice()+(Step*Point)){
// امر فتح الصفقة
}

،،،تحياتي،،،

بهاء الدين 04-06-2016 10:46 AM

رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
 
السلام عليكم
في ىالمحاضرة 9 من دروس البرمجة الاحترافية حاولت التطبيق على المنصة البرنامج لكن البرنامج لا يفتح صفقات و يظهر الخطا130 .كود البرنامج كما يلي .ارجو المساعدة من الاخوة المبرمجين لمعرفة الخطا بالتحديد

extern string F = "fast ma setting";
extern int fperiod = 10;
extern int fshift = 0;
extern int fmethod = 0;
extern int fapplied = 0 ;
extern string S = "slow ma setting";
extern int speriod = 50;
extern int sshift = 0;
extern int smethod = 0;
extern int sapplied = 0;
extern string e = "ea managment";
extern int Takeproft = 50;
extern int Stoploss = 20;
extern double Lot = 0.1;
extern int Magic = 112255;
int T;


//--------------------------------------------------------------------------------------------------------------
int start()
{
double tiksize = MarketInfo(Symbol(),MODE_TICKSIZE);

if(tiksize== 0.00001||0.001)
T = tiksize*10;
else
T=tiksize;
double fmalast = iMA(Symbol(),0,fperiod,fshift,fmethod,fapplied,2);
double fmanow = iMA(Symbol(),0,fperiod,fshift,fmethod,fapplied,1);
double smalast = iMA(Symbol(),0,speriod,sshift,smethod,sapplied,2);
double smanow = iMA(Symbol(),0,speriod,sshift,smethod,sapplied,1);
if(fmalast<smalast&&fmanow>smanow)

OrderSend(Symbol(),OP_BUY,Lot,Ask,3,Ask-(Stoploss*T),Ask+(Takeproft*T),NULL,Magic,0,clrAli ceBlue);

if(fmalast>smalast&&fmanow<smanow)

OrderSend(Symbol(),OP_SELL,Lot,Bid,3,Bid+(Stoploss *T),Bid-(Takeproft*T),NULL,Magic,0,clrRed);


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


الساعة الآن 03:42 AM

Powered by vBulletin® Copyright ©2000 - 2024

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