需求如下:
若多单订单总数小于10,就执行建仓命令purchase1,否则不执行。
遍历多有多单的订单,若某个订单持有时间超过10分钟,按现价平仓。
大家如下代码那些要修改。
int Magic;
int t=Hour();
int a;
int num=OrdersTotal();
void purchase1()
{
int c1 = 1000*(Close[0]-Close[1]);
if(c1>5 && c1<50) OrderSend("EURUSD.p", OP_BUY, 0.01, Ask, 26,0, Bid+35*Point, 1111111, 0,5);
}
void k_purchase1()
{
if (num<10 && OrderType()==OP_BUY && OrderSymbol()==Symbol()) purchase1();
for(int i=num-1; i>=0; i--)
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==TRUE)
if(OrderType()==OP_BUY && OrderSymbol()==Symbol() && OrderMagicNumber()==1111111)
a++;
if(int(TimeCurrent()-OrderOpenTime())>600) OrderClose(OrderTicket(),0.01,Bid,10);
}
void OnTick()
{
k_purchase1();
}
|