Contents

Self-hosted strategies

Connect a strategy that is already running through a read-only exchange API and build a verifiable performance record.

Connection overview

You do not need to move your strategy code to the platform. The platform reads your account's balances, positions, fills and fund flows every day and calculates performance independently, building a verifiable record. Once the record meets the requirements, you can apply to list; once listed, you can apply for group funding.

What the platform does and does not do

The platform doesThe platform does not
Read account balances, positions, fills and fund flows with a read-only keyPlace orders, withdraw or transfer funds
Calculate equity, drawdown and other metrics independently every dayRead or store your strategy code
Recheck the key's permissions before every read, and stop reading if the permissions have been widenedStore keys in plain text or write them to logs
Show performance under a codename after listingReveal your real identity or individual fills

Why only a read-only key

For performance to be credible, the numbers must be read by the platform directly from the exchange, not reported by the PM. A read-only key lets the platform see the full account data without being able to move funds or touch your code.

Connect an exchange account

Connecting takes two steps: first connect the exchange account, then fill in the strategy details. Each exchange account can back only one record, identified by the account UID, so switching to a different key does not get around this.

Prerequisites

  • A funded exchange account with real fills. We recommend a dedicated subaccount that runs only this strategy.
  • An API key on this account with only the read permission. Keys with trading, withdrawal or transfer permissions are rejected, and the platform does not store them. Longbridge is the one exception: it offers no read-only key, so its key is accepted once you have read the warning on the connect page and ticked that you understand it can trade. We only ever read with it. Tiger Brokers and Hyperliquid need no key: Tiger is authorized on Tiger's own page, and a Hyperliquid account is proven with one wallet signature. Interactive Brokers needs no API key either: it is read with a Flex Query and a Flex Web Service token, which can only fetch statements.
  • We recommend adding the platform egress IP shown on the connect page to this key's allowlist. On Binance, a key with no IP restriction loses only its trading permission after about 90 days; a read-only key is not affected. On Bybit this is required: a key not restricted to that IP is rejected.

Supported exchanges

