النتائج 2,791 إلى 2,805 من 10335
الموضوع: موضوع مخصص للأسئلة البرمجية
- 17-09-2012, 12:47 AM #2791
- 17-09-2012, 10:29 AM #2792
- 17-09-2012, 08:16 PM #2793
رد:موضوع مخصص للأسئلة البرمجية
مساء الخير مستر دولار انني صرت استحي من كثر اسئلتي اليك لكن بصراحه ارغب في العلم لذلك اتمنى مساعدي
تم اضافه المعادلات الى الاكسبيرت لكي يقوم باقفال الصفقه عند تقاطع المتوسط لكن الاكسبيرت لا يفتح صفقات اتوقع السبب هومعادلات حساب الصفقات الحاليه للشراء والبيع وبصراحه لا اعرف لها بديل لاستطيع ان اضع نفس الاكسبيرت على اكثر من عمله في نفس الوقت مع تغير الماجيك نمبر
كود PHP:extern int TakeProfit=28;
extern int StopLoss=18;
extern int MagicNumber = 122;
extern double Lot=0.1;//متوسط 14+28
int t1,t2;
extern bool CloseOppositeSignal=true;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
double b,s,bsl,ssl,bt,st;
b= Ask;
s=Bid;
if (StopLoss>0)
{
bsl=b-StopLoss*Point;
ssl=s+StopLoss*Point;
}
else
{
bsl=0;
ssl=0;
}
if (TakeProfit>0)
{
bt=b+TakeProfit*Point;
st=s-TakeProfit*Point;
}
else
{
bt=0;
st=0;
}
// شروط الشراء السعر اعلى من متوسط 200 ومتوسط 50 اعلى من متوسط 200 الدخول مع تقاطع متوسط 14 و28 شراء
int cnt, ticket, total;
double m6=iMA(NULL,5,28,0,0,PRICE_CLOSE,1);//متوسط 28
double m7=iMA(NULL,5,28,0,0,PRICE_CLOSE,2);//متوسط 28
double m8=iMA(NULL,5,14,0,0,PRICE_CLOSE,1);//متوسط 14
double m9=iMA(NULL,5,14,0,0,PRICE_CLOSE,2);//متوسط 14
double r1=iMA(NULL,5,200,0,0,PRICE_CLOSE,1);//متوسط 200
double r2=iMA(NULL,5,50,0,0,PRICE_CLOSE,1);//متوسط 50
///////////////////////////////////////////////////////////
if (m8>m6&&m7>=m9&&CloseOppositeSignal==true)
{CloseSellOrders();}
if (m6>m8&&m9>=m7&&CloseOppositeSignal==true)
{CloseBuyOrders();}
//////////////////////////////////////
if( iClose(0,5,1)>r1&&r2>r1&&m8>m6&&m7>=m9
&&MyBuyRealOrdersTotal(MagicNumber)==0)
{
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);
}
if( iClose(0,5,1)<r1&&r2<r1&&m6>m8&&m9>=m7
&&MySellRealOrdersTotal(MagicNumber)==0)
{
ticket=OrderSend(Symbol(),OP_SELL,Lot,s,3,ssl,st,"",MagicNumber,0,Red);
if(ticket>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice());
}
else Print("Error opening SELL order : ",GetLastError());
return(0);
}
return(0);
}
return(0);
return(0);
//+---------------
// وظيفة لحساب عدد الصفقات الحالية (للشراء)
int MyBuyRealOrdersTotal(int MagicNumber)
{
int c=0;
int total = OrdersTotal();
t1=-1;
t2=-1;
for (int cnt = 0 ; cnt < total ; cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol() && (OrderType()==OP_BUY))
{
if (t1==-1)
{
t1=OrderTicket();
}
else
{
if (t2==-1)
{
t2=OrderTicket();
}
}
c++;
}
}
return(c);
}
// وظيفة لحساب عدد الصفقات الحالية للبيع
int MySellRealOrdersTotal(int MagicNumber)
{
int c=0;
int total = OrdersTotal();
t1=-1;
t2=-1;
for (int cnt = 0 ; cnt < total ; cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == MagicNumber&& OrderSymbol()==Symbol() && (OrderType()==OP_SELL))
{
if (t1==-1)
{
t1=OrderTicket();
}
else
{
if (t2==-1)
{
t2=OrderTicket();
}
}
c++;
}
}
return(c);
}
//+------------------------------------------------------------------+
int CloseBuyOrders()
{
for (int cnt = 0 ; cnt < OrdersTotal() ; cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
{
if (OrderType()==OP_BUY)
{
OrderClose(OrderTicket(),OrderLots(),Bid,3);
}
}
}
return(0);
}
int CloseSellOrders()
{
for (int cnt = 0 ; cnt < OrdersTotal() ; cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
{
if (OrderType()==OP_SELL)
{
OrderClose(OrderTicket(),OrderLots(),Ask,3);
}
}
}
return(0);
}
الاكسبيرت بسيط يفتح علىا كثر من عمله ويجني الارباح عند معادلات معينه
مرفق الاكسبيرت
- 17-09-2012, 08:26 PM #2794
وعليكم السلام ورحمة الله وبركاته
هذه الخاصية موجوده في الإكسبرت وهو خيار CloseOppositeSignal عند تفعيله فسوف يغلق الصفقه عند تغير إشارة المؤشر
والكود المسئول عن شروط الإغلاق هو
كود PHP:if (SS_1>0&&SS_2<=0&&CloseOppositeSignal)CloseSellOrders();
if (SS_1<0&&SS_2>=0&&CloseOppositeSignal)CloseBuyOrders();
- 17-09-2012, 08:44 PM #2795
رد:موضوع مخصص للأسئلة البرمجية
السلام عليكم ورحمة الله
استاذ أسامه هذه الخاصيه ليست فعاله دائماً ففي بعض الأوقات يعكس المؤشر إشارته ولكن الاكسبيرت لايغلق الصفقه لذلك انا اريد ان يراجع الاكسبيرت صفقاته عند اغلاق كل شمعه ارجوا منك التكرم بعمل هذا الشرط بارك الله فيك لانه جوهر الاكسبيرت وسر نجاحه
تحياتي
- 17-09-2012, 09:34 PM #2796
رد:موضوع مخصص للأسئلة البرمجية
تمام أخي أسامه ... تم حل امشكله و جزاك الله خيرا ..
هل هذه الداله أخي صحيحه و تعود بنوع آخر أمر معلق فتح و أغلق .
كود PHP:double LastPend(){
for(int i=OrdersTotal();i>=0;i--){
OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
if(OrderSymbol()==Symbol() && MagicNumberP==OrderMagicNumber()&& (OrderType()==OP_SELLSTOP || OrderType()==OP_SELLLIMIT || OrderType()==OP_BUYSTOP || OrderType()==OP_BUYLIMIT )){
double LastPend=OrderType();
}
}
return(LastPend);
}
- 17-09-2012, 11:37 PM #2797
- 18-09-2012, 12:25 AM #2798
- 18-09-2012, 03:24 PM #2799
- 18-09-2012, 04:28 PM #2800
- 18-09-2012, 04:30 PM #2801
- 19-09-2012, 12:50 PM #2802
رد:موضوع مخصص للأسئلة البرمجية
السلام عليكم ورحمة الله وبركاته
استاذ اسامه اشكرك جزيل الشكر فعلا هذا هو التعديل المطلوب والاكسبيرت الان يعمل بشكل افضل من حيث الدخول والخروج ولكن فيه مشكله وهي ان الاكسبيرت في بعض الاحيان وليس دائما يضع استوب لوز عند نقطة الدخول برغم ان الاعدادات الستوب لوز= صفر والتك بروفت =صفر والبريك ايفن=صفر والموفستوب =صفر والترايلنج ستوب =صفر ..هل هذا خلل في الاكسبيرت؟؟؟ ارجو منك الافاده وحل المشكله مرفق كشف حساب يبين هذه المشكله
تحياتي لك
- 19-09-2012, 01:24 PM #2803
- 19-09-2012, 03:34 PM #2804
السلام عليكم و رحمة الله و بركاته
هل هناك طريقة استطيع بها قراءة بيانات بار bar معين بواسطة ال index له من على سيرفر الميتاتريدر و طبعا البار يكون خاص بفريم معين ؟؟
أو بمعنى آخر لتوضيح الفكرة : هل يمكن جلب بيانات من السيرفر بواسطة المؤشر (برمجيا أثناء التشغيل) علما بان هذه البيانات لا تكن موجودة من قبل فى ال history center على جهازى؟؟
- 19-09-2012, 03:52 PM #2805
المواضيع المتشابهه
-
موضوع مخصص للاكسبيرتات اللتي يستخدمها الاعضاء على الحقيقي,,عندك اكسبيرت ممتاز ضعه هنا
By محمد معمو in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EAمشاركات: 11آخر مشاركة: 15-12-2023, 02:03 PM -
عااااااااااااجل ( موضوع مخصص للفرص الفورية)!!!
By عاشق الذبذبـة in forum توقعات وتوصيات سوق العملاتمشاركات: 280آخر مشاركة: 27-08-2009, 10:30 PM