交易属性
交易属性
一个交易反映了以订单为基础的交易操作 执行,包括交易要求。每个交易都通过属性描述来获得有关信息,为了获取属性值,使用 HistoryDealGet…() 函数类型,从类似项目中获得返回值。
ENUM_DEAL_PROPERTY_INTEGER
| 标识符 | 描述 | 类型 |
|---|---|---|
| DEAL_TICKET | 交易标签。分配到每笔交易的唯一号码 | long |
| DEAL_ORDER | 交易 订单号 | long |
| DEAL_TIME | 交易时间 | datetime |
| DEAL_TIME_MSC | 以毫秒为单位计算01.01.1970以来交易执行的时间 | long |
| DEAL_TYPE | 交易类型 | ENUM_DEAL_TYPE |
| DEAL_ENTRY | 交易条目—允许进入、允许输出、颠倒 | ENUM_DEAL_ENTRY |
| DEAL_MAGIC | 订单幻数(参见 ORDER_MAGIC ) | long |
| DEAL_REASON | 交易执行的原因或源 | ENUM_DEAL_REASON |
| DEAL_POSITION_ID | 仓位标识符在该交易持仓、修正或者平仓时,每个位置都有一个独特的标识符,为交易对象它被委派到所有执行订单,在全部方位使用期 | long |
ENUM_DEAL_PROPERTY_DOUBLE
| 标识符 | 描述 | 类型 |
|---|---|---|
| DEAL_VOLUME | 成交量 | double |
| DEAL_PRICE | 成交价格 | double |
| DEAL_COMMISSION | 订单佣金关 | double |
| DEAL_SWAP | 关闭的积累交换 | double |
| DEAL_PROFIT | 交易利润 | double |
| DEAL_FEE | 执行交易之后立即收取的交易费用 | double |
| DEAL_SL | 止损水平 - 进场交易和反转交易使用原始订单中的止损值,基于该值进行开仓或反向开仓。 - 出场交易使用平仓时持仓的止损值 | 双精度 |
| DEAL_TP | 止盈水平 - 进场交易和反转交易使用原始订单中的止盈值,基于该值进行开仓或反向开仓 - 出场交易使用平仓时持仓的止盈值 | 双精度 |
ENUM_DEAL_PROPERTY_STRING
| 标识符 | 描述 | 类型 |
|---|---|---|
| DEAL_SYMBOL | 订单交易品种 | string |
| DEAL_COMMENT | 订单佣金 | string |
每笔订单都具有类型特征,允许在ENUM_DEAL_TYPE中列举价值。为了获得有关订单类型的信息,使用 HistoryDealGetInteger() 函数DEAL_TYPE 修饰语。
ENUM_DEAL_TYPE
| 标识符 | 描述 |
|---|---|
| DEAL_TYPE_BUY | 买入 |
| DEAL_TYPE_SELL | 卖出 |
| DEAL_TYPE_BALANCE | 结算 |
| DEAL_TYPE_CREDIT | 信贷 |
| DEAL_TYPE_CHARGE | 额外金额 |
| DEAL_TYPE_CORRECTION | 修正 |
| DEAL_TYPE_BONUS | 奖金 |
| DEAL_TYPE_COMMISSION | 额外手续费 |
| DEAL_TYPE_COMMISSION_DAILY | 日手续费 |
| DEAL_TYPE_COMMISSION_MONTHLY | 月手续费 |
| DEAL_TYPE_COMMISSION_AGENT_DAILY | 日代理手续费 |
| DEAL_TYPE_COMMISSION_AGENT_MONTHLY | 月代理手续费 |
| DEAL_TYPE_INTEREST | 利率 |
| DEAL_TYPE_BUY_CANCELED | 取消的买入交易。可能会有之前执行的买入交易被取消的情况。这样的话,之前执行的交易类型 (DEAL_TYPE_BUY) 会被改为 DEAL_TYPE_BUY_CANCELED,并且其利润/亏损归零。执行获得的利润/亏损会使用单独的结余操作被收费/取款。 |
| DEAL_TYPE_SELL_CANCELED | 取消的卖出交易。可能会有之前执行的卖出交易被取消的情况。这样的话,之前执行的交易类型 (DEAL_TYPE_SELL)会被改为 DEAL_TYPE_SELL_CANCELED,并且其利润/亏损归零。执行获得的利润/亏损会使用单独的结余操作被收费/取款。 |
| DEAL_DIVIDEND | 股息操作 |
| DEAL_DIVIDEND_FRANKED | 税务减免(免税)股息操作 |
| DEAL_TAX | 税费 |
订单不仅与建立在ENUM_DEAL_TYPE中的类型不同,也与改变方位的方式不同,这是一个简单的位置开仓,或者先前开仓的聚集(进入市场),如果相反方向订单覆盖了先前的开仓位置成交量,通过相似成交量(退出市场)的反向订单关闭位置。
所有情况在ENUM_DEAL_ENTRY值中都有描述。为了获得订单信息,使用HistoryDealGetInteger()函数DEAL_ENTRY 修饰语。
ENUM_DEAL_ENTRY
| 标识符 | 描述 |
|---|---|
| DEAL_ENTRY_IN | 进入 |
| DEAL_ENTRY_OUT | 出局 |
| DEAL_ENTRY_INOUT | 反面 |
| DEAL_ENTRY_OUT_BY | 通过反向持仓来平仓 |
交易执行的原因包含在DEAL_REASON属性之中。触发从移动程序端或MQL5程序下的订单,以及通过StopOut事件,变动预付款计算等等可以执行交易。可能的DEAL_REASON值会在ENUM_DEAL_REASON枚举中描述。对于来自结余,信贷,手续费和其他操作的非交易成交,DEAL_REASON_CLIENT会表示为原因。
ENUM_DEAL_REASON
| 标识符 | 描述 |
|---|---|
| DEAL_REASON_CLIENT | 因激活桌面程序端下单的订单来执行交易 |
| DEAL_REASON_MOBILE | 因激活移动程序端下单的订单来执行交易 |
| DEAL_REASON_WEB | 因激活网页平台下单的订单来执行交易 |
| DEAL_REASON_EXPERT | 因激活从MQL5程序下单的订单来执行交易,例如EA交易或脚本 |
| DEAL_REASON_SL | 因激活止损来执行交易 |
| DEAL_REASON_TP | 因激活止赢来执行交易 |
| DEAL_REASON_SO | 因Stop Out 事件来执行交易 |
| DEAL_REASON_ROLLOVER | 因rollover 来执行交易 |
| DEAL_REASON_VMARGIN | 收取变动预付款后执行交易 |
| DEAL_REASON_SPLIT | 宣布分割期间拥有持仓的品种进行分割(价格降低)后执行交易 |
| DEAL_REASON_CORPORATE_ACTION | 该交易的执行源于公司行为:合并或重命名证券、将客户转移到另一个账户等 |