跳至内容

交易属性

交易属性

一个交易反映了以订单为基础的交易操作 执行,包括交易要求。每个交易都通过属性描述来获得有关信息,为了获取属性值,使用 HistoryDealGet…() 函数类型,从类似项目中获得返回值。

函数 HistoryDealGetInteger()

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_MAGIClong
DEAL_REASON交易执行的原因或源ENUM_DEAL_REASON
DEAL_POSITION_ID仓位标识符在该交易持仓、修正或者平仓时,每个位置都有一个独特的标识符,为交易对象它被委派到所有执行订单,在全部方位使用期long

函数 HistoryDealGetDouble()

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止盈水平

- 进场交易和反转交易使用原始订单中的止盈值,基于该值进行开仓或反向开仓
- 出场交易使用平仓时持仓的止盈值
双精度

函数 HistoryDealGetString()

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该交易的执行源于公司行为:合并或重命名证券、将客户转移到另一个账户等