Skip to content

CTrade类 | 交易配置和报单信息

CTrade类的对象可配置全局的报单参数,对每一笔报单都有效。对象保留了最后一笔报单的报单信息和报单回报信息。

交易配置

LogLevel

LogLevel(const ENUM_LOG_LEVELS log_level) -> void

功能:配置日志级别,默认:LOG_LEVEL_ALL

参数:log_level:日志级别

返回值类型:无

关于 | 日志级别

MQL5
enum ENUM_LOG_LEVELS {
   LOG_LEVEL_NO    = 0,     // 无日志
   LOG_LEVEL_ERRORS = 1,    // 错误日志
   LOG_LEVEL_ALL   = 2      // 全部日志
}

SetAsyncMode

SetAsyncMode(const bool mode) -> void

功能:配置是否异步报单,MT5CTP总是异步报单,这个参数对MT5CTP无意义,默认值为:false,历史数据回测无影响

参数:mode:true为异步报单,false为同步报单

返回值类型:无

SetExpertMagicNumber

SetExpertMagicNumber(const ulong magic) -> void

功能:配置EA的自定义标识:魔幻数

参数:magic:自定义标识

返回值类型:无

SetDeviationInPoints

SetDeviationInPoints(const ulong deviation) -> void

功能:配置报单滑点,MT5CTP默认报单滑点为0

参数:deviation:报单合约最小变动价位的数量,ticks

返回值类型:无

SetTypeFilling

SetTypeFilling(const ENUM_ORDER_TYPE_FILLING filling) -> void

功能:配置特殊报单指令类型

参数:filling:报单指令类型

返回值类型:无

关于 | 报单指令类型

ORDER_FILLING_RETURN : 无特殊指令类型(MT5CTP默认指令类型)

ORDER_FILLING_FOK : 全部成交否则撤销,交易所FOK指令

ORDER_FILLING_IOC : 立即成交剩余撤销,交易所FAK指令

SetTypeFillingBySymbol

SetTypeFillingBySymbol(const string symbol) -> bool

功能:提取合约信息,配置特殊报单指令类型

参数:symbol:合约代码

返回值类型:bool

SetMarginMode

SetMarginMode(void) -> void

功能:配置账户持仓对冲模式,MT5CTP固定使用 ACCOUNT_MARGIN_MODE_RETAIL_HEDGING 模式

参数:无

返回值类型:无

报单信息 | Request

Request(MqlTradeRequest &request) const -> void

功能:提取报单请求的信息

参数:request:MqlTradeRequest类型的引用参数

返回值类型:无

RequestAction(void) const -> ENUM_TRADE_REQUEST_ACTIONS

功能:提取报单信息的交易操作类型

参数:无

返回值类型:ENUM_TRADE_REQUEST_ACTIONS

RequestActionDescription(void) const -> string

功能:提取报单信息的交易操作类型的说明

参数:无

返回值类型:string

RequestMagic(void) const -> ulong

功能:提取报单信息的自定义标识:魔幻数

参数:无

返回值类型:ulong

RequestOrder(void) const -> ulong

功能:提取报单信息的报单标识,MT5CTP用于撤单的报单标识

参数:无

返回值类型:ulong

RequestPosition(void) const -> ulong

功能:提取报单信息的持仓标识,MT5CTP用于平仓的持仓标识

参数:无

返回值类型:ulong

RequestPositionBy(void) const -> ulong

功能:提取报单信息的持仓标识,MT5CTP用于多账户的账户序号

参数:无

返回值类型:ulong

RequestSymbol(void) const -> string

功能:提取报单信息的合约代码

参数:无

返回值类型:string

RequestVolume(void) const -> double

功能:提取报单信息的数量,double类型兼容CTP报单数量long类型

参数:无

返回值类型:double

RequestPrice(void) const -> double

功能:提取报单信息的价格

参数:无

返回值类型:double

RequestStopLimit(void) const -> double

功能:提取报单信息的触发价格

参数:无

返回值类型:double

RequestSL(void) const -> double

功能:提取报单信息的止损价

参数:无

返回值类型:double

RequestTP(void) const -> double

功能:提取报单信息的止盈价

参数:无

返回值类型:double

RequestDeviation(void) const -> ulong

功能:提取报单信息的滑点数

参数:无

返回值类型:ulong

RequestType(void) const -> ENUM_ORDER_TYPE

