النتائج 2,896 إلى 2,910 من 10363
الموضوع: موضوع مخصص للأسئلة البرمجية
- 04-10-2012, 11:36 PM #2896
- 05-10-2012, 04:39 AM #2897
لاحظ شرط فتح الصفقات الذي وضعته
لكن لنفرض الآن أن الإكسبرت بدأ عمله ولم يتم فتح أي صفقه بعد بالتالي لن يتحقق هذا الشرط أبدا لأن العمليه الحسابيه الموجوده في الداله لن تعملكود PHP:if(lastordertime()>20){
لذلك يمكنك إضافة شرط آخر
حتى تتأكد عند بداية فتح أول صفقه تكون الشروط محققهكود PHP:if(lastordertime()>20||lastordertime()==0){
- 05-10-2012, 05:50 AM #2898
السلام عليكم ممكن مساعدة في ايجاد هذا الكود
https://forum.arabictrader.com/t154773.html#post2514902
- 05-10-2012, 11:42 AM #2899
- 05-10-2012, 12:25 PM #2900
رد:موضوع مخصص للأسئلة البرمجية
اخي الكريم راح ارفق لك الاكسبيرت اتمنى انك توضحلي وين الخطاْممكن كود الريسك ريشو: اللي هو إغلاق جميع الصفقات المفتوحة اذا وصلت لنسبة خسارة معينة من الحساب .
سوف تقوم بعمل دالة لإغلاق الصفقات أولا
كود PHP:
void CloseAllOrders()
{
for (int cnt = 0 ; cnt <=OrdersTotal() ; cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==Ma gicNumber){
if (OrderType()==OP_BUY)
{
OrderClose(OrderTicket(),OrderLots(),OrderClosePri ce(),3*D);
}
if (OrderType()==OP_SELL)
{
OrderClose(OrderTicket(),OrderLots(),OrderClosePri ce(),3*D);
}
}
}
}
ثم سوف تكون شروط الإغلاق
كود PHP:
if(AccountProfit()/AccountBalance())*100<=LossPercent&&CloseAfterLoss Percent==true){
CloseAllOrders();
}
ومتغيرات الإكسبرت الخارجيه
كود PHP:
extern bool CloseAfterLossPercent=false;
extern int LossPercent=-50;
- 06-10-2012, 12:12 AM #2901
- 06-10-2012, 09:10 AM #2902
رد:موضوع مخصص للأسئلة البرمجية
اخي اسامه اريد منك ان تصحح لي ان كنت قد اخطات في هذا الاكسبيرت وبالذات عند استخدام كود الاستوب المتحرك والايفن واداره راس المال ..لاني استخدمتهم اكثر من مره في نفس الاكسبيرت ...ياريت تعطيني اخظائي
- 06-10-2012, 11:47 AM #2903
رد:موضوع مخصص للأسئلة البرمجية
اخي اسامه اريد منك ان تصحح لي ان كنت قد اخطات في هذا الاكسبيرت وبالذات عند استخدام كود الاستوب المتحرك والايفن واداره راس المال ..لاني استخدمتهم اكثر من مره في نفس الاكسبيرت ...ياريت تعطيني اخظائي وتضيف على الاكسبيرت خاصيه المضاعفات...ولكم جزيل الشكر والتقدير.
آخر تعديل بواسطة al_naser ، 06-10-2012 الساعة 12:00 PM
- 06-10-2012, 10:28 PM #2904
يمكنك بدلا من إستخدام دالة التريلينج ستوب والبريك إيفن أكثر من مره أن تضع شرط مباشرة بأن يكون الماجيك نمبر يساوي ماجيك 1 أو 2 أو 3 أو 4
بالتالي لن تحتاج إلى كتابة الداله إلا مره واحده فقط
كود PHP:if(OrderType()<=OP_SELL&&OrderSymbol()==Symbol()&&OrderMagicNumber()==Magicnumber1||OrderMagicNumber()==Mgicnumber2||OrderMagicNumber()==Mgicnumber3||OrderMagicNumber()==Mgicnumber4)
- 06-10-2012, 11:03 PM #2905
رد:موضوع مخصص للأسئلة البرمجية
ساحاول عمل ذلك...لكن بالنسبه للمضاعفات اريدها ان تكون بهذا الشكل مثلا انا اقوم بفتح عقد معلق من نوع sell-stop عند االساعه 17 على بعد 60 نقطه وربح 200 نقطه فاذا تفعل وكانت الخساره قد وصلت 50 نقطه يقوم الاكسبيرت باستخدام المضاعفات وذلك بفتح عقدين من نوع buy-stop بهدف 200 واذا عاكس وكانت الخساره لكل عقد 100 نقطه يقوم بفتح 3 او 4 عقود مره اخرى من نوع sell-stop بهدف احدده انا وهكذا يبقي يضاعف حتي يصل الى رقم محدد من المضاعفات احددها من اعد ادات الاكسبيرت ياريت تكون فهمت ماقصدت وهو الاكسبيرت جاهز يبقى اضافه الكود بالطريقه التي شرحتها مسبقا...
اوعلم ينتفع به .
- 07-10-2012, 12:25 AM #2906
رد:موضوع مخصص للأسئلة البرمجية
الاخ اسامه الفاضل جزاك الله كل خير لما تقدمه لاخوانك فضلا وليس امرا كيف يمكن اضافه تنبيه مستمر على داله الشراء هذه بحيث اريد الاكسبيرت يعطيني جرس مستمر عند تحقيق الشروط وطبعا سوف اشغل ان يسالني قبل فتح الصفقه
وتقبل ودي واحترامي وشكرا مقدماكود PHP:{
ticket=OrderSend(Symbol(),OP_BUY,Lot,b,3,bsl,bt,"",MagicNumber,0,Green );
if(ticket>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
}
else Print("Error opening BUY order : ",GetLastError());
return(0);
}
- 07-10-2012, 12:46 AM #2907
طلب اخر استاذ اسامه الفاضل وجزاك الله كل خير
اذا اردت ان اقول شمعه رتبه واحد ليست شمعه لموزين (شمعه طويله جدا )كيف يمكن التعبير برمجييا عن ذلك وتقبل ودي وشكرا
- 07-10-2012, 08:59 AM #2908
رد:موضوع مخصص للأسئلة البرمجية
اخ اسامه قمت بدمج اكواد الاستوب المتحرك والايفن كما قلت ولكن لاحظت ان نتائج الباكتيست تختلف عما قبل الدمج رغم عدم وجود اخطاء.
اما بالنسبه لدمج اكواد اداره المال فقد حاولت ولكن لااعرف اذا كنت على صح او لا ........في المرفقات
- 07-10-2012, 07:34 PM #2909
الأفضل أن تجعل الكود بهذا الشكل
بعد أن يتفعل الأمر المعلق يضع أمر معلق آخر مضاعف إذا كان الصفقه المفتوحه بيع يفتح شراء معلق وإذا كانت الصفقه المفتوحه شراء يفتح بيع معلق
مثال
سوف تحتاج أولا لمعرفة نوع آخر صفقه فتحت حتى يكون الأمر المعلق صفقه عكسيه
ثم لمعرفة عدد الأوامر المعلقه الحاليه بحيث عندما يضع الأمر المعلق المضاعف لا يضع أوامر أخرىكود PHP:int LastOrderType(){
for(int i=OrdersTotal();i>=0;i--){
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==Magicnumber){
return(OrderType());
}
}
return(0);
}
ثم دالة لمعرفه حجم آخر لوت حتى يكون اللوت التالي مضاعفكود PHP:int PendingOrdersTotal(int Magic)
{
int c=0;
int total = OrdersTotal();
for (int cnt = 0 ; cnt < total ; cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == Magic && OrderSymbol()==Symbol()&&OrderType()>OP_SELL)
{
c++;
}
}
return(c);
}
ثم ستكون شروط الدخول في الصفقهكود PHP:double LastOrderLot(){
for(int i=OrdersTotal();i>=0;i--){
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==Magicnumber){
return(OrderLots());
}
}
return(0);
}
كود PHP:
if(MyOrdersTotal(Magicnumber)>0&&PendingOrdersTotal(Magicnumber)==0){
if(LastOrderType()==OP_SELL){
double BuyPrice=Ask-Step*Point*Q;
double BuyTP=BuyPrice+Takeprofit*Point*Q;
double BuySL=BuyPrice-Stoploss*Point*Q;
ticket=OrderSend(Symbol(),OP_BUYSTOP,LastOrderLot()*2,NormalizeDouble(BuyPrice,Digits),3,BuySL,BuyTP,"",Magicnumber,0,Red);
while(ticket<0){
ticket=OrderSend(Symbol(),OP_BUYSTOP,LastOrderLot()*2,NormalizeDouble(BuyPrice,Digits),3,BuySL,BuyTP,"",Magicnumber,0,Red);Sleep(1000);
}
}
if(LastOrderType()==OP_BUY){
double SellPrice=Ask-Step*Point*Q;
double SellTP=SellPrice-Takeprofit*Point*Q;
double SellSL=SellPrice+Stoploss*Point*Q;
ticket=OrderSend(Symbol(),OP_BUYSTOP,LastOrderLot()*2,NormalizeDouble(SellPrice,Digits),3,SellSL,SellTP,"",Magicnumber,0,Red);
while(ticket<0){
ticket=OrderSend(Symbol(),OP_BUYSTOP,LastOrderLot()*2,NormalizeDouble(SellPrice,Digits),3,SellSL,SellTP,"",Magicnumber,0,Red);Sleep(1000);
}
}
}
- 07-10-2012, 10:25 PM #2910
رد:موضوع مخصص للأسئلة البرمجية
أخى العزيز الغالى - مستر دولار
فضلا وتكرما منك ، لا أمرا
لى سؤال هل ممكن تشغيل هذا المؤشر على اكثر من ميتاتريدر لشركات مختلفه ( مثلا لأربع او خمس شركات مختلفه) وإظهار ناتجه على أى منهم ؟
مرفق المؤشر
شكرا مقدما
المواضيع المتشابهه
-
موضوع مخصص للاكسبيرتات اللتي يستخدمها الاعضاء على الحقيقي,,عندك اكسبيرت ممتاز ضعه هنا
By محمد معمو in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EAمشاركات: 11آخر مشاركة: 15-12-2023, 02:03 PM -
عااااااااااااجل ( موضوع مخصص للفرص الفورية)!!!
By عاشق الذبذبـة in forum توقعات وتوصيات سوق العملاتمشاركات: 280آخر مشاركة: 27-08-2009, 10:30 PM
الأكثر زيارة

رد مع اقتباس