26-05-2017, 03:51 PM
|
|
رد: موضوع مخصص للاسئلة والاستفسارات الخاصة بدورة تعليم البرمجة الاحترافية بلغة mql4
|
|
|
|
|
،،،اهلا بك اخي الفاضل ، اولا يتم حجز هذه المتغيرات،،،
كود:
datetime time0;
bool x;
double NewLot,LastLot;
،،،ثم وضع الكود التالي في OnTick،،،
كود:
if(time0!=Time[0]){
if(x==-1){
NewLot = LastLot+0.01;
bool b = OrderSend(Symbol(),OP_BUY,NewLot,Ask,0,0,0,"",Magicnumber,0,clrBlue);
LastLot = NewLot;
x=1;
}
if(x==1){
NewLot = LastLot+0.01;
bool b = OrderSend(Symbol(),OP_SELL,NewLot,Bid,0,0,0,"",Magicnumber,0,clrRed);
LastLot = NewLot;
x=-1;
}
time0=Time[0];
}
،،،والكود يبدأ بعمل فحص لقيمة المتغير time0 اذا كان لايساوي وقت الشمعة الحالية يتم الانتقال للسطر التالي والفائدة هو منع الاكسبيرت من تنفيذ باقي الاوامر الا عند افتتاح شمعة جديدة،،،
،،،بعد ذلك يتم فحص قيمة المتغير x اذا كان يساوي -1 فمعنى ذلك ان الصفقة السابقة كانت بيع فيتم فتح شراء واذا كانت تساوي 1 فيتم فتح بيع،،،
،،،بعد ذلك يتم اسناد قيمة اللوت السابق + الزيادة التي نريدها الى المتغير NewLot وفي هذا المثال وضعت الزيادة بمقدار 0.01 ثم يتم فتح الصفقة وتخزين قيمة اللوت الجديد في المتغير LastLot،،،
،،،في النهاية يتم اسناد وقت الشمعة الحالية للمتغير time0،،،
،،،تحياتي،،، |
|
|
|
|
شكرا جزيلا لك أخي إسلام
لقد تعلمت منك الكثير
خاصتا من فيدهات دورة mql4 الخاصة بك
|