OrderSelect ()  函数定义

  1.  
  2. bool  OrderSelect(
  3.    int     index,            // index or order ticket
  4.    int     select,           // flag
  5.    int     pool=MODE_TRADES  // mode
  6.    );
  7.  

OrderSelect ()  函数 参数说明

  1.  
  2. index  – 定单索引或订单号,这取决于第2个参数 
  3. select – 选定模式。可以为以下的任意值:
  4.          SELECT_BY_POS – 按定单索引即订单序号 (对于持仓单和挂单是按下单时间顺序,对于已平仓的历史单是平仓时间为顺序。)
  5.          SELECT_BY_TICKET – 按订单号(按定单编号,也即下单时MT4软件分配的订单号。)
  6. pool   – 可选的定单索引。当选择SELECT_BY_POS参数时,可以为以下的任意值:
  7.          MODE_TRADES (默认)- 来自交易的定单(开单和挂单),
  8.          MODE_HISTORY – 来自历史的定单(已平仓或取消的订单)。 
  9.  

OrderSelect ()  函数返回值

本函数选择一个订单,等待做进一步地处理。如果函数成功,返回TRUE,如果函数失败,返回FALSE。想要获得详细错误信息,必须调用GetLastError()函数。

注意事项

如果通过订单号选定定单,pool参数应忽略。此定单编号是其唯一识别符。
要找出所选订单的列表,必须对订单时间进行分析。如果订单时间为0,则说明该订单为进入市场的已成交单或已发出的挂单。
我们可以从订单类型区别已成交的订单和挂单。如果订单的平仓时间不等于0,此订单就是一个已经平仓的订单,或是一个已取消的挂单。

函数实例

  1.   if(OrderSelect(12470, SELECT_BY_TICKET)==true)
  2.     {
  3.      Print("order #12470 open price is ", OrderOpenPrice());
  4.      Print("order #12470 close price is ", OrderClosePrice());
  5.     }
  6.   else
  7.     Print("OrderSelect returned the error of ",GetLastError());
  8.  

 

发表评论

后才能评论