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 type | TraderWe sends |
| BTC-USD or BTC/USD | PF_XBTUSD |
| ETH-USD | PF_ETHUSD |
| PF_XBTUSD | PF_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
| Type | Sent as | Needs |
| Market | mkt | — |
| Limit | lmt | limit price |
| Stop | stp | stop price |
| Stop limit | stp + limit price | both 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.