Live Prices
Markets

Kraken Futures Limit Orders Can Fill After Cancellation Due to Maker Protection Rules

TheCryptoDesk Editorial · 2m read
Kraken Futures Limit Orders Can Fill After Cancellation Due to Maker Protection Rules

Kraken futures limit orders submitted without post-only instructions can still execute after returning a successful cancellation acknowledgment if the cancel request arrives during the platform's Maker Protection hold window.

The exchange completed Phase 2 of its rollout after announcing 61 additional perpetual contracts subject to the functionality, following an earlier expansion on Oct. 8.

How Maker Protection Alters Order Cancellations

Kraken’s Maker Protection feature applies an initial 20-millisecond hold to non-post-only limit orders that could take liquidity before entering the matching engine, giving resting market makers time to react. When a trader submits a cancellation request during this window, the cancel request bypasses the hold delay immediately, but the underlying order is converted into an immediate-or-cancel (IOC) order rather than being deleted outright.

The converted placement retains its original hold release time. Once the release time expires, the order attempts to execute against available liquidity on the order book before discarding any unfilled balance. Because the cancellation request returns a separate success acknowledgment with a status of "cancelled", automated trading systems can receive a fill notification even after receiving confirmation that the order was canceled. If a converted limit order cannot trade upon release, Kraken's REST v3 API returns the status iocWouldNotExecute.

Contract Coverage and API Response Mechanics

Kraken specifies that market coverage is contract-specific and indicated via the makerProtectionMillis field in its instruments feed, where a zero or absent value denotes no delay. Kraken's 10 most liquid linear perpetual markets are explicitly excluded from the hold window, and spot trading is entirely unaffected. Furthermore, standalone post-only orders bypass the delay mechanism entirely.

Different order types handle cancellation during the hold window differently. Cancellation attempts targeting held immediate-or-cancel, fill-or-kill, or market orders return an ORDER_NOT_FOUND error, while the original order proceeds to the matching engine once released. Similar to trading perpetuals across derivative venues, understanding exact order matching latency is critical for institutional strategies.

  • Hold Window Conversion: Non-post-only limit orders canceled during the 20-millisecond hold convert to immediate-or-cancel (IOC) orders and may still execute upon release.
  • Phase 2 Expansion: Kraken added 61 additional perpetual contracts to Maker Protection after updating the rules on Oct. 8.
  • Exclusions: Kraken’s top 10 liquid linear perpetuals and all spot trading markets bypass Maker Protection.
  • API Behavior: Held limit cancellations return "cancelled" status while subsequent fills process independently; failed trades return iocWouldNotExecute. Cancellations for held FOK, IOC, or market orders return ORDER_NOT_FOUND.

Why It Matters

This dual-state execution behavior introduces significant reconciliation challenges for algorithmic and high-frequency traders on Kraken. Automated systems relying solely on immediate cancellation confirmations risk unaccounted position exposure if a converted order fills milliseconds later. As crypto derivatives exchanges refine latency management mechanisms to protect liquidity providers, API traders must update their execution engines to handle asynchronous status reports across complex market structures.

Read next