النتائج 1,186 إلى 1,200 من 10335
الموضوع: موضوع مخصص للأسئلة البرمجية
- 01-07-2011, 04:32 PM #1186
السلام عليكم ورحمة الله وبركاته
أخي مستر دولار
كيف أجعل اي مؤشر من مؤشر الشمعه الحاليه الى مؤشر تاريخي
وجزاك الله خيراً
- 02-07-2011, 12:57 PM #1187
هل الاكسبيرت عندما يقراء الاوامر يبداء من السطر الاعلى ثم الذي يليه ثم الذي يليه يعني من الاعلى الى الاسفل فهل عند تقديم امر على امر يعمل على تغيير عمل الاكسبيرت؟
وما هو الحل عندما يكون اللوت مثلا 0.16 لانه يطلع عندي خطاء 131؟آخر تعديل بواسطة al_naser ، 02-07-2011 الساعة 01:21 PM
- 02-07-2011, 03:50 PM #1188
هل الميتا 4 مثل ميتا 5 في البرمجه
- 03-07-2011, 05:43 PM #1189
يمكنك تغيير عدد الأيام التي مرت في الكود الآتي
كود PHP:if((TimeCurrent()-T)/86400>=10)
كود PHP:if((TimeCurrent()-T)/86400>=10&&DayOfWeek()==1)
- 03-07-2011, 05:48 PM #1190
- 03-07-2011, 05:53 PM #1191
نعم الإكسبرت يقرأ الأسطر من الأعلى ثم الذي يليه يمكنك ملاحظة ذلك قم مثلا بوضع أمرين بيع وشراء أسفل بعضهم سوف تجد أن الأمر في الأعلى سوف يتفعل أولا وهذا يؤثر على عمل الإكسبرت فعلا في أحيان كثيره
حسب شروط الإكسبرت
إذا كان البروكر لا يسمح بوضع حجم لوت ميكرو
يمكنك إستخدام الأمر
كود PHP:NormalizeDouble(Lots,1);
طبعا يمكن تغيير الرقم 1 في الداله بعدد الأرقام التي تريدها بعد الفاصله العشريه
ليست نفسها طبعا هي تقريبا متشابهة كثيرا لكن هناك بعض التحديثات التي دخلت على اللغه لكن إذا كنت
تعلم ميتا 4 فسهل أن تراجع التطورات والتغييرات الحادثه في ميتا 5 وتتعلمها
- 04-07-2011, 10:48 AM #1192
تمام جزاك الله خيراً أخي العزيز
وشكراً لردك
- 04-07-2011, 11:14 AM #1193
مشكور اخ اسامه........لكن مازال الخطاء قائم 131 رغم محاوله تصليحه التجربه كانت على منصه التريدر
,وبالنسبه للاغلاق في يوم محدد حاولت اعمل كما قلت ولكن الشرط بهذا الشكل لم يودي الغرض المطلوب لانه عند يصل الى اليوم المحدد وdayofweek dيبقى يكرر نفسه اسبوعيا لانه اصبح اكبر او يساوي اليوم المحدد.
بااختصار اريد الكود يغلق ويحذف جميع الصفقات في يوم واحد احدده انا مثلا انا افتح صفقبين معلقتين يوميا ما ان يكون قد مر اربعين يوم مثلا من فتح اول امر معلق يقوم بحذفها و غلق جميع الصفقات في هذا اليوم. يعني صفقه سيكون قد مر عليها يوم وصفقه عشرين يوم وصفقه عشره ايام وهكذا . اتمنى ان تكون الفكره وصلت.آخر تعديل بواسطة al_naser ، 04-07-2011 الساعة 11:37 AM
- 07-07-2011, 03:56 PM #1194
السلام عليكم ورحمة الله وبركاته
ما معنى الخطأ 138 Requote
- 09-07-2011, 03:19 PM #1195
- 09-07-2011, 03:32 PM #1196
أنت جعلته بهذا الشكل
كود PHP:NormalizeDouble(Lots,2);
أيضا تأكد من أن حجم اللوت يسمح به البروكر مثلا يمكنك إستخدام هذا الكود
كود PHP:if(lot<MarketInfo(Symbol(),MODE_MINLOT))lot=MarketInfo(Symbol(),MODE_MINLOT);
if(lot>MarketInfo(Symbol(),MODE_MAXLOT))lot=MarketInfo(Symbol(),MODE_MAXLOT);
بالنسبة للجزء الثاني فأنت ذكرت المشكله جرب الحل بنفسك ما هو الحل في رأيك ؟
إستخدم الشرطين معا وليس شرط واحد وبما أنك تريد إغلاق جميع الصفقات عند مرور وقت محدد على أي صفقه
كمثال :
كود PHP:for(int i=0;i<OrdersTotal();i++){
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
t=OrderTicket();int type=OrderType();datetime T=OrderOpenTime();double lots=OrderLots();
if((TimeCurrent()-T)/86400>=10)
{
for( i=0;i<OrdersTotal();i++){
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
t=OrderTicket(); type=OrderType(); T=OrderOpenTime(); lots=OrderLots();
if(type>OP_SELL)OrderDelete(t);
if(type==OP_BUY) OrderClose(OrderTicket(),lots,Bid,3);
if(type==OP_SELL) OrderClose(OrderTicket(),lots,Ask,3);
}
}
}
- 11-07-2011, 12:32 AM #1197
الله يجزيك كل خير ........صراحه اتعبتك معايا لكن تعبك خير ان شاء الله.
اذا كان البروكر يسمح ب 0.1 لوت هل معنى هذا انه يمكن ان اجعل الاكسبيرت يفتح لوت هكذا 0.16 لانه على ما اعتقد ان البروكر لايسمح ب 0.16 ولكن يسمح 0.1؟
طبعا بالنسبه لفكره كود غلق وحذف الصفقات عند وقت محدد ارى انها اتعبتنا كثيرا فا لافضل تركها.........لاني اتعبتك كثيرا؟
هل هذه الترجمه صحيحه . اريد الاكسبيرت ا ن يقوم بفتح عقدين معاكسين للعقد الاول في حاله كان العقد الاول قد اصبح خسران بمقدار 100 نقطه مثلا.
مثلا قمت بفتح عقدين معلقين بيع وشراء من نوع ستوب فتفعل البيع ولكن السوق كان ضدي فما ان يصل الى خساره 100نقطه يقوم الاكسبيرت بفتح عقدين شراء .
كود PHP:if(Profit==-100) { افتح عقدين عكس العقد السابق}
بس كيف تكون الترجمه الدقيقه لتلك الجمله؟آخر تعديل بواسطة al_naser ، 11-07-2011 الساعة 12:39 AM
- 12-07-2011, 09:36 PM #1198
ليس شرط أن يسمح البروكر بعد 0.16 إذا كان يسمح بعقد 0.1
الآن أنت حددت Profit لكن هذا الربح وليس عدد النقاط الخاسره لذلك سوف تحتاج إلى معرفة سعر فتح الصفقه الأولى ثم تحديد السعر الحالي وحساب عدد النقاط الخاسره
وهي طريقة نستخدمها في أغلب إكسبرتات المضاعفات راجع الإكسبرت المرفق خصوصا هذا الجزء
كود PHP:if(UseMultiplier){
for(s=OrdersTotal()-2;s<OrdersTotal();s++){
OrderSelect(s,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber&&OrderType()==OP_BUY){
openprice=OrderOpenPrice();lots=OrderLots();
}
}{
if(X_Multiplier){
newLot=Multiplier*lots;
}
else{newLot=lots+Lots;}
if(Ask<=openprice-Step*point&&orderscnt(OP_BUY)>=1){
//if(TakeProfit==0){TP=0;}else{TP=Ask+TakeProfit*point;}
OrderSend(Symbol(),OP_BUY,newLot,NormalizeDouble(Ask,Digits),3*Q,0,0,"MR.dollar EA",MagicNumber,0,Blue);
l++;
}
}
for(s=OrdersTotal()-2;s<OrdersTotal();s++){
OrderSelect(s,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber&&OrderType()==OP_SELL){
openprice=OrderOpenPrice(); lots=OrderLots();
}
}{
if(X_Multiplier){
newLot=Multiplier*lots;
}
else{newLot=lots+Lots;}
if(Bid>=openprice+Step*point&&orderscnt(OP_SELL)>=1){
// if(TakeProfit==0){TP=0;}else{TP=Bid-TakeProfit*point;}
OrderSend(Symbol(),OP_SELL,newLot,NormalizeDouble(Bid,Digits),3*Q,0,0,"MR.dollar EA",MagicNumber,0,Red);
ll++;
}
}
}
- 18-07-2011, 10:45 AM #1199السلام عليكم و رحمة الله و بركاته
كيف يمكن تعديل هذا المؤشر لكي يظهر فقط اول تقاطع شرائي فوق السحابة و العكس
وجزاك الله خير
- 19-07-2011, 05:32 PM #1200
المواضيع المتشابهه
-
موضوع مخصص للاكسبيرتات اللتي يستخدمها الاعضاء على الحقيقي,,عندك اكسبيرت ممتاز ضعه هنا
By محمد معمو in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EAمشاركات: 11آخر مشاركة: 15-12-2023, 02:03 PM -
عااااااااااااجل ( موضوع مخصص للفرص الفورية)!!!
By عاشق الذبذبـة in forum توقعات وتوصيات سوق العملاتمشاركات: 280آخر مشاركة: 27-08-2009, 10:30 PM