平仓数值

19.png


1、外汇任何的平仓和开仓动作,都必须校验一下,即会在主程序中再度校验,如果还有单子,则会继续调用子程序,完成平仓;做EA,只要涉及开仓平仓,必须校验,历史回测看不出来,模拟盘也看不出来,但是实盘就会出问题,因为交易平台,有时不那么听话; 
2、EA的指令运行比平仓动作快的多,程序的运行,一个循环,哪怕100张单子,也是一下全部发出平仓指令,而第一张单子,都不太可能完成平仓,所以,这个子程序,可以实现不 
丢单的平仓。 
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true) 
这句,这个i,当你执行完一个平单之后,i变成1 
后面的执行就会有问题,有一些单就不会去平 
如果有三个单order[0,1,2],在平了order[0]之后就剩两个单 
变成order[0,1],orderstotal也变成2 
下面只能平order[1] 
程序如下: 
//子程序:平买单 
int close_buy() 

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

if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true) 

if(OrderType()==OP_BUY) // 平市价成交单 

OrderClose(OrderTicket(),OrderLots(),Bid,30,Red); 

if(OrderType()==OP_BUYLIMIT||OrderType()==OP_BUYSTOP) // 平挂单 

OrderDelete(OrderTicket()); 




//子程序:平卖单 
int close_sell() 

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

if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true) 

if(OrderType()==OP_SELL) // 平市价成交单 

OrderClose(OrderTicket(),OrderLots(),Ask,30,Red); 

if(OrderType()==OP_SELLLIMIT||OrderType()==OP_SELLSTOP) // 平挂单 

OrderDelete(OrderTicket()); 



}

 

另一种写法:

    

int CloseBuyOrders()
{
  int result,total=OrdersTotal();
  for (int cnt=total-1;cnt>=0;cnt--)
  {
    if(OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))//增加这句确认的
    {
        if(OrderMagicNumber()==魔术号码 && OrderSymbol()==Symbol())
         {
            switch(OrderType())
            {
               case OP_BUY:result=OrderClose(OrderTicket(),OrderLots(),Bid,划点,Red);
               case OP_BUYLIMIT:
               case OP_BUYSTOP:
               result=OrderDelete(OrderTicket());
            }
         }
     }
   }
  return(0);
}

//|---------close sell orders

int CloseSellOrders()
{
  int result,total=OrdersTotal();
  for(int cnt=total-1;cnt>=0;cnt--)
  {
    if(OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))
    {
      if(OrderMagicNumber()==魔术号码 && OrderSymbol()==Symbol())
      {   
        switch(OrderType())
        { 
          case OP_SELL:result=OrderClose(OrderTicket(),OrderLots(),Ask,划点);
          case OP_SELLLIMIT:
          case OP_SELLSTOP:
          result=OrderDelete(OrderTicket());
        }
       }
      }
   }
  return(0);
}



微信公众号:天泓评测


本博客所有文章如无特别注明均为原创。作者:天泓评测
分享到:更多

相关推荐

发表评论

路人甲 表情
Ctrl+Enter快速提交

网友评论(0)