GUIDES

Kraken Futures API Setup Guide — Perpetuals Market Data and Futures Trading

Contents
Connect Kraken Futures to TraderWe for perpetual futures — market data, recording and order routing. Market data needs no key. Orders need an API key, and the signature is not the same one Kraken spot uses, which trips people up.

1. Spot and futures are two different connections

Kraken runs two separate platforms with separate hosts, separate keys and separate signing rules. In TraderWe they are two separate entries: - Kraken — spot pairs, ws.kraken.com - Kraken Futures — perpetuals, futures.kraken.com A spot API key will not work here, and a futures key will not work on spot. Create the key on the platform you are connecting.

2. Symbols

Kraken Futures uses its own product codes:
You typeTraderWe sends
BTC-USD or BTC/USDPF_XBTUSD
ETH-USDPF_ETHUSD
PF_XBTUSDPF_XBTUSD (unchanged)
PF_ is a perpetual. Kraken calls Bitcoin XBT, not BTC, so TraderWe translates that for you. If you already know the product code, type it directly and it passes through untouched. The universe scanner only picks perpetuals. Dated futures (FF_, FI_) and index products are excluded, as are products the exchange has halted. You can stream up to 50 symbols at once.

3. Market data — connect with no key

Settings → Exchange connections → Kraken Futures. Press Connect. Quotes, trades and the order book come over Kraken's public futures websocket, so you can record, backtest and run paper strategies without ever creating a key. Trade strength is meaningful right after connecting. TraderWe pulls recent trade history over REST when you subscribe, so the rolling window starts full instead of starting at zero and drifting up for half an hour.

4. Add a key when you want to place orders

- Sign in at futures.kraken.com and create an API key there. Not on kraken.com, that is the spot platform. - Give it trading permission. Do not enable withdrawal — TraderWe never moves funds, and a key that cannot withdraw cannot drain the account if it leaks. - You get a public key and a private key. Paste them into API Key and Private Key, then Connect. TraderWe signs one harmless account request to confirm the key works before you ever place an order. If the signature is refused, market data keeps running and the badge tells you the key was rejected rather than failing the whole connection.

5. Orders

TypeSent asNeeds
Marketmkt
Limitlmtlimit price
Stopstpstop price
Stop limitstp + limit priceboth prices
Kraken Futures uses one stop type that becomes a stop-limit when you also give it a limit price. TraderWe refuses a stop without a stop price rather than guessing one. Validity is GTC. Perpetuals trade continuously, so there is no "day" session to expire against. Cancelling uses the client order id, so a cancel works even if the exchange order id was never recorded. Order routing stays locked until you arm it. Until then, strategies run in paper mode and fill inside TraderWe against live Kraken Futures prices.

6. Check it worked

- The badge reads Connected. With a key it also confirms the signature was accepted. - Prices tick continuously, perpetuals do not close. - Your account balance and any open positions appear once a key is set.

7. Common problems

The key is rejected but market data works. That is intended. We do not kill your quotes over a bad key. The usual cause is a spot key. Futures keys are created at futures.kraken.com and are not interchangeable. "Kraken Futures rejected — ..." on an order. The exchange answered with a reason. Common ones are insufficient margin, a size below the product minimum, or a halted product. A symbol will not subscribe. Check the product code. If you typed BTC-USD it becomes PF_XBTUSD; if that product is halted or delisted the subscription is dropped. Funding rate is missing. Not received on this connection today. If you need it, record it separately. Limitations - Perpetual funding rate is not received. - There is no historical backfill for Kraken Futures. Recording forward from now is the only path to a backtestable dataset here. - Fills of resting limit orders are learned from the order response and by asking, not from a private push stream, so a late fill can take a moment to appear. - Perpetual futures carry leverage and funding costs. Position sizing that is fine on spot can be a liquidation on perps — size against the notional, not the margin.

Related reading

← All guides

Originally published by TraderWe on July 20, 2026. You may quote and link to this page. Republishing the full text without a link back to the original is not permitted.

3 replies

P
PremarketPete· Jul 2026 ago
pre-open checklist for me now: 1) confirm i'm on the futures entry not the spot one, 2) make the key on the futures side, 3) sanity check the symbol translation on one ticker before i trust the rest. still unclear to me whether the scanner drops a product mid-session if the exchange halts it or only at the next refresh - anyone tested that?
L
LurkerLee· Jul 2026 ago
Does the keyless feed carry mark price and funding, or just trades and book? Liquidation math is on mark, so if I'm backtesting off last trade I'd rather know now.
CryptoKarl· Jul 2026 ago· edited Aug 2026 ago
Can confirm the two-key thing bites. I made a key on kraken.com first and spent way too long convinced my signature code was broken. Also the no-withdrawal permission point is underrated, my keys have been on more sketchy machines than I'd like to admit and the only thing standing between me and disaster is that checkbox. Well, that and my totally responsible position sizing lol
Sign in to reply →