ตามนี้เลยครับ
หากออเด้อเเรกเทรดที่ 0.1 ล็อต
-ถ้าออเด้อแรกเสีย ออเด้อที่2ให้เบิ้ลล็อต
-ถ้าออเด้อที่2เสีย ออเด้อที่3ก็ให้เบิลล็อด //ถ้าเสียต่อเนื่องก้อให้เบิ้ลต่อไปเรื่อยๆ
ถ้าออเด้อที่3 ได้ ออเด้อที่4 ให้กลับไปเทรดที่ 0.1ลอตเหมือนเดิมครับผม
ขอบคุณครับ
extern double lot =0.1;
extern double sl =45;
extern double tp =45;
extern int MaxOrder =1;
int start() {
if(OrdersTotal()<MaxOrder)
{
double var1 = 0.00025;
double var2 = -0.00025;
double ma1 =iMA(NULL,0,10,0,MODE_SMMA,PRICE_MEDIAN,0);
double ma2 =iMA(NULL,0,20,0,MODE_SMMA,PRICE_MEDIAN,0);
double min = iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,0);
double sig = iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,0);
{
OrderSelect(OrdersHistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY);
double lastlot=OrderLots();
double lastprofit=OrderProfit();
double lastlot2=lastlot*2;
if((lastprofit<0))
{
if ((min<=0))
{
if ((sig <=0)&&(ma2>ma1))
{
if ((sig-var1)>=min)
{OrderSend(Symbol(),OP_SELL,lastlot2,Bid,3,Bid+Point*sl,Bid-Point*tp,"EA Creator",123,0,Red); }
}
}
if ((min>=-0))
{
if ((sig>=-0)&&(ma2<ma1))
{
if ((sig+var1)<=min)
{OrderSend(Symbol(),OP_BUY,lastlot2,Ask,3,Ask-Point*sl,Ask+Point*tp,"EA Creator",123,0,Green); }
}
}
}
else
{
if ((min<=0))
{
if ((sig <=0)&&(ma2>ma1))
{
if ((sig-var1)>=min)
{OrderSend(Symbol(),OP_SELL,lot,Bid,3,Bid+Point*sl,Bid-Point*tp,"EA Creator",123,0,Red); }
}
}
if ((min>=-0))
{
if ((sig>=-0)&&(ma2<ma1))
{
if ((sig+var1)<=min)
{OrderSend(Symbol(),OP_BUY,lot,Ask,3,Ask-Point*sl,Ask+Point*tp,"EA Creator",123,0,Green);}
}
}
}
}}
return(0) ;
}
ลองเอาตัวนี้ไปใช้ดูนะคับ แต่ระวังนะคับ การเบิ้ลลอต ถ้าทุนไม่มากพอ ล้างพอตอย่างเดียวคับ ให้ลองเทรสดูก่อนคับ ลองปรับค่าต่าง ๆ ให้ดีนะคับ
ปล. ระวังซิบหายวายวอด EA เบิ่ลลอดอะ