Protocol
Messages
Session layer
Order entry (Client → Kraken)
Execution and rejects (Kraken → client)
Every message starts with the standard header and ends with the standard trailer.
Cancel scope
A single-order cancel (OrderCancelRequest) looks the order up among the orders cached for this SenderCompID, earlier connections included, not only the orders of the current session. Side and Symbol (or InstrumentID) must match the order.
On US Perps every OrderMassCancelRequest (35=q) must carry AllAccounts (5034). With Y, MassCancelRequestType (530) = 1 and 7 are engine sweeps per instrument and Account: they cancel every order of that Account on each instrument where this SenderCompID has a cached open order, whoever placed it, and type 6 cancels this connection’s orders one by one. With N and Account (1), the cancel is narrowed to that one account for types 1, 6 and 7. A request without 5034 is refused with 35=3. If nothing is cached for the scope, Kraken sends no request and no reply. See Order Mass Cancel Request.
How US Perps differs from Spot and Futures
Some behaviours differ by venue. The table summarises where US Perps differs from Spot and Futures; the message pages give the details. Spot and Futures are shown for comparison only. Items marked “to be confirmed” have not been verified end to end.Related
US Perps API overview
How order entry, market data and drop copy fit together.
Drop Copy
FIX 4.4 copy of every execution report on your account.
SBE market data
Binary market data: instruments, L3 book, trades and status.
US Perps connectivity
Connectivity and colocation documents.