Skip to main content

交易

下单

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

  • 下单参数
字段类型默认注释
Accountstring下单账户
BrokerIDstring账户的 BrokerID
Symbolstring下单合约
SideOrderSide买卖别 (复式单为整体买卖方向) 1:Buy 2:Sell
OrderQtyint下单数量
OrderTypeOrderType1 : 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 : 一定范围市价
TimeInForceTimeInForce0 : None None
1 : ROD 日内有效
2 : IOC 立即成交否则取消
3 : FOK 全部成交否则取消
PositionEffectPositionEffect0 : 开仓
1 : 平仓
2 : 平今
3 : 平昨
4 : 自动判断开平
10 : 备兑开仓
11 : 备兑平仓
SymbolAstring复式单脚1商品TCore代码
SymbolBstring复式单脚2商品TCore代码
Pricefloat0委托价格
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
StopPricefloat0停损价
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
Side1float0买卖别(复式单脚1) 1:Buy 2:Sell
Side2float0买卖别(复式单脚2) 1:Buy 2:Sell
ContingentSymbolstring追踪Symbol
仅Synthetic = 1
OrderType=7 或 OrderType=8使用
TrailingAmountfloat0仅Synthetic = 1且OrderType=5 或 OrderType=6使用
 TrailingType=1时, TrailingAmount为百分比
TrailingType=2时, TrailingAmount为点数
 TrailingType=3时, TrailingAmount为几跳
TrailingFieldfloat0仅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
TrailingTypefloat0仅Synthetic = 1且OrderType=5 或 OrderType=6使用
0 : None
1 : 依价格
2 : 依TrailingPrice百分比
3 : 依TickSize几跳
TouchConditionfloat0仅Synthetic = 1且OrderType=7 或 OrderType=8使用
0 : touch or 穿价
1 : Greater
2 : GreaterEqual
3 : Equl
4 : LessEqual
5 : Less
TouchFieldfloat0仅Synthetic = 1且OrderType=7 或 OrderType=8使用
0 : None
1 : Last
2 : Bid
3 : Ask
TouchPricestring仅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
Syntheticfloat00 : None
1 : Synthetic
GroupIDstringGroupID or OCOID or OTOID or OTOCOID
GroupTypefloat00 : None
1 : Normal
2 : OCO
3 : OTO
4 : OTOCO
GrpAcctOrdTypefloat0
ChasePricestring追价 格式为[每次增加价格or跳数|追价几次|每次追价几秒|最后下市价或删单(M or C)]
PS:增加价格若为跳数尾端带入T,EX:1T(1跳)
Strategystring策略名称
UserKey1string将可在回报的UserKey1字段得到相同的字符串
SlicedPriceFieldfloat00 : None
1 : Last
2 : Bid
3 : Ask
4 : 对方价
5 : 本方价
SlicedTicksfloat0SlicedPriceField 非零使用
TickSize几跳
SlicedTypefloat0不支援群组单
0 : None
1 : Iceberg
2 : TimeSliced
3 : VolumeSliced
4 : AllSliced
5 : AllSliced After PriceTrigger
DiscloseQtyfloat0逐笔揭露数量
Variancefloat0逐笔变动比例% 仅SlicedType =1 或 SlicedType =2或 SlicedType =3使用
Intervalfloat0仅SlicedType =2或 SlicedType =3使用 SlicedType =2 : 间隔时间,ms SlicedType =3 : 间隔成交量
LeftoverActionfloat0仅SlicedType =2或 SlicedType =3使用
0 : Leave 继续挂着(默认)
1 : Merge 取消该笔,剩余数量加入下笔下单
2 : Market 转市价单
SelfTradePreventionfloat00 : 或是不带入该参数,不启用自成交侦测
1 : 所有委托时间条件带IOC用来规避自成交
2 : 所有委托时间条件带FOK用来规避自成交
3 : 侦测到自成交时,直接拒绝送出委托,并提示委托错误
ExtCommandsstring延伸下单参数
一. 下单前 将平仓挂单都删单 CancelCloseWorking=1 or 2
平净仓 CancelCloseWorking=2
全平
1. stock CancelCloseWorking=2
2. future/option
a. 多空并存 CancelCloseWorking=1
b. 只有单边 CancelCloseWorking=2
二. 下单速度自适应於交易安全设定值
FitOrderFreq=1
TradeTypefloat00 : 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实例化参数对象 参数对象字段

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