Setup guide
Connect your accounts
Each platform takes about two minutes. Always create the key as read-only — 4tune never places trades, deposits or withdraws. Your keys stay on your device and go straight to each platform, never to us.
Trading 212 Stocks — live now
- Log in to Trading 212 (web or app) → open Settings
- Go to the API (Beta) section → New API key
- Name it (e.g. "4tune")
- Under IP access restrictions, choose Unrestricted for now (fine since your IP changes) — switch to "Restrict to trusted IPs" later if you have a static IP
- Under Permissions, turn ON only:
- Account data — needed for cash/balance
- Portfolio — needed for your open positions
- If you also want fees paid shown, additionally turn ON History and History - Orders — Trading 212 doesn't expose a single "fees" number, so 4tune reads it from your recent order history instead
- Generate the key — copy both the API Key and API Secret, the secret is shown only once
- Paste both into 4tune's Trading 212 settings
Full permission list you'll see: Account data, History, History‑Dividends, History‑Orders, History‑Transactions, Metadata, Orders‑Execute, Orders‑Read, Pies‑Read, Pies‑Write, Portfolio. Account data and Portfolio cover the core balance/positions view. Add History + History - Orders only if you want the fees figure too — it's optional.
Note: the Public API only works with Invest and Stocks ISA accounts (not SIPP), and is still in beta.
Alpaca Stocks — live now
- Log in at app.alpaca.markets — not the docs site, that's just reference material
- You'll land on the dashboard overview. Confirm which account you're on (top-left switcher, e.g. "Paper Trading") — Paper and Live have separate keys
- On the right-hand side of the overview page, find the API Keys panel (it also shows the correct Endpoint URL for that account)
- Click Generate New Keys — the Key and Secret appear right there on the page
- Copy both immediately — the page warns the secret disappears if you refresh or navigate away
- Paste both into 4tune's Alpaca settings, matching Live/Paper to what you generated
Alpaca has no read-only API keys. Unlike every other platform here, there is no permission selector: any key you generate can also place and cancel orders and liquidate positions. 4tune never does any of that — it only ever reads — but the key itself carries the power, so it is worth knowing.
If you would rather 4tune's key could not trade at all, generate it on a Paper (practice) account. Paper keys still provide live IEX market data, so stock prices, search and charts all work exactly the same; only the holdings shown are the simulated ones.
Binance Crypto — live now
- Log in to Binance → click your profile icon (top right) → Account
- In your Account page, find API Management
- Enter a label for the key, then click Create API
- On "Choose API Key type", pick System generated (HMAC key + secret pair) — not "Self-generated", which needs your own separate keypair software
- Complete 2FA (email + authenticator/SMS) to confirm
- Copy the API Key and Secret Key — the secret is shown only once
- Leave Enable Spot & Margin Trading and Enable Withdrawals OFF — read-only is enough
- If your key isn't IP-restricted, Binance requires it to be read-only only anyway
4tune shows your live balance and USD value. Per-transaction fee tracking for Binance isn't built yet.
Kraken Crypto — live now
- Sign in to Kraken → click your profile icon (top right) → Security → API
- Click Add Key and give it a name
- Under Funds permissions, check Query — leave Deposit, Withdraw, and Earn unchecked
- Also check Query closed orders & trades under Orders and trades — 4tune reads your trade history through it to work out both fees paid and crypto profit/loss, since Kraken reports neither directly. Without it, both show "unavailable"
- Leave Data unchecked for now — 4tune doesn't use it yet
- Leave WebSocket interface, IP restriction, and Key expiration off (their defaults) unless you specifically want them
- Click Create API key and copy both the API Key and Private Key — the private key is shown only once
- Paste both into 4tune's Kraken settings
⚠️ Kraken has two separate APIs with separate key pages — Spot (what 4tune uses, created under Security → API) and Futures (created under Account → Connections & API, or on the Futures site). A Futures key will not work here and Kraken will reject it with "Invalid key" if you paste it in by mistake.
4tune shows your live balance, USD value, and fees paid (with the optional permission above).
OKX Crypto — live now
- Sign in to OKX → click your profile icon (top right) → API keys
- Click Create API key and choose API trading (not a broker/third-party app)
- Give it a name and set a Passphrase — write it down, OKX never shows it again
- Under Permissions, tick Read only — leave Trade and Withdraw unticked
- Leave the IP address field empty (4tune calls OKX straight from your browser, so there's no fixed IP to allow-list)
- Confirm with your 2FA code, then copy the API key and Secret key — the secret is shown only once
- Paste all three — API key, Secret key and Passphrase — into 4tune's OKX settings
⚠️ OKX needs three values, not two. If you lose the passphrase it can't be recovered — delete that key on OKX and create a new one.
4tune shows your live balance, USD value per asset, and spot trading fees from the last 3 months. P&L for OKX isn't calculated yet.
Kraken Futures Perps / Margin — live now
⚠️ This is a separate API from Kraken Spot above — a different site, different key. If you already made a Spot key on kraken.com, you still need a second one on Kraken Futures.
- Go to futures.kraken.com and sign in (or link your existing Kraken account if prompted)
- Click your name (top right) → Settings
- Go to the API panel → Create Key tab
- Under General API, choose Read Only — not Full Access
- Leave Withdrawal API as No Access
- Click Create Key and copy both the Public key and Private key — shown only once
- Paste both into 4tune's Kraken Futures settings
Shows portfolio value, unrealized PnL, margin equity, and open positions (symbol, side, size, entry price). Per-position live PnL isn't shown — Kraken's own wallet-level PnL is used instead, since computing it per-position needs a live price feed and differs by contract type.
Stuck on a step?
Email 4tune.tracker@gmail.com with the platform and a screenshot of the error (never your keys) and we'll help.