ExchangeWhat to enterWhat is read
BinanceAPI Key, Secret KeyUSDⓈ-M and COIN-M futures are read automatically; spot is read for the pairs you declare
OKXAPI Key, Secret Key, PassphraseSpot, perpetuals and dated futures across the whole account. Margin and option fills are not read, and a night with a margin or option position open is not valued
DeribitClient ID, Client SecretThe whole account
KrakenSpot API key and API secret; add the derivatives Public Key and Private Key if you trade futuresThe whole account
Tiger BrokersNo key: you are sent to Tiger to authorize, tick the accounts to include and confirm, then come back hereStocks across the live accounts you ticked, in USD (a holding or fill in options, futures or forex stops that night's read; a paper account never counts)
HyperliquidYour account address, then one signature from its wallet — no keyThe whole account
BybitAPI Key, API Secret — a system-generated, Read-Only key restricted to the platform IPThe whole Unified Trading Account and Funding wallet
UMXAPI Key, Secret Key — a read-only key locked to the platform egress IPThe whole crypto side: spot and perpetuals (stocks are not read yet)
LongbridgeApp Key, App Secret, Access Token — after ticking the warning that this key can tradeUS stocks and US stock options across the whole account, in USD (Hong Kong and other non-US markets, currencies other than USD and HKD, dividends, interest, option exercises, corporate actions and crypto are not read yet — see below)
CoinbaseA key created on the Coinbase Developer Platform: the API key ID and Secret. The Primary portfolio's key for spot, the derivatives portfolio's key for perpetuals — both if you trade bothThe portfolios you connect: every coin and spot fill in Primary, perpetuals in the derivatives portfolio (stocks, prediction markets and US futures are not read yet)
moomoo, Futu (Hong Kong)AppKey ID and Private Key — a read-only AppKey made on open.moomoo.com (moomoo) or open.futunn.com (Futu)Stocks, ETFs and options across the whole account, in USD
Interactive BrokersQuery ID and Flex Web Service token — from an Activity Flex Query and the Flex Web Service in IBKR's Client PortalStocks, ETFs and options across the whole account, in USD, back to the day the account opened (other products count in the value as one figure)
Bybit
  • Only Bybit global (bybit.com) is supported. Keys created on Bybit EU, TR, KZ, GE, UAE, ID, JP or HK are not supported yet.
  • The connect page walks through creating the key on Bybit. Choose System-generated API Keys, Read-Only, and restrict the key to the platform IP shown on the page.
  • Money in Earn, trading bots or copy trading is outside the record: moving money there reads as a withdrawal, and moving it back as a deposit. The account page shows how much sits outside.
  • On a night with a Crypto Loans or Pay Later loan open, the account is not valued and nothing is published for that night. Recording resumes the night after the loan is repaid.

Step 1: Connect the exchange account

  1. Open My Strategies and click Connect your own strategy.
  2. Choose the exchange and enter the key as prompted. The page checks the key format and lists the permission requirements the key must meet.
  3. Click Verify and connect and confirm. The platform does one real read of the account with this key. If it passes, you move to step 2.
Binance keys
  • Turn on only the read permission; we recommend restricting the key to the platform egress IP shown on the connect page.
  • The 30 days before you connect are rebuilt from Binance's daily snapshots. If, when you connect, money sits in Funding (where Binance Pay and P2P money lands), Earn, Isolated Margin, Options, Trading Bots or Copy Trading, those days cannot be rebuilt and the record starts on the day you connect. Money in your COIN-M (coin-margined) futures wallet does not stop the rebuild: we rebuild that wallet from its own ledger. The rebuild still stops if a COIN-M position that was already open at the start of those 30 days was traded during them, or if the wallet had an insurance clearance or a delivery settlement in that time. Some card, bank and P2P transactions inside those 30 days also stop the rebuild.
Kraken's two key pairs
  • API key / API secret: the spot key. Required.
  • Public Key / Private Key: the derivatives key. Required if the strategy trades Kraken futures, if the account has ever transferred funds to the futures wallet, or if the spot key has a query start or end date set. If you trade only spot, you can leave it blank and add it later in account management, but once added it cannot be replaced. Nights withheld before the derivatives key is added — nights on which the account had used derivatives — stay unpublished; adding the key does not fill them in.

The connect page has a guide to creating Kraken keys. Note that Kraken futures keys have full permissions by default. Change them to read-only and turn off the withdrawal permission.

Tiger Brokers
  • There is no key to create. Choose Tiger Brokers and click Go and authorize: on Tiger's page, sign in, tick the accounts to include and confirm, and you are brought back here.
  • Only the live accounts you tick count; a paper account never counts toward a record.
  • An authorization lasts at most 15 days. The account page shows how many days are left; click Re-authorize before it runs out and the record carries on. If it lapses, recording pauses until you authorize again, and the history is kept.
  • Stocks only. A holding or fill in options, futures or forex stops that night's read rather than being skipped, so the account is never shown smaller than it is.
Hyperliquid
  • There is no key. Enter the address you trade with, connect that wallet and sign one message. Signing moves no funds, grants no trading access and puts nothing on-chain; we never ask for a private key or seed phrase.
  • For a sub-account, enter the sub-account's own address; its master wallet signs. For a multi-sig account, every required signer signs from their own wallet, using a link the page gives you to send them. An API wallet cannot be connected on its own: enter the account it acts for. A vault cannot be listed.
  • If another user has already listed the address, your signature files a claim for our staff to review instead of connecting it.
  • The record's history is rebuilt from the account's public fills and ledger, as far back as Hyperliquid still keeps them. Where something cannot be explained, the record starts later rather than leaving a hole.
UMX keys
  • Create the key on your UMX main account and turn on only read. Leave trade, spotTrade, contractTrade, transfer and withdraw off. These names are the ones in UMX's API documentation; UMX's own screen may word them slightly differently.
  • The IP whitelist is required: enter only the platform egress IP shown on the connect page — no wildcard or network range. A key not locked to it is rejected.
  • A sub-account's own key is rejected. To connect a sub-account, use a member key: after you click Verify and connect, pick the account this strategy trades in from the list UMX returns. The member holding the key needs "View member API details" turned on, or the key cannot be checked and is rejected.
  • 本位 can be USD or BTC.
Longbridge keys
  • Copy the App Key, App Secret and Access Token from the same application on Longbridge's developer portal (open.longbridge.com). There are no permissions to tick and no IP setting.
  • Longbridge offers no read-only key, so this key could trade in your account. The connect page says so before you paste it, and Verify and connect stays disabled until you tick that you understand. We only ever read with it: our connection cannot place orders, move money or renew the token.
  • The Access Token expires about three months after you create it. We remind you before it does. Create a new one in Longbridge and use Replace access token on the account page: the record keeps its history. Renewing a token in Longbridge retires the old one at once, so replace it straight away. While no working token is held, recording is paused rather than abandoned.
  • Days are rebuilt from Longbridge's daily statements, which arrive the morning after each trading day.
  • Only US stocks and US stock options in USD are read from the statement. Hong Kong and other non-US markets, currencies other than USD and HKD, dividends, interest, option exercises, corporate actions and crypto leave that day's statement unread, and the day does not count until an operator has ruled on it.
Coinbase keys
  • On the Coinbase Developer Platform (portal.cdp.coinbase.com) → Settings → API keys, create a secret API key: tick View only, and keep Coinbase's default signature algorithm, Ed25519 (ECDSA works too).
  • The connect page first asks what you trade on Coinbase: tick Spot, Derivatives, or both. Spot takes the Primary portfolio's key and derivatives the derivatives portfolio's key — one key per portfolio. Paste the Secret as it is: an Ed25519 one is a single line, an ECDSA one a block of about six lines.
  • Each Coinbase account can back only one record. To change how it is connected later, unbind it and connect again as a new record.
  • If you connect spot only and later start trading perpetuals, add the derivatives key in account management — until then those days get no figure.
  • A perpetuals record starts on 1 October 2026 at the earliest. Nights holding stocks, prediction markets, US futures or a coin we cannot price, and nights with a pending movement we cannot place, are shown as gaps and not published.
moomoo and Futu (Hong Kong) keys
  • Pick moomoo for a moomoo account (US, Singapore, Canada, Malaysia or Australia) and Futu (Hong Kong) for a Futu Securities account. An AppKey works only on the site it was made on: open.moomoo.com for moomoo, open.futunn.com for Futu.
  • After you log in, complete the API Questionnaire and Agreements page. Then open AppKey Management → Create AppKey: under Authorized Accounts tick one account only, tick Market Quote and Trade Query, and leave Trade Execution, Watchlist and Customize signing algorithm unticked.
  • Add the platform egress IP shown on the connect page to the IP Whitelist. An AppKey without it expires 30 days after it is created, and the record stops with it.
  • The private key is shown only once, when the AppKey is created. Paste the AppKey ID and the whole private key, from -----BEGIN PRIVATE KEY----- to -----END PRIVATE KEY-----; it may be on one line.
  • When you connect, the platform proves the key cannot trade by sending one cancel request for an order that does not exist: moomoo refuses it, and nothing in your account changes. A key with Trade Execution is rejected, and a key's permissions cannot be edited, so fix a wrong key by creating a new AppKey.
  • moomoo keeps no history the platform can read, so the record starts on the day you connect. Nights holding funds, bonds, futures, warrants or crypto are shown as gaps and not published.
Interactive Brokers (IBKR)
  • IBKR is read through its Flex Web Service: you build one Activity Flex Query in Client Portal (Performance & Reports → Flex Queries) and turn the service on, which gives you a token. The connect page walks you through it one step at a time.
  • In the query, tick Select All in each section the guide lists — except Account Information, where you tick only Account ID, Currency, Account Type, Date Opened and IB Entity: the other fields are personal details we do not need. Set Period to Last 365 Calendar Days, Date Format to yyyy-MM-dd, Time Format to HH:mm:ss, and Include Currency Rates and Breakout by Day to Yes. Select exactly one account.
  • Paste the Query ID (the number beside your query) and the Flex Web Service token. The token can only fetch statements: it cannot place orders or move money.
  • If IBKR offers an IP restriction for the token, use the platform egress IP shown on the connect page, or leave it empty. Generating a new token retires the old one, so paste the new one with Replace access token on the account page. While no working token is held, recording is paused rather than abandoned.
  • The record reaches back to the day the account opened. Each new day appears the morning after IBKR publishes its statement; until then it shows as waiting for IBKR's statement, which is normal.
  • Products other than stocks, ETFs and options — futures, bonds, funds and the like — count in the account's value and are shown as one figure on the account page. A day when they are too large a share of the account is shown as a gap.

Step 2: Fill in strategy details

Public codename, one-line summary, type, team size, founded year and location are required and are shown after listing. Style tags, capacity ceiling and website are optional. When you are done, click Save strategy to open the record page for this strategy.

With Binance, you also need to declare each spot pair to read, up to 50. Applying to list requires at least one declared pair. You can only add to your declared pairs. A pair the exchange has delisted and that is marked "unusable" can be removed.

Common rejection reasons

MessageWhat to do
This key carries a permission it must not have, and we did not store itOn the exchange, remove the trading, withdrawal, transfer and similar permissions, then connect again.
The exchange refused the readUsually the key or secret is mistyped, the key was deleted, the IP allowlist does not match, or the key has expired.
This account's equity reads as zero or lessThe account needs funds before it can be connected.
This exchange account is already in use by another record of your own / This exchange account is in use under another userOne exchange account can back only one record.
An account without an approved identity application may connect only a limited number of exchange accountsComplete Identity verification to connect more.
The exchange did not answerTry again later. A retry costs nothing.

If you leave partway through, the unfinished connection appears under Unfinished connections in My Strategies, where you can continue. Choosing to discard it unbinds the account and destroys the key.

Performance record and verification status

The platform reads your account once a day and closes each verification day at 23:30 UTC. It calculates equity with time-weighted return (TWR), so deposits and withdrawals do not count as returns. When you connect your first account, the platform backfills some history, so the record may start before the day you connected.

In My Strategies, click the strategy to open its record page. Overview shows progress toward the listing requirements. Strategy data shows the equity and drawdown curves and the event timeline.

Record statuses

StatusMeaning
Verifying, day NDay N since the record started. The record is building up the data needed to list.
N days verifiedAll listing requirements are met, and you can apply to list. In the My Strategies list, it shows as "Ready to apply".
StoppedAll exchange accounts have been unbound, and collection has ended.
DelistedRemoved from the Strategy Marketplace. Collection continues, and you can apply to list again.

For statuses after you submit a listing application, see Submit a listing application.

Data gaps

If the account cannot be read on a given day, that day is marked as a gap on the curve as it is, without interpolation. The continuous day count restarts from 1, but "complete collection days" in the listing requirements are counted in total, so an interruption does not reset them. The curve starts drawing once the record has 7 days.

In the event timeline, entries where collection had a problem have Add a note, where you can explain what happened, such as why you adjusted positions or paused trading.

Exchange account statuses

On the record page, open Account management to see each account's status, key permissions, IP allowlist and key expiry.

StatusMeaning
CollectingReading normally.
UnreadableTemporarily cannot be read. Collection resumes automatically once it recovers.
SuspendedThe platform paused reading: the key's permissions were widened (for example, a trading permission was added), the key lost its read permission, or an operator paused the account. Follow the instructions on the account management page.
AbandonedThe account could not be read on too many nights in total (not necessarily in a row), and collection will not resume automatically. Reconnect the same account within the allowed number of days to continue the record.
UnboundThe account has been unbound, and the key has been destroyed.

Unbind and delete

  • Unbind: stops reading and destroys the key. Reconnect the same account within the allowed number of days to continue the record; the days in between are recorded as gaps.
  • Delete record: if no data has been collected yet, the record is deleted completely. After that, deleting destroys the key and removes the record from My Strategies and the Strategy Marketplace, while the historical data is kept. A strategy that already has funding cannot be deleted.