功能:提取报单信息的买卖类型

参数:无

返回值类型:ENUM_ORDER_TYPE

RequestTypeDescription(void) const -> string

功能:提取报单信息的买卖类型的说明

参数:无

返回值类型:string

RequestTypeFilling(void) const -> ENUM_ORDER_TYPE_FILLING

功能:提取报单信息的特殊指令类型

参数:无

返回值类型:ENUM_ORDER_TYPE_FILLING

RequestTypeFillingDescription(void) const -> string

功能:提取报单信息的特殊指令类型

参数:无

返回值类型:string

RequestTypeTime(void) const -> ENUM_ORDER_TYPE_TIME

功能:提取报单信息的有效期类型

参数:无

返回值类型:ENUM_ORDER_TYPE_TIME

RequestTypeTimeDescription(void) const -> string

功能:提取报单信息的有效期类型的说明

参数:无

返回值类型:string

RequestExpiration(void) const -> datetime

功能:提取报单信息的到期时间,与有效期类型配合使用,MT5CTP不支持设置报单有效期

参数:无

返回值类型:datetime

RequestComment(void) const -> string

功能:提取报单信息的自定义标识:comment

参数:无

返回值类型:string

报单结果信息 | Result

Result(MqlTradeResult &result) const -> void

功能:提取报单的回报信息

参数:result:MqlTradeResult类型的引用参数

返回值类型:无

ResultRetcode(void) const -> uint

功能:提取报单回报信息的应答码,匹配MQL的错误代码ErrorCode

参数:无

返回值类型:uint

ResultRetcodeDescription(void) const -> string

功能:提取报单回报信息的应答码的说明

参数:无

返回值类型:string

ResultRetcodeExternal(void) const -> int

功能:提取报单回报信息的外部系统应答码,MT5CTP无意义

参数:无

返回值类型:int

ResultDeal(void) const -> ulong

功能:提取报单回报信息的成交编码,MT5CTP无意义

参数:无

返回值类型:ulong

ResultOrder(void) const -> ulong

功能:提取报单回报信息的报单标识,报单成功后MT5CTP赋给报单的报单标识

参数:无

返回值类型:ulong

ResultVolume(void) const -> double

功能:提取报单回报信息的数量,MT5CTP无意义

参数:无

返回值类型:double

ResultPrice(void) const -> double

功能:提取报单回报信息的价格,MT5CTP无意义

参数:无

返回值类型:double

ResultBid(void) const -> double

功能:提取报单回报信息的价格,MT5CTP无意义

参数:无

返回值类型:double

ResultAsk(void) const -> double

功能:提取报单回报信息的价格,MT5CTP无意义

参数:无

返回值类型:double

ResultComment(void) const -> string

功能:提取报单回报信息,MT5CTP用于错误信息回报

参数:无

返回值类型:string

报单检查信息 | CheckResult

CheckResult(MqlTradeCheckResult &check_result) const -> void

功能:提取报单检查的回报信息

参数:check_result:MqlTradeCheckResult类型的引用参数

返回值类型:无

CheckResultRetcode(void) const -> uint

功能:提取报单检查的应答码

参数:无

返回值类型:uint

CheckResultRetcodeDescription(void) const -> string

功能:提取报单检查的应答码说明

参数:无

返回值类型:string

CheckResultBalance(void) const -> double

功能:提取报单检查信息的权益,MT5CTP表示交易执行后的余额

参数:无

返回值类型:double

CheckResultEquity(void) const -> double

功能:提取报单检查信息的资金,MT5CTP无意义

参数:无

返回值类型:double

CheckResultProfit(void) const -> double

功能:提取报单检查信息的盈亏,MT5CTP无意义

参数:无

返回值类型:double

CheckResultMargin(void) const -> double

功能:提取报单检查信息的保证金占用,MT5CTP表示报单实际保证金占用

参数:无

返回值类型:double

CheckResultMarginFree(void) const -> double

功能:提取报单检查信息的可用资金,MT5CTP表示单位保证金(合约1手的保证金)

参数:无

返回值类型:double

CheckResultMarginLevel(void) const -> double

功能:提取报单检查信息的风险度,MT5CTP无意义

参数:无

返回值类型:double

CheckResultComment(void) const -> string

功能:提取报单检查信息的备注说明,MT5CTP无意义

参数:无

返回值类型:string