-
Notifications
You must be signed in to change notification settings - Fork 1
现货 FIX 交易API
您须生成您的访问秘钥和秘密秘钥来使用FIX交易API,您可以登录到我们的官方网站生成相应的访问秘钥和秘密秘钥,并请妥善保管您的秘钥不被泄漏:
-
https://exchange.btcc.com/account/apikeys 账户的验证方法和我们交易API的验证方法相同,请参照此处:
-
http://btcc.com/apidocs/api-trade-documentation#trade_api_authentication交易_api_访问认证 简单来说,就是客户端将请求数据使用秘钥对加密以后生成字符串,并将此加密后的字符串传到服务器端,并由服务器端来验证客户端的正确性.
如果客户端验证失败,服务器端会返回401认证失败错误;否则,则会返回针对请求的响应类型消息.
2015-01-12: FIX API v1.0.1 修复bug, 为 订单查询方法和批量订单查询方法的响应增加了Price(Tag 44)参数.
2014-10-31: FIX API v1.0 提供了 账户信息查询方法, 买卖订单方法, 订单查询方法, 批量订单查询方法, 取消订单方法 和 执行报告拒绝信息.
目前用户可访问以下链接使用BTCCFIX客户端的Java和C#示例代码,C#的交易示例代码即将更新,敬请期待:
- Java: https://github.com/BTCChina/btcchina-fix-api-java
- C#: https://github.com/BTCChina/btcchina-fix-api-csharp
账户信息查询可以用来获取用户账户余额信息。 此方法非FIX标准API,是BTCC自定义的方法,请求格式须符合BTCC定义的格式。
账户信息查询请求消息('U1000'类型)用来请求用户账户余额信息。
标签 | 名称 | 数据类型 | 必选? | 注释 |
---|---|---|---|---|
8 | BeginString | String | 是 | 'FIX.4.4'. |
9 | BodyLength | length | 是 | 消息长度的字节数. 永远在整条消息的第二个字段(不加密). |
35 | MsgType | String | 是 | 'U1000'. |
34 | MsgSeqNum | SeqNum | 是 | 整型消息序列号. |
49 | SenderCompID | String | 是 | 您的访问秘钥. |
52 | SendingTime | UTCTimestamp | 是 | 消息发送时间, UTC时间(世界标准时间, 也称作 'GMT'). |
56 | TargetCompID | String | 是 | 'BTCC-FIX-SERVER'. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
1 | Account String | 是 | 经过秘钥加密后的字符串. | |
8000 | AccReqID | String | 是 | 客户端请求的唯一标识ID. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
10 | CheckSum | String | 是 | 三个字节的校验码. |
注意:FIX消息是由一串”标签=数值”的字段表示的,它们之间的分隔符是SOH(0x01). SOH是不可见的字符,在下面的所有样本示例中,我们使用'|'代替SOH来分隔不同字段 客户端发来的账户信息查询请求消息样本:
8=FIX.4.4|9=163|35=U1000|34=2|49=<YOUR ACCESS KEY>|52=20141022-04:14:42.607|56=BTCC-FIX-SERVER|1=1414580974252000:Basic YmQ2NzI4OTctMTA0ZC00OTRlLWE0ZjItMjI5N2M0ZjdlMTMxOmMzOTYyMTBkNWMyNDk1MjE4YzFkZThlYjczOWQzMjVlNTgyNjMzZmE= |8000=01|10=064
依据上述说明,这条消息表示:
BeginString: FIX.4.4
BodyLength: 163
MsgType: AccountInfoRequest (U1000)
MsgSeqNum: 2
SenderCompID: <YOUR ACCESS KEY>
SendingTime: 20141022-04:14:42.607
TargetCompID: BTCC-FIX-SERVER
Account: 1414580974252000:Basic YmQ2NzI4OTctMTA0ZC00OTRlLWE0ZjItMjI5N2M0ZjdlMTMxOmMzOTYyMTBkNWMyNDk1MjE4YzFkZThlYjczOWQzMjVlNTgyNjMzZmE=
AccReqID: 01
CheckSum: 064
成功收到用户发送的账户信息请求消息后,服务器会返回一个AccountInfoResponse ('U1001'类型)消息给客户端。 具体格式如下:
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
8 | BeginString String | 是 | 'FIX.4.4'. | |
9 | BodyLength | length | 是 | 消息长度的字节数. 永远在整条消息的第二个字段(不加密). |
35 | MsgType | String | 是 | 'U1001'. |
34 | MsgSeqNum | SeqNum | 是 | 整型消息序列号. |
49 | SenderCompID | String | 是 | 'BTCC-FIX-SERVER'. |
52 | SendingTime | UTCTimestamp | 是 | 消息发送时间, UTC时间(世界标准时间, 也称作 'GMT'). |
56 | TargetCompID | String | 是 | 与客户端请求中的SenderCompID相同. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
1 | Account | String | 是 | 经过秘钥加密后的字符串. |
8000 | AccReqID | String | 是 | 与客户端请求中的AccReqID相同. |
9000 | Balance | NumInGroup | 是 | 余额类型种类的组数. |
15 | Currency | Currency | 是 | 币种. |
8001 | Amount | Price | 是 | 余额. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
10 | CheckSum | String | 是 | 三个字节的校验码. |
服务器返回的账户信息查询响应消息样本:
8=FIX.4.4|9=240|35=U1001|34=2|49=BTCC-FIX-SERVER|52=20141022-04:14:42.852|56=<YOUR ACCESS KEY>|1=1414580974252000:Basic YmQ2NzI4OTctMTA0ZC00OTRlLWE0ZjItMjI5N2M0ZjdlMTMxOmMzOTYyMTBkNWMyNDk1MjE4YzFkZThlYjczOWQzMjVlNTgyNjMzZmE= |8000=01|9000=3|15=BTC|8001=100.16171859|15=LTC|8001=12955.218|15=CNY|8001=6640.60641|10=083
依据上述说明,这条消息表示:
BeginString: FIX.4.4
BodyLength: 240
MsgType: AccountInfoResponse (U1001)
MsgSeqNum: 2
SenderCompID: BTCC-FIX-SERVER
SendingTime: 20141022-04:14:42.852
TargetCompID: <YOUR ACCESS KEY>
Account: 1414580974252000:Basic YmQ2NzI4OTctMTA0ZC00OTRlLWE0ZjItMjI5N2M0ZjdlMTMxOmMzOTYyMTBkNWMyNDk1MjE4YzFkZThlYjczOWQzMjVlNTgyNjMzZmE=
AccReqID: 01
Balance: 3
----
Currency: BTC
Amount: 100.16171859
----
Currency: LTC
Amount: 12955.218
----
Currency: CNY
Amount: 6640.60641
----
CheckSum: 083
买卖订单方法是用来下单交易的。
买卖订单请求('D'类型)消息可用来在市场下市价单或者限价单。 当订单状态改变时,服务器会实时推送相关订单状态给客户端。
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
8 | BeginString | String | 是 | 'FIX.4.4'. |
9 | BodyLength | length | 是 | 消息长度的字节数. 永远在整条消息的第二个字段(不加密). |
35 | MsgType | String | 是 | 'D'. |
34 | MsgSeqNum | SeqNum | 是 | 整型消息序列号. |
49 | SenderCompID | String | 是 | 您的访问秘钥. |
52 | SendingTime | UTCTimestamp | 是 | 消息发送时间, UTC时间 (世界标准时间, 也称作 'GMT'). |
56 | TargetCompID | String | 是 | 'BTCC-FIX-SERVER'. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
1 | Account String | 是 | 经过秘钥加密后的字符串. | |
11 | ClOrdID | String | 是 | 用户自定义的请求唯一标识ID. |
38 | OrderQty | Qty | 是 | 订单的数量. |
40 | OrdType | char | 是 | 订单类型: 1=市价单; 2=限价单. |
44 | Price | Price | 否 | 单价,在市价单中非必选. |
54 | Side | char | 是 | 订单买卖类型: 1=买单; 2=卖单. |
55 | Symbol | String | 是 | 'BTCCNY' or 'LTCCNY' or 'LTCBTC'. |
60 | TransactTime | UTCTimestamp | 是 | 交易发生时间. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
10 | CheckSum | String | 是 | 三个字节的校验码. |
客户端发送的买卖订单请求消息样本:
8=FIX.4.4| 9=229| 35=D| 34=2 |49=<YOUR ACCESS KEY>| 52=20141021-06:09:53.072| 56=BTCC-FIX-SERVER| 1=1414580974252000:Basic YmQ2NzI4OTctMTA0ZC00OTRlLWE0ZjItMjI5N2M0ZjdlMTMxOmMzOTYyMTBkNWMyNDk1MjE4YzFkZThlYjczOWQzMjVlNTgyNjMzZmE= |11=<YOUR UNIQUE ClOrdID>| 38=0.5| 40=2| 44=3200.5| 54=1| 55=BTCCNY| 60=20141021-06:09:53.071| 10=064
依据上述说明,这条消息表示:
BeginString: FIX.4.4
BodyLength: 229
MsgType: NewOrderSingle (D)
MsgSeqNum: 2
SenderCompID: <YOUR ACCESS KEY>
SendingTime: 20141021-06:09:53.072
TargetCompID: BTCC-FIX-SERVER
Account: 1414580974252000:Basic YmQ2NzI4OTctMTA0ZC00OTRlLWE0ZjItMjI5N2M0ZjdlMTMxOmMzOTYyMTBkNWMyNDk1MjE4YzFkZThlYjczOWQzMjVlNTgyNjMzZmE=
ClOrdID: <YOUR UNIQUE ClOrdID>
OrderQty: 0.5
OrdType: Limit Order (2)
Price: 3200.5
Side: Buy (1)
Symbol: BTCCNY
TransactTime: 20141021-06:09:53.071
CheckSum: 064
成功收到用户发送的买卖订单后,服务器会返回一个ExecutionReport ('8'类型)消息给客户端。
具体格式如下:
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
8 | BeginString | String | 是 | 'FIX.4.4'. |
9 | BodyLength | length | 是 | 消息长度的字节数. 永远在整条消息的第二个字段(不加密). |
35 | MsgType | String | 是 | '8'. |
34 | MsgSeqNum | SeqNum | 是 | 整型消息序列号. |
49 | SenderCompID | String | 是 | 'BTCC-FIX-SERVER'. |
52 | SendingTime | UTCTimestamp | 是 | 消息发送时间, UTC时间(世界标准时间, 也称作 'GMT'). |
56 | TargetCompID | String | 是 | 与客户端请求中的SenderCompID相同. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
6 | AvgPx | Price | 否 | 平均成交价. |
11 | ClOrdID | String | 否 | 客户端请求里的用户自定义唯一请求标识ID. |
14 | CumQty | Qty | 是 | 已成交总量. |
17 | ExecID | String | 是 | 请求执行消息唯一ID. |
37 | OrderID | String | 是 | 订单号. |
38 | OrderQty | Qty | 否 | 订单的数量. |
39 | OrderStatus | char | 是 | 订单状态: 0=new, 1=partially filled, 2=filled, 4=canceled, 7=stopped, 8=rejected, A=pending. |
40 | OrdType | char | 否 | 订单类型: 1=市价单; 2=限价单. |
44 | Price | Price | 否 | 单价,在市价单中非必选. |
54 | Side | char | 是 | 订单买卖类型: 1=买单; 2=卖单. |
55 | Symbol | String | 是 | 'BTCCNY' or 'LTCCNY' or 'LTCBTC', 与请求中此参数相同. |
150 | ExecType | char | 是 | 执行报告类型: 0=new, 4=canceled, 8=rejected, F=trade, I=order status. |
151 | LeavesQty | Qty | 是 | 剩余未成交数量. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
10 | CheckSum | String | 是 | 三个字节的校验码. |
服务器返回的买卖订单响应消息样本:
8=FIX.4.4|9=174|35=8|34=2|49=BTCC-FIX-SERVER|52=20141021-06:09:53.322|56=<YOUR ACCESS KEY>|6=0|11=<YOUR UNIQUE ClOrdID>|14=0|17=273157|37=8150|38=0.5|39=0|40=2|44=3200.5|54=1|55=BTCCNY|150=0|151=0.5|10=090
依据上述说明,这条消息表示:
BeginString: FIX.4.4
BodyLength: 174
MsgType: ExecutionReport (8)
MsgSeqNum: 2
SenderCompID: BTCC-FIX-SERVER
SendingTime: 20141021-06:09:53.322
TargetCompID: <YOUR ACCESS KEY>
AvgPx: 0
ClOrdID: <YOUR UNIQUE ClOrdID>
CumQty: 0
ExecID: 273157
OrderID: 8150
OrderQty: 0.5
OrdStatus: New (0)
OrdType: Limit Order (2)
Price: 3200.5
Side: Buy (1)
Symbol: BTCCNY
ExecType: New (0)
LeavesQty: 0.5
CheckSum: 090
订单查询方法返回用户指定订单的状态。
订单查询方法可查询指定订单状态,订单查询请求消息具体格式如下:
标签 |名称| 类型 |必选?| 注释 8| BeginString| String| 是| 'FIX.4.4'. 9 |BodyLength| length| 是| 消息长度的字节数. 永远在整条消息的第二个字段(不加密). 35| MsgType |String |是| 'H'. 34| MsgSeqNum| SeqNum| 是 |整型消息序列号. 49| SenderCompID| String| 是| 您的访问秘钥. 52| SendingTime |UTCTimestamp| 是| 消息发送时间, UTC时间(世界标准时间, 也称作 'GMT'). 56| TargetCompID| String |是| 'BTCC-FIX-SERVER'.
标签| 名称| 类型 |必选?| 注释 1| Account String| 是 |经过秘钥加密后的字符串. 11 |ClOrdID| String| 是 |用户自定义的请求唯一标识ID. 37| OrderID |String| 是 |订单号. 54 |Side |char| 是| 订单买卖类型: 1=买单; 2=卖单. 55 |Symbol| String |是 |'BTCCNY' or 'LTCCNY' or 'LTCBTC'.
标签 |名称| 类型| 必选?| 注释 10| CheckSum| String| 是| 三个字节的校验码.
客户端发来的订单查询请求消息样本:
8=FIX.4.4|9=199|35=H|34=2|49=<YOUR ACCESS KEY>|52=20141021-08:18:24.661|56=BTCC-FIX-SERVER|1=1414580974252000:Basic YmQ2NzI4OTctMTA0ZC00OTRlLWE0ZjItMjI5N2M0ZjdlMTMxOmMzOTYyMTBkNWMyNDk1MjE4YzFkZThlYjczOWQzMjVlNTgyNjMzZmE= |11=<YOUR UNIQUE ClOrdID>|37=8116|54=1|55=BTCCNY|10=183
依据上述说明,这条消息表示:
BeginString: FIX.4.4
BodyLength: 199
MsgType: OrderStatusRequest (H)
MsgSeqNum: 2
SenderCompID: <YOUR ACCESS KEY>
SendingTime: 20141021-08:18:24.661
TargetCompID: BTCC-FIX-SERVER
Account: 1414580974252000:Basic YmQ2NzI4OTctMTA0ZC00OTRlLWE0ZjItMjI5N2M0ZjdlMTMxOmMzOTYyMTBkNWMyNDk1MjE4YzFkZThlYjczOWQzMjVlNTgyNjMzZmE=
ClOrdID: <YOUR UNIQUE ClOrdID>
OrderID: 8116
Side: Buy (1)
Symbol: BTCCNY
CheckSum: 183
成功收到用户发送的订单查询消息后,服务器会返回一个ExecutionReport ('8'类型)消息给客户端。 具体格式如下:
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
8 | BeginString | String | 是 | 'FIX.4.4'. |
9 | BodyLength | length | 是 | 消息长度的字节数. 永远在整条消息的第二个字段(不加密). |
35 | MsgType String | 是 | '8'. | |
34 | MsgSeqNum | SeqNum | 是 | 整型消息序列号. |
49 | SenderCompID | String | 是 | 'BTCC-FIX-SERVER'. |
52 | SendingTime | UTCTimestamp | 是 | 消息发送时间, UTC时间(世界标准时间, 也称作 'GMT'). |
56 | TargetCompID | String | 是 | 与客户端请求中的SenderCompID相同. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
6 | AvgPx | Price | 否 | 平均成交价. |
11 | ClOrdID | String | 否 | 客户端请求里的用户自定义唯一请求标识ID. |
14 | CumQty | Qty | 是 | 已成交总量. |
17 | ExecID String | 是 | 请求执行消息唯一ID. | |
37 | OrderID | String | 是 | 订单号. |
39 | OrderStatus | char | 是 | 订单状态: 0=new, 1=partially filled, 2=filled, 4=canceled, 7=stopped, 8=rejected, A=pending. |
44 | Price | Price | 是 | 订单的下单价格. |
54 | Side | char | 是 | 订单买卖类型: 1=买单; 2=卖单. |
55 | Symbol | String | 是 | 'BTCCNY' or 'LTCCNY' or 'LTCBTC', 与请求中此参数相同. |
150 | ExecType | char | 是 | 执行报告类型: 0=new, 4=canceled, 8=rejected, F=trade, I=order status. |
151 | LeavesQty | Qty | 是 | 剩余未成交数量. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
10 | CheckSum | String | 是 | 三个字节的校验码. |
服务器返回的订单查询响应消息样本:
8=FIX.4.4|9=168|35=8|34=2|49=BTCC-FIX-SERVER|52=20141021-08:18:25.022|56=<YOUR ACCESS KEY>|6=1001.2|11=<YOUR UNIQUE ClOrdID>|14=0.123|17=695855|37=8116|39=2|44=1000|54=2|55=BTCCNY|150=I|151=0|10=151
依据上述说明,这条消息表示:
BeginString: FIX.4.4
BodyLength: 168
MsgType: ExecutionReport (8)
MsgSeqNum: 2
SenderCompID: BTCC-FIX-SERVER
SendingTime: 20141021-08:18:25.022
TargetCompID: <YOUR ACCESS KEY>
AvgPx: 1001.2
ClOrdID: <YOUR UNIQUE ClOrdID>
CumQty: 0.123
ExecID: 695855
OrderID: 8116
OrdStatus: Filled (2)
Price: 1000
Side: Sell (2)
Symbol: BTCCNY
ExecType: Order_Status (I)
LeavesQty: 0
CheckSum: 151
批量订单查询方法可用来获取最多1000条未成交或者部分成交订单。
批量订单查询返回最多1000条未成交或者部分成交的订单。 具体格式如下:
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
8 | BeginString | String | 是 | 'FIX.4.4'. |
9 | BodyLength | length | 是 | 消息长度的字节数. 永远在整条消息的第二个字段(不加密). |
35 | MsgType | String | 是 | 'AF'. |
34 | MsgSeqNum | SeqNum | 是 | 整型消息序列号. |
49 | SenderCompID | String | 是 | 您的访问秘钥. |
52 | SendingTime | UTCTimestamp | 是 | 消息发送时间, UTC时间 (世界标准时间, 也称作 'GMT'). |
56 | TargetCompID | String | 是 | 'BTCC-FIX-SERVER'. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
1 | Account | String | 是 | 经过秘钥加密后的字符串. |
54 | Side | char | 是 | 订单买卖类型: 1=买单; 2=卖单. |
55 | Symbol | String | 是 | 'BTCCNY' or 'LTCCNY' or 'LTCBTC'. |
584 | MassStatusReqID | String | 是 | 客户端批量查询请求唯一标识ID. |
585 | MassStatusReqType | int | 是 | 批量订单查询类型: 7=所有未成交或部分成交订单状态. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
10 | CheckSum | String | 是 | 三个字节的校验码. |
客户端发来的批量订单查询请求消息样本:
8=FIX.4.4|9=182|35=AF|34=2|49=<YOUR ACCESS KEY>|52=20141021-08:51:49.664|56=BTCC-FIX-SERVER|1=1414580974252000:Basic YmQ2NzI4OTctMTA0ZC00OTRlLWE0ZjItMjI5N2M0ZjdlMTMxOmMzOTYyMTBkNWMyNDk1MjE4YzFkZThlYjczOWQzMjVlNTgyNjMzZmE= |54=1|55=BTCCNY|584=8092|585=7|10=101
依据上述说明,这条消息表示:
BeginString: FIX.4.4
BodyLength: 182
MsgType: OrderMassStatusRequest (AF)
MsgSeqNum: 2
SenderCompID: <YOUR ACCESS KEY>
SendingTime: 20141021-08:51:49.664
TargetCompID: BTCC-FIX-SERVER
Account: 1414580974252000:Basic YmQ2NzI4OTctMTA0ZC00OTRlLWE0ZjItMjI5N2M0ZjdlMTMxOmMzOTYyMTBkNWMyNDk1MjE4YzFkZThlYjczOWQzMjVlNTgyNjMzZmE=
Side: Buy (1)
Symbol: BTCCNY
MassStatusReqID: 8092
MassStatusReqType: Status for All Orders (7)
CheckSum: 101
成功收到用户发送的批量订单查询消息后,服务器会返回一个ExecutionReport ('8'类型)消息给客户端。 具体格式如下:
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
8 | BeginString | String | 是 | 'FIX.4.4'. |
9 | BodyLength | length | 是 | 消息长度的字节数. 永远在整条消息的第二个字段(不加密). |
35 | MsgType | String | 是 | '8'. |
34 | MsgSeqNum | SeqNum | 是 | 整型消息序列号. |
49 | SenderCompID | String | 是 | 'BTCC-FIX-SERVER'. |
52 | SendingTime | UTCTimestamp | 是 | 消息发送时间, UTC时间 (世界标准时间, 也称作 'GMT'). |
56 | TargetCompID | String | 是 | 与客户端请求中的SenderCompID相同. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
6 | AvgPx | Price | 否 | 平均成交价. |
14 | CumQty | Qty | 是 | 已成交总量. |
17 | ExecID | String | 是 | 请求执行消息唯一ID. |
37 | OrderID | String | 是 | 订单号. |
39 | OrderStatus | char | 是 | 订单状态: 0=new, 1=partially filled, 2=filled, 4=canceled, 7=stopped, 8=rejected, A=pending. |
44 | Price | Price | 是 | 订单的下单价格. |
54 | Side | char | 是 | 订单买卖类型: 1=买单; 2=卖单. |
55 | Symbol | String | 是 | 'BTCCNY' or 'LTCCNY' or 'LTCBTC', 与请求中此参数相同. |
150 | ExecType | char | 是 | 执行报告类型: 0=new, 4=canceled, 8=rejected, F=trade, I=order status. |
151 | LeavesQty | Qty | 是 | 剩余未成交数量. |
584 | MassStatusReqID String | 否 | 客户端批量查询请求唯一标识ID,与客户端请求中相同 | |
911 | TotNumReports | int | 否 | 返回的报告总量. |
912 | LastRptRequested | Boolean | 否 | 标识是否是当前返回中最后一条报告: N=否, Y=是. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
10 | CheckSum | String | 是 | 三个字节的校验码. |
服务器返回的批量订单查询响应消息样本:
8=FIX.4.4|9=157|35=8|34=2|49=BTCC-FIX-SERVER|52=20141021-08:51:50.027|56=<YOUR ACCESS KEY>|6=0|14=0|17=796854|37=8149|39=0|44=1000|54=2|55=BTCCNY|150=I|151=2.1|584=8092|911=5|912=N|10=076
依据上述说明,这条消息表示:
BeginString: FIX.4.4
BodyLength: 157
MsgType: ExecutionReport (8)
MsgSeqNum: 2
SenderCompID: BTCC-FIX-SERVER
SendingTime: 20141021-08:51:50.027
TargetCompID: <YOUR ACCESS KEY>
AvgPx: 0
CumQty: 0
ExecID: 796854
OrderID: 8149
OrdStatus: New (0)
Price: 1000
Side: Sell (2)
Symbol: BTCCNY
ExecType: Order_Status (I)
LeavesQty: 2.1
MassStatusReqID: 8092
TotNumReports: 5
LastRptRequested: False (N)
CheckSum: 076
取消订单请求可用来取消一个未成交或部分成交订单.
取消订单具体格式如下:
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
8 | BeginString | String | 是 | 'FIX.4.4'. |
9 | BodyLength | length | 是 | 消息长度的字节数. 永远在整条消息的第二个字段(不加密). |
35 | MsgType String | 是 | 'F'. | |
34 | MsgSeqNum | SeqNum | 是 | 整型消息序列号. |
49 | SenderCompID | String | 是 | 您的访问秘钥. |
52 | SendingTime | UTCTimestamp | 是 | 消息发送时间, UTC时间(世界标准时间, 也称作 'GMT'). |
56 | TargetCompID | String | 是 | 'BTCC-FIX-SERVER'. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
1 | Account | String | 是 | 经过秘钥加密后的字符串. |
11 | ClOrdID | String | 是 | 用户自定义的请求唯一标识ID. |
37 | OrderID | String | 是 | 订单号. |
41 | OrigClOrdID | String | 否 | 前一个用户自定义的请求唯一标识ID. |
54 | Side | char | 是 | 订单买卖类型: 1=买单; 2=卖单. |
55 | Symbol | String | 是 | 'BTCCNY' or 'LTCCNY' or 'LTCBTC'. |
60 | TransactTime | UTCTimestamp | 是 | 交易发生时间. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
10 | CheckSum | String | 是 | 三个字节的校验码. |
客户端发来的取消订单请求消息样本:
8=FIX.4.4|9=235|35=F|34=2|49=<YOUR ACCESS KEY>|52=20141021-09:22:47.023|56=BTCC-FIX-SERVER|1=1414580974252000:Basic YmQ2NzI4OTctMTA0ZC00OTRlLWE0ZjItMjI5N2M0ZjdlMTMxOmMzOTYyMTBkNWMyNDk1MjE4YzFkZThlYjczOWQzMjVlNTgyNjMzZmE= |11=<YOUR UNIQUE ClOrdID>|37=8146|41=1231234|54=1|55=BTCCNY|60=20141021-09:22:47.022|10=117
依据上述说明,这条消息表示:
BeginString: FIX.4.4
BodyLength: 235
MsgType: OrderCancelRequest (F)
MsgSeqNum: 2
SenderCompID: <YOUR ACCESS KEY>
SendingTime: 20141021-09:22:47.023
TargetCompID: BTCC-FIX-SERVER
Account: 1414580974252000:Basic YmQ2NzI4OTctMTA0ZC00OTRlLWE0ZjItMjI5N2M0ZjdlMTMxOmMzOTYyMTBkNWMyNDk1MjE4YzFkZThlYjczOWQzMjVlNTgyNjMzZmE=
ClOrdID: <YOUR UNIQUE ClOrdID>
OrderID: 8146
OrigClOrdID: 1231234
Side: Buy (1)
Symbol: BTCCNY
TransactTime: 20141021-09:22:47.022
CheckSum: 117
##取消订单响应--Order Cancel Request Response (8)
成功收到用户发送的取消订单消息后,服务器会返回一个ExecutionReport ('8'类型)消息给客户端。
具体格式如下:
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
8 | BeginString | String | 是 | 'FIX.4.4'. |
9 | BodyLength | length | 是 | 消息长度的字节数. 永远在整条消息的第二个字段(不加密). |
35 | MsgType String | 是 | '8'. | |
34 | MsgSeqNum | SeqNum | 是 | 整型消息序列号. |
49 | SenderCompID | String | 是 | 'BTCC-FIX-SERVER'. |
52 | SendingTime | UTCTimestamp | 是 | 消息发送时间, UTC时间 (世界标准时间, 也称作 'GMT'). |
56 | TargetCompID | String | 是 | 与客户端请求中的SenderCompID相同. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
6 | AvgPx | Price | 否 | 平均成交价. |
11 | ClOrdID | String | 否 | 用户自定义的请求唯一标识ID,与客户端请求中相同. |
14 | CumQty | Qty | 是 | 已成交数量. |
17 | ExecID | String | 是 | 请求执行消息唯一ID. |
37 | OrderID | String | 是 | 订单号. |
39 | OrderStatus | char | 是 | 订单状态: 0=new, 1=partially filled, 2=filled, 4=canceled, 7=stopped, 8=rejected, A=pending. |
54 | Side | char | 是 | 订单买卖类型: 1=买单; 2=卖单. |
55 | Symbol | String | 是 | 'BTCCNY' or 'LTCCNY' or 'LTCBTC', 与请求中此参数相同. |
150 | ExecType | char | 是 | 执行报告类型: 0=new, 4=canceled, 8=rejected, F=trade, I=order status. |
151 | LeavesQty | Qty | 是 | 剩余未成交数量. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
10 | CheckSum | String | 是 | 三个字节的校验码. |
服务器返回的取消订单响应消息样本:
8=FIX.4.4|9=178|35=8|34=2|49=BTCC-FIX-SERVER|52=20141021-09:22:47.768|56=<YOUR ACCESS KEY>|6=1001.1|11=<YOUR UNIQUE ClOrdID>|14=1.1|17=114887|37=8146|39=4|54=2|55=BTCCNY|150=4|151=1|10=215
依据上述说明,这条消息表示:
BeginString: FIX.4.4
BodyLength: 178
MsgType: ExecutionReport (8)
MsgSeqNum: 2
SenderCompID: BTCC-FIX-SERVER
SendingTime: 20141021-09:22:47.768
TargetCompID: <YOUR ACCESS KEY>
AvgPx: 1001.1
ClOrdID: <YOUR UNIQUE ClOrdID>
CumQty: 1.1
ExecID: 114887
OrderID: 8146
OrdStatus: Canceled (4)
Side: Sell (2)
Symbol: BTCCNY
ExecType: Canceled (4)
LeavesQty: 1
CheckSum: 215
当客户端发送了非法的执行报告请求给服务器时,比如当下单时账户余额不足,服务器会返回执行报告拒绝('8'类型)消息。 具体格式如下:
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
8 | BeginString | String | 是 | 'FIX.4.4'. |
9 | BodyLength | length | 是 | 消息长度的字节数. 永远在整条消息的第二个字段(不加密). |
35 | MsgType | String | 是 | '8'. |
34 | MsgSeqNum | SeqNum | 是 | 整型消息序列号. |
49 | SenderCompID | String | 是 | 'BTCC-FIX-SERVER'. |
52 | SendingTime | UTCTimestamp | 是 | 消息发送时间, UTC时间 (世界标准时间, 也称作 'GMT'). |
56 | TargetCompID | String | 是 | 与客户端请求中的SenderCompID相同. |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
6 | AvgPx | Price | 否 | 平均成交价. |
11 | ClOrdID | String | 否 | 用户自定义的请求唯一标识ID. |
14 | CumQty | Qty | 是 | 已成交数量. |
17 | ExecID | String | 是 | 请求执行消息唯一ID. |
37 | OrderID | String | 是 | 订单号. |
39 | OrderStatus | char | 是 | 请求状态: 8=请求拒绝. |
40 | OrdType | char | 否 | 订单类型: 1=市价单; 2=限价单. |
44 | Price | Price | 否 | 单价,在市价单中非必选. |
54 | Side | char | 是 | 订单买卖类型: 1=买单; 2=卖单. |
55 | Symbol | String | 是 | 'BTCCNY' or 'LTCCNY' or 'LTCBTC', 与请求中此参数相同. |
58 | Text | String | 否 | 服务器拒绝原因. |
103 | OrdRejReason | int | 否 | 拒绝原因. 1=非法市场, 13=非法数量, 15=未知的账户, 99=其他,参照Text值. |
150 | ExecType | char | 是 | 执行报告类型: 0=new, 4=canceled, 8=rejected, F=trade, I=order status. |
151 | LeavesQty | Qty | 是 | 剩余未成交数里. |
###标准消息尾 |
标签 | 名称 | 类型 | 必选? | 注释 |
---|---|---|---|---|
10 | CheckSum | String | 是 | 三个字节的校验码. |
服务器返回的执行报告拒绝消息样本:
8=FIX.4.4|9=204|35=8|34=2|49=BTCC-FIX-SERVER|52=20141022-05:42:18.082|56=<YOUR ACCESS KEY>|6=0|11=<YOUR UNIQUE ClOrdID>|14=0|17=711639|37=0|39=8|40=2|44=0|54=1|55=BTCCNY|58=Insufficient balance|103=99|150=8|151=111112.1|10=160
依据上述说明,这条消息表示:
BeginString: FIX.4.4
BodyLength: 204
MsgType: ExecutionReport (8)
MsgSeqNum: 2
SenderCompID: BTCC-FIX-SERVER
SendingTime: 20141022-05:42:18.082
TargetCompID: <YOUR ACCESS KEY>
AvgPx: 0
ClOrdID: <YOUR UNIQUE ClOrdID>
CumQty: 0
ExecID: 711639
OrderID: 0
OrdStatus: Rejected (8)
OrdType: Limit Order (2)
Price: 0
Side: Buy (1)
Symbol: BTCCNY
Text: Insufficient balance
OrdRejReason: Other (99)
ExecType: Rejected (8)
LeavesQty: 111112.1
CheckSum: 160