النتائج 3,721 إلى 3,735 من 10285
الموضوع: موضوع مخصص للأسئلة البرمجية
- 01-05-2013, 03:37 PM #3721
شكرا أستاذ يوسف
- 01-05-2013, 03:44 PM #3722
ممكن حل بالنسبه للمضاعفات
عندى تعمل مع الاشارة العكسيه ولكن المشكله
عند تحقيق نقاط اقل من الهدف وظهور اشارة عكسيه يغلق
دون ان يكمل المضاعفات ويعود الى اللوت الاساسى
المطلوب ان يعمل مضاعفات حتى يحقق الهدف
وبالتوفيق للجميع
- 01-05-2013, 05:30 PM #3723
سؤال للاساتذة المبرمجين لدي اكسبيرت احاول ان اتعلم البرمجة من خلاله ولكن لدي مشكلة لم اجد لها حل وارجوا منكم اعطائي المعادلة اللازمة : المشكلة هي عندي تحقق شروط الدخول للصفقة شراء او بيع الاكسبيرت يفتح صفقة وعند وصول الصفقة للهدف لا يتوقف الاكسبيرت عن فتح الصفقات لان مازالت جميع الشروط متحققة للبيع او للشراء ارجوا منكم المساعدة وشكرا .
- 02-05-2013, 12:43 AM #3724
وعليكم السلام ورحمة الله وبركاته
لا يوجد في لغة mq4 دالة أو كود يسمح بالإتصال وتنزيل ملف من على النت وهذه فائدة دمج لغات البرمجه مع بعضها وهذا ما توفره لغة mq4 تسمح بإستدعاء أي مكتبات والتعامل معها
فالداله الموجوده في المكتبه (DLL) تسحب الملف من الموقع وتنزله على الجهاز ثم يقوم المؤشر أو الإكسبرت بقراءة الملف معرفة بيانات وتواريخ الأخبار
- 02-05-2013, 12:47 AM #3725
- 02-05-2013, 12:51 AM #3726
رد:موضوع مخصص للأسئلة البرمجية
مثال
سوف أقوم بعمل دالة لمعرفة حجم لوت بكل صفقات خاسرة
كود PHP:double LastLost()
{
for(int i=OrdersHistoryTotal()=1;i>=0;i--)
{
double profit;
OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)
{
if(OrderProfit()<0)profit+=OrderProfit();
}
}
return(profit);
}
كود PHP:double LastProfit()
{
for(int i=OrdersHistoryTotal()=1;i>=0;i--)
{
double profit;
OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)
{
if(OrderProfit()>0)profit+=OrderProfit();
}
}
return(profit);
}
كود PHP:if(LastLost()>LastProfit())
{
//newlot=lots*2;
}
- 02-05-2013, 12:55 AM #3727
رد:موضوع مخصص للأسئلة البرمجية
تأكد من طريقة كتابتك للشروط فمثلا إذا كان الإكسبرت لتقاطع الموفينج أفريج
فعند المقارنه لا تضع شرط أن الموفينج السريع أكبر من البطيء بالتالي شراء
مثل
كود PHP:double FastMa=iMA(Symbol(),0,8,0,0,PRICE_CLOSE,1);
double SlowMa=iMA(Symbol(),0,21,0,0,PRICE_CLOSE,1);
if(FastMa>SlowMa)
{
//open buy
}
كود PHP:double FastMa=iMA(Symbol(),0,8,0,0,PRICE_CLOSE,1);
double SlowMa=iMA(Symbol(),0,21,0,0,PRICE_CLOSE,1);
double FastMaPr=iMA(Symbol(),0,8,0,0,PRICE_CLOSE,2);
double SlowMaPr=iMA(Symbol(),0,21,0,0,PRICE_CLOSE,2);
if(FastMa>SlowMa&&FastMaPr<SlowMaPr)
{
//open buy
}
- 02-05-2013, 11:31 AM #3728
السلام عليكم رحمة الله وبركاته
اشكر مشرفنا مستر دولار على جهوده
عندي مشكله في ايجاد كود يجلب اغلاق اعلى شمعه هاي في 24 شمعه سابقه فريم الساعه هذه الجزئيه عملتها
بس المشكله اللي عندي لو تكررت شمعة الهاي مرتين او اكثر كيف اجلب اعلى اغلاق بينهم
وشاكر لكم تعاونكم
- 02-05-2013, 11:58 AM #3729
رد:موضوع مخصص للأسئلة البرمجية
السلام عليكم استاذى الكريم
جزاك الله خير على المساعدة الكريمة من شخصك الكريم
طيب استاذى
ممكن المساعدة فى تعلم هذه الطريقة
بوضع مثلا فى المرفقات مكتبة DLL
التى تسحب البيانات من النت
وكيف يتم رابطه فى الاكسبيرت او المؤشر
وهذا هايكون موضوع تعليمى كبير جدا لكل واحد بيتعلم لغة البرمجة
او حضرتك ممكن تفتح موضوع مثبت وتشرح هذه الطريقة
حتى تكون الاستفادة للجميع
وجزاك عنا كل خير
تحياتى لشخصك الكريم
- 02-05-2013, 02:16 PM #3730
رد:موضوع مخصص للأسئلة البرمجية
أنا عن نفسي مش مقتنع بتكرار الهاي مرتين خلال 24 شمعة ( لإن المنصات كلها تقريبا بقت 5 أرقام )
لكن فرضا لو تكرر الهاي فعلا في 24 شمعة أعتقد الحل هيكون بإستخدام الحلقات
---------------
في حل جاه في دماغي كده بس مش متأكد من صحته
كود PHP:double Higher_Close;
int Highr_H24 = iHighest(Symbol(),PERIOD_H1,MODE_HIGH,24,0);
int another_HH = iHighest(Symbol(),PERIOD_H1,MODE_HIGH,24,Highr_H24+1);
if(High[Highr_H24]== High[another_HH])
Higher_Close = MathMax(Close[Highr_H24],Close[another_HH]);
else{Higher_Close=iClose(Symbol(),PERIOD_H1,Highr_H24);}
- 02-05-2013, 11:03 PM #3731
رد:موضوع مخصص للأسئلة البرمجية
بدلا من إستخدام الداله iHighest لمعرفة الهاي إستخدم الحلقه for للبحث عن أعلى هاي وإذا تساوى شمعتين في الهاي تضع شرط أعلى إغلاق
مثال
كود PHP:double MaxHigh,CloseCandle;
for(int i=1;i<=24;i++)
{
if(High[i]>MaxHigh)
{
CLoseCandle=Close[i];
}
else if(High[i]==MaxHigh&&Close[i]>CloseCandle)
{
CloseCandle=Close[i];
}
}
- 03-05-2013, 02:36 AM #3732
- 03-05-2013, 04:48 AM #3733
رد:موضوع مخصص للأسئلة البرمجية
وعليكم السلام ورحمة الله وبركاته
أبسط مثال كنت قد ذكرته سابقا مؤشر FFCal للأخبار ويستخدم مكتبة wininet.dll وهي دائما تكون موجوده مع ملفات الويندوز
راجع هذا الموضوع لحين تجهيز شرح كامل له
http://codebase.mql4.com/ru/1064
- 03-05-2013, 04:54 AM #3734
رد:موضوع مخصص للأسئلة البرمجية
دكتور اسمح لي بالمساعدة على بال يرد الأستاذ أسامة ، بالنسبة لأول دالتين ربما لاترتد الدالة بماتريد ، تفضل دالة تعود بآخر لوت ودالة تعود بآخر تيك بروفت جربها ربما تحل باقي المشاكل في الأكسبيرت .
كود PHP:double LastOrderLot(int type){
for(int i=OrdersTotal()-1; i>=0; i--){
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber && OrderType()==type){
return(OrderLots());
}
}
return(0);
}
double LastOrderTP(int type){
for(int i=OrdersTotal()-1; i>=0; i--){
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber && OrderType()==type){
return(OrderTakeProfit());
}
}
return(0);
}
- 03-05-2013, 04:55 AM #3735
رد:موضوع مخصص للأسئلة البرمجية
يوجد حلين
إما أن تجعل الإكسبرت يقارن إذا كان حجم اللوت الجديد أكبر من أقصى حجم لوت مسموح فإنه يجعل حجم اللوت يساوي أكبر حجم مسموح
مثال
كود PHP:if(newLot>MarketInfo(Symbol(),MODE_MAXLOT))newLot=MarketInfo(Symbol(),MODE_MAXLOT);
مثال
كود PHP:while(newLot>0)
{
double lot=NewLot;
if(NewLot>MarketInfo(Symbol(),MODE_MAXLOT))lot=MarketInfo(Symbol(),MODE_MAXLOT);
OrderSend(Symbol(),OP_BUYSTOP,lot,Ask+50*Point,3,0,0,"EA",Magic,0,Blue);
newLot-=MarketInfo(Symbol(),MODE_MAXLOT);
}
المواضيع المتشابهه
-
موضوع مخصص للاكسبيرتات اللتي يستخدمها الاعضاء على الحقيقي,,عندك اكسبيرت ممتاز ضعه هنا
By محمد معمو in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EAمشاركات: 11آخر مشاركة: 15-12-2023, 02:03 PM -
عااااااااااااجل ( موضوع مخصص للفرص الفورية)!!!
By عاشق الذبذبـة in forum توقعات وتوصيات سوق العملاتمشاركات: 280آخر مشاركة: 27-08-2009, 10:30 PM