Open Forex4you Account

Server รัน EA 1000 / ปี

สั่งชื้อคู่มือการโปรแรกม MQL4

Author Topic: รบกวนผู้รู้หน่อยครับ  (Read 5298 times)

kongto

  • Newbie
  • *
  • Posts: 46
รบกวนผู้รู้หน่อยครับ
« on: พฤศจิกายน 29, 2010, 12:27:16 pm »
คือผมต้องการให้ปิดออเดอร์ทั้งหมดหลังจากห่างจากออร์เดอร์แรก

ขึ้นก็ได้ ลงก็ได้ 50 ช่อง ผมจะเขียนยังงัยดี

ขอบคุณล่วงหน้าครับ

 ;D ;D ;D

admin

  • Administrator
  • Hero Member
  • *****
  • Posts: 2386
Re: รบกวนผู้รู้หน่อยครับ
« Reply #1 on: ธันวาคม 01, 2010, 01:50:50 am »
ลองเอาไปดูครับ

int start()
  {   int total =OrdersTotal();
OrderSelect(0,SELECT_BY_POS,MODE_TRADES);

if(OrderType()==OP_BUY)
{    if( (OrderOpenPrice()-Ask >= Point*50) || (OrderOpenPrice()-Ask <= -(Point*50 )))
{

for(int i=0;i<total;i++)


    OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
   
       int type   = OrderType();
               
       bool result = false;
             
       switch(type)
          {
         
          case OP_BUY  : result = OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),3,Pink);
                         break;     
          case OP_SELL : result = OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),3,Pink);
                         
          }
   

}
}
}


if(OrderType()==OP_SELL)
{    if( (OrderOpenPrice()-Bid >= Point*50) || (OrderOpenPrice()- Bid <= -(Point*50 )))
{

for( i=0;i<total;i++)


    OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
   
       type   = OrderType();
               
       result = false;
             
       switch(type)
          {
         
          case OP_BUY  : result = OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),3,Pink);
                         break;     
          case OP_SELL : result = OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),3,Pink);
                         
          }
   

}
}
}

return(0);
 }

kongto

  • Newbie
  • *
  • Posts: 46
Re: รบกวนผู้รู้หน่อยครับ
« Reply #2 on: ธันวาคม 20, 2010, 02:38:18 pm »
ขอบคุณมากครับ

 ;D ;D ;D