Skip to content

条件单及报单操作

条件单是指报单到经纪公司CTP服务器,按一定条件等待触发的订单,条件触发后报单会被报送到交易所。是否支持条件单和条件单使用的约束,需咨询经纪公司。

MT5CTP条件单目前仅支持开仓条件单。

条件单或报单后形成挂单,可以撤单和修改报单信息。

条件单报单

OrderOpen

OrderOpen(

const string symbol,                // 报单合约代码
const ENUM_ORDER_TYPE order_type,   // 报单类型
const long volume,                  // 报单数量
const double price,                 // 报单价格
const double stoplimit_price,       // 报单触发价格
const double sl,                    // 报单止损价,已失效
const double tp,                    // 报单止盈价,已失效
const int account_index = 0         // 报单账户的序号

) -> bool

功能:按参数配置报开仓条件单到CTP柜台,报单前有多重检查:是否允许自动交易、账户是否登录、报单合约是否交易时间、报单类型和报单信息是否有效

参数:

symbol:报单合约代码,必须参数

order_type:报单类型,必须参数

ORDER_TYPE_BUY_LIMIT ->限价买入(低买);
ORDER_TYPE_BUY_STOP ->突破买入(高买);
ORDER_TYPE_SELL_LIMIT ->限价卖出(高卖);
ORDER_TYPE_SELL_STOP ->突破卖出(低卖)

volume:报单数量,必须参数,整数类型

price:报单价格,必须参数,0.0标识市价单

stoplimit_price:报单触发价格,必须参数

sl:报单止损价,可选参数,已失效

tp:报单止盈价,可选参数,已失效

account_index:报单账户的序号,可选参数,单账户默认参数即可,多账户操作需指定账户序号

返回值类型:bool,是否报单成功。报单成功指报单信息被CTP柜台接收,价格触发后以price价格向交易所报单,不能保证实时成交,即便成交可能成交价格也可能与预期报单价格不一致,务必注意。

BuyLimit

BuyLimit(

const string symbol,            // 报单合约代码
const long volume,              // 报单数量
const double price,             // 报单价格&报单触发价格
const double sl = 0.0,          // 报单止损价,已失效
const double tp = 0.0,          // 报单止盈价,已失效
const int account_index = 0     // 报单账户的序号

) -> bool

功能:按参数配置报ORDER_TYPE_BUY_LIMIT单到CTP柜台,实际调用'OrderOpen'方法

参数:

symbol:报单合约代码,必须参数,'NULL'或空字符串指图表合约

volume:报单数量,必须参数,整数类型

price:报单价格&报单触发价格,必须参数,价格触发时以触发价格报单

sl:报单止损价,可选参数,已失效

tp:报单止盈价,可选参数,已失效

account_index:报单账户的序号,可选参数,单账户默认参数即可,多账户操作需指定账户序号

返回值类型:bool,是否报单成功。报单成功指报单信息被CTP柜台接收,价格触发后以price价格向交易所报单,不能保证实时成交,即便成交可能成交价格也可能与预期报单价格不一致,务必注意。

BuyStop

BuyStop(

const string symbol,            // 报单合约代码
const long volume,              // 报单数量
const double price,             // 报单价格&报单触发价格
const double sl = 0.0,          // 报单止损价,已失效
const double tp = 0.0,          // 报单止盈价,已失效
const int account_index = 0     // 报单账户的序号

) -> bool

功能:按参数配置报ORDER_TYPE_BUY_STOP单到CTP柜台,实际调用'OrderOpen'方法

参数:

symbol:报单合约代码,必须参数,'NULL'或空字符串指图表合约

volume:报单数量,必须参数,整数类型

price:报单价格&报单触发价格,必须参数,价格触发时以触发价格报单

sl:报单止损价,可选参数,已失效

tp:报单止盈价,可选参数,已失效

account_index:报单账户的序号,可选参数,单账户默认参数即可,多账户操作需指定账户序号

返回值类型:bool,是否报单成功。报单成功指报单信息被CTP柜台接收,价格触发后以price价格向交易所报单,不能保证实时成交,即便成交可能成交价格也可能与预期报单价格不一致,务必注意。

SellLimit

SellLimit(

const string symbol,            // 报单合约代码
const long volume,              // 报单数量
const double price,             // 报单价格&报单触发价格
const double sl = 0.0,          // 报单止损价,已失效
const double tp = 0.0,          // 报单止盈价,已失效
const int account_index = 0     // 报单账户的序号

) -> bool

功能:按参数配置报ORDER_TYPE_SELL_LIMIT单到CTP柜台,实际调用'OrderOpen'方法

参数:

symbol:报单合约代码,必须参数,'NULL'或空字符串指图表合约

volume:报单数量,必须参数,整数类型

price:报单价格&报单触发价格,必须参数,价格触发时以触发价格报单

sl:报单止损价,可选参数,已失效

tp:报单止盈价,可选参数,已失效

account_index:报单账户的序号,可选参数,单账户默认参数即可,多账户操作需指定账户序号

