外汇邦外汇论坛 - 中国最大的外汇投资论坛,全球华人外汇交易者交流平台!

 找回密码
 立即注册
查看: 8301|回复: 0

OrderSelect 函数使用说明

[复制链接]

397

主题

458

帖子

5637

积分

论坛元老

Rank: 8Rank: 8

积分
5637
发表于 2016-6-30 09:58:39 | 显示全部楼层 |阅读模式
本帖最后由 FxTrading 于 2016-6-30 11:28 编辑

OrderSelect ()  函数定义

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

OrderSelect ()  函数 参数说明

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

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());
复制代码

 

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

联系我们|外汇邦外汇论坛

GMT+8, 2024-11-25 13:29

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表