# 枚举常量
# 委托状态OrderStatus
enum OrderStatus
{
OrderStatus_Unknown = 0,
OrderStatus_New = 1, //已报
OrderStatus_PartiallyFilled = 2, //部成
OrderStatus_Filled = 3, //已成
OrderStatus_Canceled = 5, //已撤
OrderStatus_PendingCancel = 6, //待撤
OrderStatus_Rejected = 8, //已拒绝
OrderStatus_PendingNew = 10, //待报
OrderStatus_Expired = 12, //已过期
OrderStatus_PendingTrigger = 15 // 待触发, CTP条件单
OrderStatus_Triggered = 16 // 已触发, CTP条件单
};
# 委托方向OrderSide
enum OrderSide
{
OrderSide_Unknown = 0,
OrderSide_Buy = 1, //买入
OrderSide_Sell = 2, //卖出
};
# 委托类型OrderType
enum OrderType
{
OrderType_Unknown = 0,
OrderType_Limit = 1, //限价委托
OrderType_Market = 2, //市价委托
// 终端3.18.0.0以上新增
// 上交所
OrderType_Limit = 1 // 限价
OrderType_Market = 2 // 市价(默认五档即成转限)
OrderType_Market_BOC = 20 // 市价对方最优价格(best of counterparty)
OrderType_Market_BOP = 21 // 市价己方最优价格(best of party)
OrderType_Market_B5TC = 24 // 市价最优五档剩余撤销(best 5 then cancel)
OrderType_Market_B5TL = 25 // 市价最优五档剩余转限价(best 5 then limit)
// 深交所
OrderType_Limit = 1 // 限价
OrderType_Market = 2 // 市价(默认对方最优价)
OrderType_Market_BOC = 20 // 市价对方最优价格(best of counterparty)
OrderType_Market_BOP = 21 // 市价己方最优价格(best of party)
OrderType_Market_FAK = 22 // 市价即时成交剩余撤销(fill and kill)
OrderType_Market_FOK = 23 // 市价即时全额成交或撤销(fill or kill)
OrderType_Market_B5TC = 24 // 市价最优五档剩余撤销(best 5 then cancel)
// 大商所
OrderType_Limit = 1 // 限价
OrderType_Limit_FAK = 10 // 限价即时成交剩余撤销 (fill and kill)
OrderType_Limit_FOK = 11 // 限价即时全额成交或撤销 (fill or kill)
OrderType_Market = 2 // 市价
OrderType_Market_FAK = 22 // 市价即时成交剩余撤销(fill and kill)
OrderType_Market_FOK = 23 // 市价即时全额成交或撤销(fill or kill)
// 郑商所
OrderType_Limit = 1 // 限价
OrderType_Market = 2 // 市价
OrderType_Market_FOK = 23 // 市价即时全额成交或撤销(fill or kill)
// 上期所和上能所
OrderType_Limit = 1 // 限价
OrderType_Limit_FAK = 10 // 限价即时成交剩余撤销 (fill and kill)
OrderType_Limit_FOK = 11 // 限价即时全额成交或撤销 (fill or kill)
// 中金所
OrderType_Limit = 1 // 限价
OrderType_Limit_FAK = 10 // 限价即时成交剩余撤销 (fill and kill)
OrderType_Limit_FOK = 11 // 限价即时全额成交或撤销 (fill or kill)
OrderType_Market_B5TC = 24 // 市价最优五档剩余撤销(best 5 then cancel)
OrderType_Market_B5TL = 25 // 市价最优五档剩余转限价(best 5 then limit)
OrderType_Market_BOPC = 27 // 市价最优价即时成交剩余撤销(best of price then cancel)
OrderType_Market_BOPL = 28 // 市价最优价即时成交剩余转限价(best of price then limit)
// 广期所
OrderType_Limit = 1 // 限价
OrderType_Limit_FAK = 10 // 限价即时成交剩余撤销 (fill and kill)
OrderType_Limit_FOK = 11 // 限价即时全额成交或撤销 (fill or kill)
OrderType_Market = 2 // 市价
OrderType_Market_FAK = 22 // 市价即时成交剩余撤销(fill and kill)
OrderType_Market_FOK = 23 // 市价即时全额成交或撤销(fill or kill)
};
# 执行回报类型ExecType
enum ExecType
{
ExecType_Trade = 15, //成交
ExecType_CancelRejected = 19, //撤单被拒绝
};
# 开平仓类型PositionEffect
enum PositionEffect
{
PositionEffect_Unknown = 0,
PositionEffect_Open = 1, //开仓
PositionEffect_Close = 2, //平仓,具体语义取决于对应的交易所(实盘上期所和上海能源所不适用,上期所和上海能源所严格区分平今平昨,需要用3和4)
PositionEffect_CloseToday = 3, //平今仓
PositionEffect_CloseYesterday = 4, //平昨仓(只适用于期货,不适用股票,股票用2平仓)
};
# 持仓方向PositionSide
enum PositionSide
{
PositionSide_Unknown = 0,
PositionSide_Long = 1, //多方向
PositionSide_Short = 2, //空方向
};
# 订单拒绝原因OrderRejectReason
enum OrderRejectReason
{
OrderRejectReason_Unknown = 0, //未知原因
OrderRejectReason_RiskRuleCheckFailed = 1, //不符合风控规则
OrderRejectReason_NoEnoughCash = 2, //资金不足
OrderRejectReason_NoEnoughPosition = 3, //仓位不足
OrderRejectReason_IllegalAccountId = 4, //非法账户ID
OrderRejectReason_IllegalStrategyId = 5, //非法策略ID
OrderRejectReason_IllegalSymbol = 6, //非法交易代码
OrderRejectReason_IllegalVolume = 7, //非法委托量
OrderRejectReason_IllegalPrice = 8, //非法委托价
OrderRejectReason_AccountDisabled = 10, //交易账号被禁止交易
OrderRejectReason_AccountDisconnected = 11, //交易账号未连接
OrderRejectReason_AccountLoggedout = 12, //交易账号未登录
OrderRejectReason_NotInTradingSession = 13, //非交易时段
OrderRejectReason_OrderTypeNotSupported = 14, //委托类型不支持
OrderRejectReason_Throttle = 15, //流控限制
OrderRejectReason_SymbolSusppended = 16, //交易代码停牌
OrderRejectReason_Internal = 999, //内部错误
CancelOrderRejectReason_OrderFinalized = 101, //委托已完成
CancelOrderRejectReason_UnknownOrder = 102, //未知委托
CancelOrderRejectReason_BrokerOption = 103, //柜台设置
CancelOrderRejectReason_AlreadyInPendingCancel = 104, //委托撤销中
};
# 仓位变更原因CashPositionChangeReason
enum CashPositionChangeReason
{
CashPositionChangeReason_Unknown = 0,
CashPositionChangeReason_Trade = 1, //交易
CashPositionChangeReason_Inout = 2, //出入金/出入持仓
CashPositionChangeReason_Dividend = 3, //分红送股
};
# 交易账户状态AccountState
enum AccountState
{
State_UNKNOWN = 0, //未知
State_CONNECTING = 1, //连接中
State_CONNECTED = 2, //已连接
State_LOGGEDIN = 3, //已登录
State_DISCONNECTING = 4, //断开中
State_DISCONNECTED = 5, //已断开
State_ERROR = 6 //错误
};
# 算法单状态,暂停/恢复算法单时有效AlgoOrderStatus
enum AlgoOrderStatus
{
AlgoOrderStatus_Unknown = 0,
AlgoOrderStatus_Resume = 1, //恢复母单
AlgoOrderStatus_Pause = 2, //暂停母单
AlgoOrderStatus_PauseAndCancelSubOrders = 3 //暂算母单并撤子单
};
# 头寸来源(仅适用融券)PositionSrc
enum PositionSrc
{
PositionSrc_Unknown = 0,
PositionSrc_L1 = 1, //普通池
PositionSrc_L2 = 2 //专项池
};
# 证券类型SecurityType
enum SecurityType
{
SecurityType_Unknown = 0,
SecurityType_Stock = 1, //股票
SecurityType_Fund = 2, //基金
SecurityType_Index = 3, //指数
SecurityType_Future = 4, //期货
SecurityType_Option = 5, //期权
SecurityType_Credit = 6, //两融
SecurityType_Bond = 7, //债券
SecurityType_Bond_Convertible = 8 //可债券
};
# 业务类型OrderBusiness
enum OrderBusiness
{
OrderBusiness_NORMAL = 0, //普通交易
OrderBusiness_STOCK_BUY = 1, //股票买入
OrderBusiness_STOCK_SELL = 2, //股票卖出
OrderBusiness_MARKET_MAKING = 6, //做市交易
OrderBusiness_FUTURE_BUY_OPEN = 10, //期货买入开仓
OrderBusiness_FUTURE_SELL_CLOSE = 11, //期货卖出平仓
OrderBusiness_FUTURE_SELL_CLOSE_TODAY = 12, //期货卖出平今
OrderBusiness_FUTURE_SELL_CLOSE_YESTERDAY = 13, //期货卖出平昨
OrderBusiness_FUTURE_SELL_OPEN = 14, //期货卖出开仓
OrderBusiness_FUTURE_BUY_CLOSE = 15, //期货买入平仓
OrderBusiness_FUTURE_BUY_CLOSE_TODAY = 16, //期货买入平今
OrderBusiness_FUTURE_BUY_CLOSE_YESTERDAY = 17, //期货买入平昨
OrderBusiness_FUTURE_CTP_CONDITIONAL_ORDER = 18, //期货CTP条件单
OrderBusiness_IPO_BUY = 100, //新股申购
OrderBusiness_CREDIT_BOM = 200, //融资买入(buying on margin)
OrderBusiness_CREDIT_SS = 201, //融券卖出(short selling)
OrderBusiness_CREDIT_RSBBS = 202, //买券还券(repay share by buying share)
OrderBusiness_CREDIT_RCBSS = 203, //卖券还款(repay cash by selling share)
OrderBusiness_CREDIT_DRS = 204, //直接还券(directly repay share)
OrderBusiness_CREDIT_DRC = 211, //直接还款(directly repay cash)
OrderBusiness_CREDIT_CPOM = 205, //融资平仓(close position on margin)
OrderBusiness_CREDIT_CPOSS = 206, //融券平仓(close position on short selling)
OrderBusiness_CREDIT_BOC = 207, //担保品买入(buying on collateral)
OrderBusiness_CREDIT_SOC = 208, //担保品卖出(selling on collateral)
OrderBusiness_CREDIT_CI = 209, //担保品转入(collateral in)
OrderBusiness_CREDIT_CO = 210, //担保品转出(collateral out)
OrderBusiness_ETF_BUY = 301, //ETF申购(purchase)
OrderBusiness_ETF_RED = 302, //ETF赎回(redemption)
OrderBusiness_FUND_SUB = 303, //基金认购(subscribing)
OrderBusiness_FUND_BUY = 304, //基金申购(purchase)
OrderBusiness_FUND_RED = 305, //基金赎回(redemption)
OrderBusiness_FUND_CONVERT = 306, //基金转换(convert)
OrderBusiness_FUND_SPLIT = 307, //基金分拆(split)
OrderBusiness_FUND_MERGE = 308, //基金合并(merge)
OrderBusiness_BOND_RRP = 400, //债券逆回购(reverse repurchase agreement (RRP) or reverse repo)
OrderBusiness_BOND_CONVERTIBLE_BUY = 401, //可转债申购(purchase)
OrderBusiness_BOND_CONVERTIBLE_CALL = 402, //可转债转股
OrderBusiness_BOND_CONVERTIBLE_PUT = 403, //可转债回售
OrderBusiness_BOND_CONVERTIBLE_PUT_CANCEL = 404 //可转债回售撤销
};
# 条件委托触发方式
enum OrderTriggerType
{
OrderTriggerType_Unknown = 0,
OrderTriggerType_LastPriceGreaterThanStopPrice = 1, //最新价大于条件价
OrderTriggerType_LastPriceGreaterEqualStopPrice = 2, //最新价大于等于条件价
OrderTriggerType_LastPriceLessThanStopPrice = 3, //最新价小于条件价
OrderTriggerType_LastPriceLessEqualStopPrice = 4, //最新价小于等于条件价
OrderTriggerType_AskPriceGreaterThanStopPrice = 5, //卖一价大于条件价
OrderTriggerType_AskPriceGreaterEqualStopPrice = 6, //卖一价大于等于条件价
OrderTriggerType_AskPriceLessThanStopPrice = 7, //卖一价小于条件价
OrderTriggerType_AskPriceLessEqualStopPrice = 8, //卖一价小于等于条件价
OrderTriggerType_BidPriceGreaterThanStopPrice = 9, //买一价大于条件价
OrderTriggerType_BidPriceGreaterEqualStopPrice = 10, //买一价大于等于条件价
OrderTriggerType_BidPriceLessThanStopPrice = 11, //买一价小于条件价
OrderTriggerType_BidPriceLessEqualStopPrice = 12 //买一价小于等于条件价
};