评论

收藏

查询价格在某点一定范围的持仓单的数量

avatar ztrangle | 1135 人阅读 | 0 人评论 | 2018-03-06

本帖最后由 ztrangle 于 2018-3-7 21:04 编辑

求一段,查询持仓价格在某点(例如1333),一定范围(例如+-0.2)内的多单或空单持仓手数自的代码。谢谢!自己写了一段自定义查询函数,如下:
double NBNumber()
{
      double BLT,Blt,BlT;
      BlT=(下单变差+滑点+1)*Point;//目标值中心范围
for (int i=0; i<OrdersTotal(); i++)
    {
       if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break;
      {
       if (OrderType()==OP_BUY  && OrderSymbol()==Symbol() && OrderMagicNumber() == MagicNumber )   
         {
           Blt=ABS(AskGridPrice(),OrderOpenPrice()); //订单持仓值与中心值的绝对值,这个调试没问题
           if (Blt>=BlT) continue;
           BLT+= OrderLots();
         }  
       }  
    }  
      return (BLT);
}  

//反复测试了几次,最后一个if条件不起作用,导致返回的数据是所有持仓的数据,并且输出的结果是循环了两次的值。这样写法问题在哪?如何写才能得到正确返回值,求大神指导,谢谢啦{:132_160:}
""
还没有人打赏,支持一下
您需要登录后才可以回帖 登录 | 注册 微信登录

EA之家评论守则