نعم نعم كان خطا رياضياتي :doh:
شكرا جزيلاااا :eh_s(7):
Printable View
السلام عليكم ورحمة الله أستاذ أسامة :eh_s(7):
تمكنت من عمل إكسبريت لمؤشر THV Trix v6.01 (الأندكس 2 للشراء وغلق البيع ) و (الأندكس 3 للبيع وغلق الشراء)
وشروط الدخول و الخروجكود PHP:double A=iCustom(Symbol(),0,"THV Trix v6.01",2,1);
double A_Previous=iCustom(Symbol(),0,"THV Trix v6.01",2,2);
double B=iCustom(Symbol(),0,"THV Trix v6.01",3,1);
double B_Previous=iCustom(Symbol(),0,"THV Trix v6.01",3,2);
Comment("Green: ",(A)," Red: ",(B));
الإكسبرت يفتح معظم صفقاته بنجاح لاكن في بعض الأحيان يغلق صفقة الشراء قبل تحقق شروط البيع أو العكس أو يفتح أي صفقة قبل تحقق شروطهاكود PHP:if(A<5000 && A_Previous>5000 && (orderscnt(OP_BUY)<MaxOrders) )
if(B<5000 && B_Previous>5000 && (orderscnt(OP_SELL)<MaxOrders) )
-------
if (OrderType()==OP_BUY && OrderMagicNumber()==MagicNumber && (B<5000 && B_Previous>5000))
if (OrderType()==OP_SELL && OrderMagicNumber()==MagicNumber && (A<5000 && A_Previous>5000))
مثلا مرفق صورة توضيحية للصفقة رقم 8 دخل الإكسبريت في صفقة شراء ثم أغلقت قبل تحقق شروط البيع
:Emoticon1:
لا أعرف إن كانت المشكلة في المؤشر أم في الإكسبريت وأضفت خاصية Comment (فوق على اليمين) لأتأكد من صحة الشروط .....
أرجو من فضلك توضيح الخطأ وجزاك الله خيرا :eh_s(7):
وعليكم السلام ورحمة الله وبركاته
شروطك صحيحه لكن المؤشر أحيانا يعيد رسم آخر شمعتين دائما عندما تشك في مثل هذه الأخطاء قم بعمل فيجول باك تست وضع المؤشرات على الشارت وتابع مناطق الدخول
فمثل هذه الأخطاء تجعل المبرمج يظل يبحث ويكون الخطأ في النهايه من المؤشر نفسه
السلام عليكم أخي أسامه
مازال الإكسبيرت لا يفتح صفقات رغم تحقق الشروط و ليس هناك أي مشكله في خانة الجورنال أو الخبراء
أنا أقوم بإختبار الإكسبيرت الآن على الباري و عند تحقق الشروط أسمع صوت التنبيه ولكن لا يفتح الصفقه .. و قد جربت الإكسبيرت على منصه أخرى .
مرفق ملفين الجورنال و الخبراء و الإكسبيرت رجاء الإطلاع .
وجزاك الله خيرا .
سلام عليكم يا استاذ اسامه
رجاء التعديل على الاكسبيرت
MR.dollar_Ahmed920 EA RSI stoch V3.6.mq4
واضافه له خاصيه اقصى عدد لصفقات المضاعفات
مثلا اذا وضعت فى خانه اقصى عدد للمضاعفات 4
وكانMultiplier يساوى 2
فيفتح الصفقات على النحو التالى 1-2-4-8 وتكون اقصى مضاعفة هيا 8
وشكرا لك
تم تجربة الإكسبرت وفتح الصفقه بدون مشاكل وهذا ما أخبرتك به سابقا فلا يوجد في الإكسبرت مشكله تمنعه عن العمل
يجب ان تتأكد من أن البروكر يسمح بتشغيل الإكسبرتات
تأكد من أن الوجه مبتسم على الشارت
تأكد من أنك فعلت خيار Allow Live Trading عند تفعيل الإكسبرت على الشارت فربما يكون هو السبب
الملف المرفق 307858
شكرا جزيلا أخي أسامه
وأعتذر لأني أتعبتك معي
الإكسبيرت الآن يعمل وكان البرنامج لدي باللغه العربيه ووجدت أن المرادف ل allow live trading هو إتاحة التنبيهات وكنت أبحث عن كلمة السماح بالمناجره الحيه ,,,,
المهم أنه أصبح يعمل الآن و شكرا جزيلا أخي أسامه و بارك الله فيك .
إذا سمحت أخي كنت أود أن يقوم الإكسبيرت بعد غلق الصفقه بعدم فتح أي صفقات أخرى إلا بعد عدد معين من الشموع أو الساعات أو بشروط أخرى مثل تقاطع عكسي بين الخطين. بمعنى بعد غلق الصفقه مباشرة ينتظر الإكسبيرت ولا يبحث في شرط البيع والشراء إلا بعد إما عدد معين من الشموع أو أن يحدث تقاطع عكسي بين التنكن و الكيجن ووقتها يستطيع فتح الصفقات إذا تحقق شرط البيع و الشراء .
كيف أعبر عن هذا برمجيا و أين أضع الكود .
وشكرا جزيلا أخي العزيز .
مثال بعد مرور عدد شموع معينه يمكنك عمل داله لمعرفة توقيت إغلاق آخر صفقه
ثم تضع في شروط الدخولكود PHP:int LastClosedOrderTime(){
for(int i=OrdersHistoryTotal();i>0;i--){
OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber){
return(OrderCloseTime());
}
}
return(0);
}
وهذا يعني إذا كان الوقت الحالي - توقيت إغلاق آخر صفقه أكبر من Hours وهو عدد الساعات قبل فتح صفقة جديدهكود PHP:if((TimeCurrent()-LastClosedOrderTime())/60/60>=Hours)
شكرا أخي أسامه
هل إذا أردت أن أجعل الصفقه الجديده تفتح بعد ساعه من وقت إغلاق آخر صفقه أقوم بإستبدال كلمة Hours برقم 1 و هكذا ...؟
هل ما فهمته صحيح ؟؟
وماذا لو أردت ذلك بعدد الشمعات أو البارت ؟
الإكسبيرت مرفق بعد إضافة الداله و الشرط رجاء الإطلاع ...
وجزاك الله خيرا
السلام عليكم ورحمة الله أستاذ أسامة :eh_s(7):
حاولت عمل إكسبريت صغير يصلح لصفقات scalping يقوم بفتح صفقة شراء مثلا مع إعدادات خارجية SL , TP ,slipage
وعملت في شرط فتح الصفقة 1 = MaxOrders يعني إذ لم يكن هناك صفقة مفتوحة سيفتح الصفقة
المشكلة في عملية Compil هناك خطأ واحد لم أجده :no3: وأريد أيضا تعلم طريقة عمل SL أو TP مخفي :0016:كود PHP:#property copyright "Copyright 2011 Cher Amine"
#property link "[email protected]"
extern double Lots=0.01;
extern double slipage=1;
extern int MaxOrders=1;
extern double SL=4;
extern double TP=5;
extern int MagicNumber=2533;
//****************************************************************** MAX ORDERS **************
int orderscnt(int type){
int cnt=0;
for(int i =0;i<OrdersTotal();i++){
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
if(OrderSymbol()==Symbol()&&OrderType()==type && MagicNumber==OrderMagicNumber()){
cnt++;
}
}
}
return(cnt);
}
//**************************** OPEN ORDER
int start()
{
//----
if((orderscnt(OP_BUY)<MaxOrders){
OrderSend(Symbol(),OP_BUY,Lots,Ask,slipage,SL,TP,"Cher90",MagicNumber,0,Blue);
PlaySound("Alert.wav");
}
return(0);
}
أرجو إيضاح الخطأ وبارك الله فيك :eh_s(7):