Skip to main content

交易

下单

trade.NewOrder直接带入参数,或者使用trade.NewOrder2带入参数对象 NewOrder2需要使用New TCTradeWrapperAPILib.NOPFutOpt实例化参数对象

  • 下单参数
字段 类型 默认 注释
Account string 下单账户
BrokerID string 账户的 BrokerID
Symbol string 下单合约
Side OrderSide 买卖别 (复式单为整体买卖方向) 1:Buy 2:Sell
OrderQty int 下单数量
OrderType OrderType 1 : Market 市价单
2 : Limit 限价单
3 : Stop 停损单
4 : StopLimit 停损限价单
5 : 追踪停损价
6 : 追踪停损限价
7 : 触价发市价单
8 : 触价发limit限价单
9 : 追踪限价
10 : 对方价
11 : 本方价
15: 中间价
20 : 最优价
21 : 最优价转限价 (BSTL)
22 : 五档市价 (5LvlMKT)
23 : 五档市价转限价 (5LvlMTL)
24 : 市价转限价 (MTL)
25 : 一定范围市价
TimeInForce TimeInForce 0 : None None
1 : ROD 日内有效
2 : IOC 立即成交否则取消
3 : FOK 全部成交否则取消
PositionEffect PositionEffect 0 : 开仓
1 : 平仓
2 : 平今
3 : 平昨
4 : 自动判断开平
10 : 备兑开仓
11 : 备兑平仓
SymbolA string 复式单脚1商品TCore代码
SymbolB string 复式单脚2商品TCore代码
Price float 0 委托价格
or
字段 + or - 价格
字段 + or - 跳数T(加减跳 大写的T)
Ex : ASK+1T,ASK+2T , BID-2T
字段為固定字,可为 LAST or BID or ASK or FILLED
FILLED为OTO, OTOCO使用, 其他单不可使用FILLED
ex. FILLED-150000000000
StopPrice float 0 停损价
or
字段 + or - 价格
字段 + or - 跳数T(加减几跳 大写的T)
Ex : ASK+1T,ASK+2T , BID-2T
字段为固定字, 可为LAST or BID or ASK or MID or FILLED
FILLED为OTO, OTOCO使用, 其他单不可使用FILLED
Side1 float 0 买卖别(复式单脚1) 1:Buy 2:Sell
Side2 float 0 买卖别(复式单脚2) 1:Buy 2:Sell
ContingentSymbol string 追踪Symbol
仅Synthetic = 1
OrderType=7 或 OrderType=8使用
TrailingAmount float 0 仅Synthetic = 1且OrderType=5 或 OrderType=6使用
TrailingType=1时, TrailingAmount为百分比
TrailingType=2时, TrailingAmount为点数
TrailingType=3时, TrailingAmount为几跳
TrailingField float 0 仅Synthetic = 1且OrderType=7 或 OrderType=8使用
触发价
or 字段 + or - 价格
字段 + or - 跳数T(加减几跳 大写的T)Ex : ASK+1T,ASK+2T , BID-2T
字段为固定字, 可为LAST or BID or ASK or FILLED FILLED为OTO, OTOCO使用, 其他单不可使用FILLED
TrailingType float 0 仅Synthetic = 1且OrderType=5 或 OrderType=6使用
0 : None
1 : 依价格
2 : 依TrailingPrice百分比
3 : 依TickSize几跳
TouchCondition float 0 仅Synthetic = 1且OrderType=7 或 OrderType=8使用
0 : touch or 穿价
1 : Greater
2 : GreaterEqual
3 : Equl
4 : LessEqual
5 : Less
TouchField float 0 仅Synthetic = 1且OrderType=7 或 OrderType=8使用
0 : None
1 : Last
2 : Bid
3 : Ask
TouchPrice string 仅Synthetic = 1且OrderType=7 或 OrderType=8使用
触发价
or 字段 + or - 价格
字段 + or - 跳数T(加减几跳 大写的T)
Ex : ASK+1T,ASK+2T , BID-2T
字段为固定字, 可为LAST or BID or ASK or FILLED FILLED为OTO, OTOCO使用, 其他单不可使用FILLED
Synthetic float 0 0 : None
1 : Synthetic
GroupID string GroupID or OCOID or OTOID or OTOCOID
GroupType float 0 0 : None
1 : Normal
2 : OCO
3 : OTO
4 : OTOCO
GrpAcctOrdType float 0
ChasePrice string 追价 格式为[每次增加价格or跳数|追价几次|每次追价几秒|最后下市价或删单(M or C)]
PS:增加价格若为跳数尾端带入T,EX:1T(1跳)
Strategy string 策略名称
UserKey1 string 将可在回报的UserKey1字段得到相同的字符串
SlicedPriceField float 0 0 : None
1 : Last
2 : Bid
3 : Ask
4 : 对方价
5 : 本方价
SlicedTicks float 0 SlicedPriceField 非零使用
TickSize几跳
SlicedType float 0 不支援群组单
0 : None
1 : Iceberg
2 : TimeSliced
3 : VolumeSliced
4 : AllSliced
5 : AllSliced After PriceTrigger
DiscloseQty float 0 逐笔揭露数量
Variance float 0 逐笔变动比例% 仅SlicedType =1 或 SlicedType =2或 SlicedType =3使用
Interval float 0 仅SlicedType =2或 SlicedType =3使用 SlicedType =2 : 间隔时间,ms SlicedType =3 : 间隔成交量
LeftoverAction float 0 仅SlicedType =2或 SlicedType =3使用
0 : Leave 继续挂着(默认)
1 : Merge 取消该笔,剩余数量加入下笔下单
2 : Market 转市价单
SelfTradePrevention float 0 0 : 或是不带入该参数,不启用自成交侦测
1 : 所有委托时间条件带IOC用来规避自成交
2 : 所有委托时间条件带FOK用来规避自成交
3 : 侦测到自成交时,直接拒绝送出委托,并提示委托错误
ExtCommands string 延伸下单参数
一. 下单前 将平仓挂单都删单 CancelCloseWorking=1 or 2
平净仓 CancelCloseWorking=2
全平
1. stock CancelCloseWorking=2
2. future/option
a. 多空并存 CancelCloseWorking=1
b. 只有单边 CancelCloseWorking=2
二. 下单速度自适应於交易安全设定值
FitOrderFreq=1
TradeType float 0 0 : Normal
1 : Purchase on Margin
2 : ShortSell
Public Sub neworder()
    Dim neworderitem As New TCTradeWrapperAPILib.NOPFutOpt
    'Call trade.NewOrder("8000-41009986", "CTP_HTQH_SIMCTS662", "TC.F.DCE.i.202309", 1, 1, 2, 1, 0, "745.5")
    neworderitem.Account = "8000-41009986"
    neworderitem.BrokerID = "CTP_HTQH_SIMCTS662" 'accbid.Item("8000-41009986") "CTP_SIMNOWSE651"
    neworderitem.symbol = "TC.F.SHFE.rb.202309"
    neworderitem.Side = 1
    neworderitem.OrderType = 2
    neworderitem.PositionEffect = 0
    neworderitem.TimeInForce = 1
    neworderitem.Price = "34710000000000"
    neworderitem.OrderQty = 1
    neworderitem.StopPrice = ""
    Call trade.NewOrder2(neworderitem)
End Sub

取消委托单

trade.CancelOrder,参数为委托单编号,对应委托回报的ReportID字段

'取消委托单
Public Sub cancalorder()
    Call trade.CancelOrder("5113216449C")
End Sub

委托单改价改量

trade.RepalceOrder,需要使用New TCTradeWrapperAPILib.NOPReplaceOrder实例化参数对象 参数对象字段

参数 类型 说明
OrderQty Long 修改委托数量
Price LongLong 修改委托价格(限价或停损限价的委托价格)
StopPrice LongLong 修改停损价格(停损单的触发价格)
TouchPrice string 修改触发价格(本地条件的触发价格)
'修改委托单
Public Sub replaceorder()
    Dim orderitem As New TCTradeWrapperAPILib.NOPReplaceOrder
    orderitem.reportid = "R133020989C"
    orderitem.Price = 6880
    Call trade.RepalceOrder(orderitem)
End Sub