Execution Reports
The following section contains examples of execution reports.
Notes:
- Explanatory notes about the execution report fields are provided after each example. Additional information about the fields can be found in the Execution Report
<8>
documentation and here. - Gemini associates the following OrdStatus
<39>
outcomes with each supported ExecType<150>
:
ExecType<150> | OrdStatus<39> |
---|---|
0 = New | 0 = New 1 = Partially filled 2 = Filled 8 = Rejected |
F = Trade | 1 = Partially filled 2 = Filled |
4 = Canceled | 4 = Canceled |
8 = Rejected | 8 = Rejected |
Execution Reports
New Order
This is an example of an Execution Report <8>
in response to TRADEBOTOE002
's New Order Single <D>
:
RAW 8=FIX.4.4|9=195|35=8|34=2|49=GEMINI|52=20180425-17:56:42.071|56=TRADEBOTOE002|6=0|11=iWM60sx3dreT9N9yEE|14=0|17=335278099|37=335278098|38=1|39=0|44=10000|54=1|55=BTCUSD|59=1|60=20180425-17:56:42.071|150=0|151=1|10=163| HEADER 8 BeginString: FIX.4.4 9 BodyLength: 195 34 MsgSeqNum: 2 35 MsgType: ExecutionReport (8) 49 SenderCompID: GEMINI 52 SendingTime: 20180425-17:56:42.071 56 TargetCompID: TRADEBOTOE002 BODY 6 AvgPx: 0 11 ClOrdID: iWM60sx3dreT9N9yEE 14 CumQty: 0 17 ExecID: 335278099 37 OrderID: 335278098 38 OrderQty: 1 39 OrdStatus: NEW (0) 44 Price: 10000 54 Side: BUY (1) 55 Symbol: BTCUSD 59 TimeInForce: GOOD_TILL_CANCEL (1) 60 TransactTime: 20180425-17:56:42.071 150 ExecType: NEW (0) 151 LeavesQty: 1 TRAILER 10 CheckSum: 163txt
Notes:
- AvgPx:
0
is the avg price of all fills on the order. Given that this is a new order execution report, there are no fills to average. - ClOrdID:
iWM60sx3dreT9N9yEE
is a unique request identifier assigned byTRADEBOTOE002
in the ClOrdID<11>
field in the original New Order Single<D>
. - CumQty:
0
is the total quantity filled. Again, given that this is a new order execution report, there are no fills. - ExecID:
335278099
is an order acceptance event id assigned by Gemini; see Identifiers - ExecType:
NEW (0)
indicates that this execution report is for a new order. - LeavesQty:
1
represents the quantity left open for execution. In a new order, this should equal OrderQty<38>
. - OrderID:
335278098
is a globally unique order event id assigned by Gemini at the time the order is submitted. - OrderQty:
1
represents the number of BTC ordered. - OrdStatus:
NEW (0)
indicates that the order's status is new. - Price:
10000
is the price denominated in USD (the price currency). See Understanding price and quantity for further explanation of price currency vs quantity currency. - StopPx:
Not shown in this example. Same format as Price
Required for a OrdType<40>
is4 = Stop Limit
order entry ACK. - Side:
BUY (1)
refers to the side of the order. - Symbol:
BTCUSD
is the symbol name. See Supported Symbols for a list of valid symbols and an explanation of which currencies price and quantities fields are denominated in. - TimeInForce:
GOOD_TILL_CANCEL (1)
specifies that the new order is GTC. - TransactTime:
20180425-17:56:42.071
is the time when the order was created.
Stop Trigger
This is an example of an Execution Report <8>
for a stop trigger message. This will only show up for a OrdType <40>
is 4 = Stop Limit
order once a trigger event occurs, and doubles as an order ack for the newly created child limit order.
RAW 8=FIX.4.4|9=190|35=8|34=5|49=GEMINI|52=20191105-21:16:55.970|56=TRADEBOTOE003|6=0|11=qCBPcHUu8w1|14=0|17=366449739|37=366449738|38=3|39=0|44=6409.65|54=1|55=BTCUSD|59=1|60=20191105-21:16:55.930|150=0|151=3|10=223| HEADER 8 BeginString: FIX.4.4 9 BodyLength: 190 34 MsgSeqNum: 5 35 MsgType: ExecutionReport (8) 49 SenderCompID: GEMINI 52 SendingTime: 20191105-21:16:55.970 56 TargetCompID: TRADEBOTOE003 BODY 6 AvgPx: 0 11 ClOrdID: qCBPcHUu8w1 14 CumQty: 0 17 ExecID: 366449739 37 OrderID: 366449738 38 OrderQty: 3 39 OrdStatus: NEW (0) 44 Price: 6409.65 54 Side: BUY (1) 55 Symbol: BTCUSD 59 TimeInForce: GOOD_TILL_CANCEL (1) 60 TransactTime: 20191105-21:16:55.930 150 ExecType: NEW (0) 151 LeavesQty: 3 TRAILER 10 CheckSum: 223txt
Notes:
- AvgPx:
0
is the avg price of all fills on the order. Given that this is a new order execution report, there are no fills to average. - ClOrdID:
qCBPcHUu8w1
is a unique request identifier assigned by `TRADEBOTOE003. - CumQty:
0
is the total quantity filled. Again, given that this is a new order execution report for the child limit order, there are no fills. - ExecID:
366449739
is an order acceptance event id assigned by Gemini; see Identifiers - ExecType:
NEW (0)
indicates that this execution report is for a new order. - LeavesQty:
3
represents the quantity left open for execution. In a new order, this should equal OrderQty<38>
. - OrderID:
366449738
is a globally unique order event id assigned by Gemini at the time the stop order triggers. - OrderQty:
3
represents the number of BTC ordered. - OrdStatus:
NEW (0)
indicates that the order's status is new. - Price:
6409.65
is the price denominated in USD (the price currency). See Understanding price and quantity for further explanation of price currency vs quantity currency. - Side:
BUY (1)
refers to the side of the order. - Symbol:
BTCUSD
is the symbol name. See Supported Symbols for a list of valid symbols and an explanation of which currencies price and quantities fields are denominated in. - TimeInForce:
GOOD_TILL_CANCEL (1)
specifies that the new order is GTC. - TransactTime:
20191105-21:16:55.930
is the time when the order was created.
Fill
In this scenario, TRADEBOTOE002
's order fills at 8400.00. In this case, TRADEBOTOE002
is on the taker side and pays the base fee of 100bps (1.00%). This is an example of an associated execution report:
RAW 8=FIX.4.4|9=248|35=8|34=3|49=GEMINI|52=20180516-22:03:10.031|56=TRADEBOTOE002|6=8400.00|11=af9hLHqlLYAYb3ErKJ|12=8.400000|13=3|14=1|17=336157291|31=8400.00|32=1|37=336157289|38=1|39=2|44=10000|54=1|55=BTCUSD|59=1|60=20180516-22:03:10.030|150=F|151=0|479=USD|851=2|10=116| HEADER 8 BeginString: FIX.4.4 9 BodyLength: 248 34 MsgSeqNum: 3 35 MsgType: ExecutionReport (8) 49 SenderCompID: GEMINI 52 SendingTime: 20180516-22:03:10.031 56 TargetCompID: TRADEBOTOE002 BODY 6 AvgPx: 8400.00 11 ClOrdID: af9hLHqlLYAYb3ErKJ 12 Commission: 8.400000 13 CommType: ABSOLUTE (3) 14 CumQty: 1 17 ExecID: 336157291 31 LastPx: 8400.00 32 LastQty: 1 37 OrderID: 336157289 38 OrderQty: 1 39 OrdStatus: FILLED (2) 44 Price: 10000 54 Side: BUY (1) 55 Symbol: BTCUSD 59 TimeInForce: GOOD_TILL_CANCEL (1) 60 TransactTime: 20180516-22:03:10.030 150 ExecType: TRADE (F) 151 LeavesQty: 0 479 CommCurrency: USD 851 LastLiquidityInd: REMOVED_LIQUIDITY (2) TRAILER 10 CheckSum: 116txt
Notes:
- AvgPx:
8400.00
is the avg price of all fills on the order. - CommType:
ABSOLUTE (3)
indicates that Commision<12>
is a total monetary amount. - Commission:
8.400000
is in USD as indicated by CommCurrency<479>
. - CumQty:
1
is the total quantity filled. - LastLiquidityInd:
REMOVED_LIQUIDITY (2)
indicates thatTRADEBOTOE002
was a liquidity taker. - LeavesQty:
0
represents the quantity left open for execution. In a filled trade, this should equal OrderQty<38>
- CumQty<14>
. - OrderQty: 1 represents the number of BTC ordered.
Partial Fill
In this example, TRADEBOTOE002
is on the maker side and receives an execution report for an order with an original quantity of 20 BTC that was partially filled for 10 BTC with 10 BTC remaining for a fee of 0.00%:
RAW 8=FIX.4.4|9=254|35=8|34=5|49=GEMINI|52=20180517-15:07:16.894|56=TRADEBOTOE002|6=8338.67|11=1tfX3IJi9HP87dkqlo|12=0.000000|13=3|14=10|17=336933409|31=8338.67|32=10|37=336933405|38=20|39=1|44=8338.67|54=1|55=BTCUSD|59=3|60=20180517-15:07:16.892|150=F|151=10|479=USD|851=1|10=001| HEADER 8 BeginString: FIX.4.4 9 BodyLength: 254 34 MsgSeqNum: 5 35 MsgType: ExecutionReport (8) 49 SenderCompID: GEMINI 52 SendingTime: 20180517-15:07:16.894 56 TargetCompID: TRADEBOTOE002 BODY 6 AvgPx: 8338.67 11 ClOrdID: 1tfX3IJi9HP87dkqlo 12 Commission: 0.000000 13 CommType: ABSOLUTE (3) 14 CumQty: 10 17 ExecID: 336933409 31 LastPx: 8338.67 32 LastQty: 10 37 OrderID: 336933405 38 OrderQty: 20 39 OrdStatus: PARTIALLY_FILLED (1) 44 Price: 8338.67 54 Side: BUY (1) 55 Symbol: BTCUSD 59 TimeInForce: IMMEDIATE_OR_CANCEL (3) 60 TransactTime: 20180517-15:07:16.892 150 ExecType: TRADE (F) 151 LeavesQty: 10 479 CommCurrency: USD 851 LastLiquidityInd: ADDED_LIQUIDITY (1) TRAILER 10 CheckSum: 001txt
Notes:
- AvgPx:
8338.67
is the average price of all fills on this order. - ClOrdID:
1tfX3IJi9HP87dkqlo
is a unique request identifier assigned byTRADEBOTOE002
in the ClOrdID<11>
field in the original New Order Single<D>
. - CumQty:
10
is the total quantity of the order that is filled. - ExecID:
336933409
is the trade event id assigned by Gemini; see Identifiers. - ExecType:
TRADE (F)
indicates that this execution report is for a trade (either partial fill or fill). - LastLiquidityInd:
ADDED_LIQUIDITY (1)
indicates thatTRADEBOTOE002
was a maker in this order. - LastPx:
8338.67
is the price of the last fill. - LastQty:
10
is the quantity of the partial fill. - LeavesQty:
10
indicates that there is a remaining quantity of 10 open for further execution. - OrderQty:
20
is the quantity indicated in the original New Order Single<D>
. - OrdStatus:
PARTIALLY_FILLED (1)
indicates that the order is partially filled. - Price:
8338.67
is the limit price of the order.
Order Cancellation
In this example, TRADEBOTOE002
receives an execution report, in response to a previously sent Order Cancel Request <F>
, indicating that the order with a ClOrdID <11>
= GHDzdNUUXaMMDZdfwe
was cancelled:
RAW 8=FIX.4.4|9=220|35=8|34=3|49=GEMINI|52=20180425-17:57:59.538|56=TRADEBOTOE002|6=0|11=GHDzdNUUXaMMDZdfwe|14=0|17=335278132|37=335278128|38=1|39=4|41=z35u64KR1gen7f2SpB|44=93392.64|54=2|55=BTCUSD|58=REQUESTED|59=1|60=20180425-17:57:59.537|150=4|151=0|10=254| HEADER 8 BeginString: FIX.4.4 9 BodyLength: 220 34 MsgSeqNum: 3 35 MsgType: ExecutionReport (8) 49 SenderCompID: GEMINI 52 SendingTime: 20180425-17:57:59.538 56 TargetCompID: TRADEBOTOE002 BODY 6 AvgPx: 0 11 ClOrdID: GHDzdNUUXaMMDZdfwe 14 CumQty: 0 17 ExecID: 335278132 37 OrderID: 335278128 38 OrderQty: 1 39 OrdStatus: CANCELED (4) 41 OrigClOrdID: z35u64KR1gen7f2SpB 44 Price: 93392.64 54 Side: SELL (2) 55 Symbol: BTCUSD 58 Text: REQUESTED 59 TimeInForce: GOOD_TILL_CANCEL (1) 60 TransactTime: 20180425-17:57:59.537 150 ExecType: CANCELED (4) 151 LeavesQty: 0 TRAILER 10 CheckSum: 254txt
Notes:
- AvgPx:
0
is the avg price of all fills on the order. Given that this order was cancelled before any fills, the average price is 0. - ClOrdID:
GHDzdNUUXaMMDZdfwe
is a unique request identifier assigned byTRADEBOTOE002
in the ClOrdID<11>
field in the original New Order Single<D>
. - CumQty:
0
is the total quantity filled. Again, given that this order had no fills, this number is 0. - ExecID:
335278132
is an order cancellation event id assigned by Gemini; see Identifiers - ExecType:
CANCELED (4)
indicates that this execution report is for a cancelled order. - LeavesQty:
0
represents the quantity left open for execution. In a cancelled or expired order, this quantity should equal 0. - OrderID:
335278128
is a globally unique order event id assigned by Gemini at the time the order is submitted. - OrderQty:
1
represents the number of BTC cancelled. - OrdStatus:
CANCELED (4)
indicates that the order's status is cancelled. - OrigClOrdID:
z35u64KR1gen7f2SpB
corresponds to the ClOrdID<11>
of the order to cancel. - Price:
93392.64
is the price denominated in USD (the price currency). See Understanding price and quantity for further explanation of price currency vs quantity currency. - Side:
SELL (2)
refers to the side of the order. - Symbol:
BTCUSD
is the symbol name. See Supported Symbols for a list of valid symbols and an explanation of which currencies price and quantities fields are denominated in. - Text:
REQUESTED
indicates that this execution report was for the cancellation of a GTC order where the user initiated the cancel request. - TimeInForce:
GOOD_TILL_CANCEL (1)
specifies that the order was GTC. - TransactTime:
20180425-17:57:59.537
is the time when the order was created.
In this next example, TRADEBOTOE002
first sent an Order Cancel Request <F>
for order 1tfX3IJi9HP87dkqlo
that was previously partially filled. This is an execution report for the cancellation of the remaining quantity:
RAW 8=FIX.4.4|9=238|35=8|34=7|49=GEMINI|52=20180517-15:07:16.896|56=TRADEBOTOE002|6=8338.67|11=1tfX3IJi9HP87dkqlo|14=10|17=336933412|37=336933405|38=20|39=4|44=8338.67|54=1|55=BTCUSD|59=3|60=20180517-15:07:16.892|150=4|151=0|10=080| HEADER 8 BeginString: FIX.4.4 9 BodyLength: 238 34 MsgSeqNum: 7 35 MsgType: ExecutionReport (8) 49 SenderCompID: GEMINI 52 SendingTime: 20180517-15:07:16.896 56 TargetCompID: TRADEBOTOE002 BODY 6 AvgPx: 8338.67 11 ClOrdID: 1tfX3IJi9HP87dkqlo 14 CumQty: 10 17 ExecID: 336933412 37 OrderID: 336933405 38 OrderQty: 20 39 OrdStatus: CANCELED (4) 44 Price: 8338.67 54 Side: BUY (1) 55 Symbol: BTCUSD 59 TimeInForce: IMMEDIATE_OR_CANCEL (3) 60 TransactTime: 20180517-15:07:16.892 150 ExecType: CANCELED (4) 151 LeavesQty: 0 TRAILER 10 CheckSum: 080txt
Notes:
- CumQty:
10
is the total quantity filled. This order had 1 fill for 10 BTC before it was cancelled. - LeavesQty:
0
represents the quantity left open for execution. In a cancelled or expired order, this quantity should equal 0. - OrderQty:
20
represents the quantity of BTC ordered in the original New Order Single<D>
.
Reject
In this scenario, TRADEBOTOE002
sent another New Order Single <D>
but this time there is an error: the Symbol <55>
field value is invalid.
Because the symbol is invalid, the server rejects the order. This is an example of an associated execution report:
RAW 8=FIX.4.4|9=237|35=8|34=2|49=GEMINI|52=20180516-22:09:05.019|56=TRADEBOTOE002|6=0|11=7v1cs7HFCT2WehadcO|14=0|17=1526508545018|37=0|38=10.4|39=8|44=0.05|54=2|55=ABCDEF|58=Unsupported Symbol value 'ABCDEF'|59=1|60=20180516-22:09:05.018|103=99|150=8|151=0|10=090| HEADER 8 BeginString: FIX.4.4 9 BodyLength: 237 34 MsgSeqNum: 2 35 MsgType: ExecutionReport (8) 49 SenderCompID: GEMINI 52 SendingTime: 20180516-22:09:05.019 56 TargetCompID: TRADEBOTOE002 BODY 6 AvgPx: 0 11 ClOrdID: 7v1cs7HFCT2WehadcO 14 CumQty: 0 17 ExecID: 1526508545018 37 OrderID: 0 38 OrderQty: 10.4 39 OrdStatus: REJECTED (8) 44 Price: 0.05 54 Side: SELL (2) 55 Symbol: ABCDEF 58 Text: Unsupported Symbol value 'ABCDEF' 59 TimeInForce: GOOD_TILL_CANCEL (1) 60 TransactTime: 20180516-22:09:05.018 103 OrdRejReason: OTHER (99) 150 ExecType: REJECTED (8) 151 LeavesQty: 0 TRAILER 10 CheckSum: 090txt
Notes:
- LeavesQty:
0
indicates that there is no quantity remaining for further execution. - OrderQty:
10.4
is the quantity ordered in the original New Order Single<D>
. - OrdRejReason:
OTHER (99)
suggests that there is an alternative reason for rejection. In this example, the reason for rejection is stated in the Text<58>
field. - OrdStatus:
REJECTED (8)
indicates that the order is rejected. - Symbol:
ABCDEF
is not a valid symbol. See Supported Symbols for a list of valid symbols. - Text:
Unsupported Symbol value 'ABCDEF'
indicates that the symbol field's value is invalid.