النتائج 1 إلى 6 من 6
- 09-05-2012, 03:22 AM #1
تعاقب حجم اللوت .. مطلوب كود لحجم اللوت
السلام عليكم جميعا
الاستاذ مستر دولار وباقي الاخوة المبرمجين كرما منكم وانت اهله وتعودناه منكم جزاكم الله عنا خيرا
مطلوب كود برمجي لحجم اللوت لصفقات ذات ماجيك نمبر واحد بحيث يستخدم فيها داله switch ويتم تحديد حجم اللوت في المدخلات الخارجية
ودمتم سالمين
- 10-05-2012, 10:29 PM #2
كمثال سوف تقوم أولا بإضافة متغيرات خارجية لتحديد 10 متغيرات لحجم اللوت
كود PHP:extern double Lot1=0.1;
extern double Lot2=0.2;
extern double Lot3=0.3;
extern double Lot4=0.4;
extern double Lot5=0.5;
extern double Lot6=0.6;
extern double Lot7=0.7;
extern double Lot8=0.8;
extern double Lot9=0.9;
extern double Lot10=1;
كود PHP:int orderstotal(){
int cnt=0;
for(int i =0;i<OrdersTotal();i++){
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber){
cnt++;
}
}
}
return(cnt);
}
كود PHP:double NextLot()
{
switch(orderstotal()){
case 1:return(Lot1);break;
case 2:return(Lot2);break;
case 3:return(Lot3);break;
case 4:return(Lot4);break;
case 5:return(Lot5);break;
case 6:return(Lot6);break;
case 7:return(Lot7);break;
case 8:return(Lot8);break;
case 9:return(Lot9);break;
case 10:return(Lot10);break;
default:return(Lot10);break;
}
}
- 01-06-2012, 05:25 AM #3
أشكرك جزيلاً استاذا اسامة .. فأنت دايئما تغمرني بطيبتك وحبك في مساعدة الاخرين
أسال الله لك التوفيق والسداد
هناك طلب برمجي اخر واتمنى ان تجد الوقت اللازم للنظر فيه .. ولك الشكر وصالح الدعاء مقدما
الطلب هو كود برمجي مهمته اغلاق كل الصفقات المفتوحة والتي تحمل نفس الماجيك نمبر في حال اغلقت اي صفقة تحمل نفس الماجيك وبأكبر حجم لوت ، على ربح فقط.
موفق اخ اسامةآخر تعديل بواسطة 4X Trader ، 01-06-2012 الساعة 05:33 AM
- 06-06-2012, 11:45 AM #4
انتظرك يا استاذ اسامة ... ربي يسعدك ويوفقك ... ويرحم والديك ... واتمنى يكون عندك وقت يسمح لك
احترامي الفائق والكبير لك ... موفق يالغالي
- 19-06-2012, 09:41 AM #5
للرفع
- 19-06-2012, 07:29 PM #6
يمكنك البحث في الهيتسوري عن آخر صفقه أغلقت بنفس الماجيك نمبر وحفظ حجم اللوت لها
كود PHP:double lastclosedOrder(){
for(int i=OrdersHistoryTotal();i>=0;i--){
OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber){
if(OrderProfit()>0)return(OrderLots());
else return(0);
}
}
return(0);
}
كود PHP:double maxorderlot(){
double maxlot;
for(int i=OrdersTotal();i>=0;i--){
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber){
maxlot=OrderLots();
}
}
return(maxlot);
}
كود PHP:if(lastclosedorder()>maxorderlot())
{
//close all
}
بالنسبه لي أنا لا أفضل إستخدام هذه الطريقه لكن أفضل أن أقوم بتغيير الهدف لجميع الصفقات لجعلها هدف آخر صفقه بحيث إذا أغلقت آخر صفقه على الهدف تغلق معها جميع الصفقات في نفس الوقت