Kraken API Unlocked — the market data feeds systematic traders use on Kraken

Wait 5 sec.

TL;DR:Kraken’s API provides real-time and historical market data feeds to different strategy types: L2 order book depth for execution algorithms, OHLCV and trade history for backtesting, funding rate data for carry strategies, and ticker feeds for momentum signals.Systematic traders typically use 2–3 feeds based on strategy type, over-subscribing adds overhead without improving signal quality.Knowing which API endpoints exist doesn’t tell you which feeds to actually use. Execution algorithms commonly use L2 book depth 10 rather than 1,000. Momentum strategies typically don’t need an order book at all. And if you’re backtesting on 6 months of data, you’re missing how your strategy performs across market cycles.Here’s what systematic traders subscribe to for execution algorithms, backtesting, and carry strategies, along with what you gain from combining feeds instead of running them in isolation.What market data feeds does Kraken’s API offer?Real-time feeds: Ticker (price/volume), order book (L2 depth, L3 individual orders), trades (executed transactions), OHLCV (streaming candlesticks)Historical data: OHLCV, historical funding rates, trade historyFutures-specific: Mark price, funding rates, open interestAccess methods: WebSocket v2 for real-time, REST for historical, FIX for institutionalDo you need L2 or L3 order book data for your crypto trading strategy?Ticker data provides best bid, best ask, and last price. But if you’re executing size, ticker alone doesn’t tell you how much liquidity sits behind those prices.L2 (aggregated orders)Order book (L2) shows aggregated depth across multiple price levels. This matters when you’re sizing orders to avoid slippage. If you’re selling 5 BTC and the best bid only has 0.08 BTC of depth, you’ll move through multiple levels. L2 shows you this before you send the order.L3 (individual orders)L3 provides a full order-by-order view of all resting orders in the book, including order IDs and timestamps. This enables queue priority analysis; you can determine where any order, including your own, sits in the queue at each price level, as well as fill probability estimation and market microstructure analysis. L3 is primarily used for sub-second execution or queue position analysis.From a performance standpoint, the latency difference between L3 and L2 feeds is negligible compared to transport time. The main cost is payload size: L3 describes every individual order in the book rather than cumulative quantity at each price level, which means more data to encode, transmit, and decode. If you can’t articulate why you need individual order visibility, L2 is sufficient for most systematic strategies. Depth optionsThe WebSocket book channel supports five depth levels — 10, 25, 100, 500, and 1,000. Execution algorithms commonly use depth 10, which covers the actionable range with minimal payload overhead. Depths 500 and 1,000 are used for market impact modeling or analyzing deep liquidity and are more compute-intensive to maintain.How do you access Kraken’s historical market data for backtesting?OHLCV (candlestick data) is commonly used for backtesting. Moving averages, RSI, breakout signals, they all use OHLCV as input. But OHLCV alone doesn’t tell you if your execution assumptions are realistic. If your backtest assumes you can fill 10 BTC at bid without slippage, you should validate that against trade history. Pull the trade feed to confirm that volume actually traded at those levels during your backtest period.WebSocket vs REST for OHLCV: Use WebSocket if you need the current candle updated in real-time as trades happen, rather than polling for a completed candle.How do you use Kraken’s funding rate data for carry strategies?Funding rate carry strategies harvest the periodic payments between longs and shorts on perpetual futures. You need current rates for live monitoring (futures ticker provides this) and historical rates for backtesting.Mark price vs. index price: The futures ticker includes both, along with the last traded price, three distinct values. Mark price determines liquidation risk and unrealized P&L. The index price is the real-time spot reference price used in funding rate calculations. During volatile periods, mark price and index price can diverge; when that spread widens, it signals basis risk or liquidation pressure, something carry traders need to monitor closely. The last traded price is a separate figure reflecting the most recent fill and is not the relevant comparison for assessing liquidation risk.What are the most common mistakes when using crypto market data feeds?Using WebSocket for everything: If you’re backtesting or running slow strategies, REST polling is simpler.Assuming L3 is necessary.: If you can’t explain why you need individual order visibility and queue position data across the full book, you probably don’t need L3. Order book L2 (aggregated depth) is sufficient for most systematic strategies.Ignoring historical depth: A backtest on 6 months of data doesn’t show you how your strategy performs across market cycles. How do you get started with market data feeds on Kraken?New to Kraken’s API? Start with ticker and OHLCV via REST. These are public (no authentication), simple to integrate, and cover most of initial strategy development. Add order book and trade feeds when you move to live execution.For experienced traders:Identify your strategy type: Execution algo, backtest, momentum, etcPick 2-3 feeds: Don’t over-subscribe, start with what directly feeds your signals or execution logicCreate API keys when readyFull API documentation: docs.kraken.com/apiCreate your API keys now, or for institutional scale or FIX access, get in touch:Contact the Kraken Institutional teamFAQWhat market data does Kraken’s API provide for free?Kraken’s real-time market data feeds (ticker, order book (L2), trades, and OHLCV) do not require authentication. L3 individual order data requires authentication.What is the difference between L2 and L3 order book data on Kraken? L2 shows aggregated depth across price levels, which is sufficient for most systematic strategies. L3 shows all individual resting orders in the book with order IDs and timestamps, enabling queue priority analysis, fill probability estimation, and market microstructure analysis. L3 requires authentication. If you can’t explain why you need full individual order visibility, you probably don’t need it.Should I use WebSocket or REST for crypto market data?Use WebSocket if you need the current candle updated in real-time as trades happen, rather than polling for a completed candle. What data feeds do I need for a crypto execution algorithm?Execution algorithms commonly use L2 order book depth. The WebSocket book channel supports depths of 10, 25, 100, 500, and 1,000. Depth 10 is the standard starting point and covers the actionable range. Depths of 500 and 1,000 are used for market impact modeling and analyzing deep liquidity. Ticker data alone is insufficient when executing size because it doesn’t show liquidity behind best bid/ask.The post Kraken API Unlocked — the market data feeds systematic traders use on Kraken appeared first on Kraken Blog.