返回值类型:bool,是否报单成功。报单成功指报单信息被CTP柜台接收,价格触发后以price价格向交易所报单,不能保证实时成交,即便成交可能成交价格也可能与预期报单价格不一致,务必注意。

SellStop

SellStop(

const string symbol,            // 报单合约代码
const long volume,              // 报单数量
const double price,             // 报单价格&报单触发价格
const double sl = 0.0,          // 报单止损价,已失效
const double tp = 0.0,          // 报单止盈价,已失效
const int account_index = 0     // 报单账户的序号

) -> bool

功能:按参数配置报ORDER_TYPE_SELL_STOP单到CTP柜台,实际调用'OrderOpen'方法

参数:

symbol:报单合约代码,必须参数,'NULL'或空字符串指图表合约

volume:报单数量,必须参数,整数类型

price:报单价格&报单触发价格,必须参数,价格触发时以触发价格报单

sl:报单止损价,可选参数,已失效

tp:报单止盈价,可选参数,已失效

account_index:报单账户的序号,可选参数,单账户默认参数即可,多账户操作需指定账户序号

返回值类型:bool,是否报单成功。报单成功指报单信息被CTP柜台接收,价格触发后以price价格向交易所报单,不能保证实时成交,即便成交可能成交价格也可能与预期报单价格不一致,务必注意。

报单操作

OrderModify

(已失效)OrderModify(const string ticket, const double sl, const double tp) -> bool

功能:修改指定报单标识的止损价、止盈价,已失效

参数:

ticket:报单标识,必须参数

sl:止损价,必须参数

tp:止盈价,必须参数

返回值类型:bool

(已失效)OrderModify(const int order, const double sl, const double tp) -> bool

功能:修改指定报单序号的止损价、止盈价,已失效

参数:

ticket:报单序号,必须参数

sl:止损价,必须参数

tp:止盈价,必须参数

返回值类型:bool

OrderModify(

const string ticket,            // 报单标识
const long volume,              // 报单数量
const double price,             // 报单价格
const double stoplimit_price    // 报单触发价格

) -> bool

功能:修改指定报单标识的报单数量、报单价格、报单触发价格,CTP不支持修改报单信息,MT5CTP实际执行了撤单后重新下单的操作

参数:

ticket:报单标识,必须参数

volume:报单数量,必须参数

price:报单价格,必须参数,0.0标识市价单

stoplimit_price:报单触发价格,必须参数

返回值类型:bool

OrderModify(

const int order,                // 报单序号
const long volume,              // 报单数量
const double price,             // 报单价格
const double stoplimit_price    // 报单触发价格

) -> bool

功能:修改指定报单序号的报单数量、报单价格、报单触发价格,CTP不支持修改报单信息,MT5CTP实际执行了撤单后重新下单的操作

参数:

ticket:报单序号,必须参数,报单序号从1开始

volume:报单数量,必须参数

price:报单价格,必须参数,0.0标识市价单

stoplimit_price:报单触发价格,必须参数

返回值类型:bool

OrderModify(

const string ticket,            // 报单标识
const long volume,              // 报单数量
const double price,             // 报单价格
const double stoplimit_price    // 报单触发价格
const double sl,                // 报单止损价,已失效
const double tp                 // 报单止盈价,已失效

) -> bool

功能:修改指定报单标识的报单数量、报单价格、报单触发价格、止损价、止盈价,CTP不支持修改报单信息,MT5CTP实际执行了撤单后重新下单的操作

参数:

ticket:报单标识,必须参数

volume:报单数量,必须参数

price:报单价格,必须参数,0.0标识市价单

stoplimit_price:报单触发价格,必须参数

sl:报单止损价,可选参数,已失效

tp:报单止盈价,可选参数,已失效

返回值类型:bool

OrderModify(

const int order,                // 报单序号
const long volume,              // 报单数量
const double price,             // 报单价格
const double stoplimit_price    // 报单触发价格
const double sl,                // 报单止损价,已失效
const double tp                 // 报单止盈价,已失效

) -> bool

功能:修改指定报单序号的报单数量、报单价格、报单触发价格、止损价、止盈价,CTP不支持修改报单信息,MT5CTP实际执行了撤单后重新下单的操作

参数:

ticket:报单序号,必须参数,报单序号从1开始

volume:报单数量,必须参数

price:报单价格,必须参数,0.0标识市价单

stoplimit_price:报单触发价格,必须参数

sl:报单止损价,可选参数,已失效

tp:报单止盈价,可选参数,已失效

返回值类型:bool

OrderDelete

OrderDelete(const string ticket) -> bool

功能:撤销指定报单标识的报单,撤单前有多重检查:是否允许自动交易、账户是否登录、报单合约是否交易时间

参数: ticket:报单标识,必须参数

返回值类型:bool

OrderDelete(const int order) -> bool

功能:撤销指定报单序号的报单,撤单前有多重检查:是否允许自动交易、账户是否登录、报单合约是否交易时间

参数:order:报单序号,必须参数,报单序号从1开始

返回值类型:bool