As more crypto exchanges are using Market Surveillance Compliance, what do we think makes more sense for a Compliance firm to receive the message type as?
The FIX MiFID type construct leans towards 35=AE (Trade Report) but I have also seen a drop-copy type message of Order Ack(35=8, 150=0, 39=0) and Executions(35=8, 150=F, 39=1or2) to share trade messages for Compliance. What do we think makes more sense? 35=AE message is missing Order Status tag(39 or a comparable tag).
TradeCaptureReport(35=AE) has the field OrdStatus(39) in the TradeReportOrderDetail component which is nested inside the TrdCapRptSideGrp component.
In order to catch certain Trade Surveillance use cases like Spoofing or Layering, we need to receive Order Cancels without executions real time. Isn’t Trade Capture Report used for executed trades only? For those cases, is it ok to use Execution Report ACK message to report Order Ack, Order Cancel Ack and Trade Fill? e.g.
Order ACK: 35=8, 150=0, 39=0
Execution FILL: 35=8, 150=F, 39=1 or 2
Order CANCEL Ack: 35=8, 150=4, 39=4
It sounds to me you want a drop copy feed of all the ExecutionReport messages if you’re going to attempt reconstructing a situation to surveil for spoofing or layering, and possibly a drop copy of the orders but getting the ExecutionReport for the order ack should be sufficient.
thanks. this helps!