Changelog
What changed, and when.
An entry is written when a change alters a rule you are held to, money (a price, a fee, a split or a payout path), something you can newly do or can no longer do, or fixes something that was wrong in a way you could have hit. Changes to how the product looks are not listed.
Since September 19
This release covers the changes from 20 September to 2 October 2026 that alter a rule, money, what you can do, or fix something you could have hit, grouped by subject. A rule change says the day it took effect and links its dated entry in the rules changelog.
Rules and Your Account
newBSV delisted#BSV was delisted on 18 October 2026, because the open interest in it on Hyperliquid had stayed under $1 million for 24 hourly readings in a row (about $887,000 when it was removed).
BSV was delisted on 18 October 2026, because the open interest in it on Hyperliquid had stayed under $1 million for 24 hourly readings in a row (about $887,000 when it was removed). Nobody held a position in it. You can no longer open or add to a position in it. This applies to accounts already open. See the rules changelog.
newBOME delisted#BOME was delisted on 17 October 2026, because the open interest in it on Hyperliquid had stayed under $1 million for 24 hourly readings in a row (about $768,000 when it was removed).
BOME was delisted on 17 October 2026, because the open interest in it on Hyperliquid had stayed under $1 million for 24 hourly readings in a row (about $768,000 when it was removed). Nobody held a position in it. You can no longer open or add to a position in it. This applies to accounts already open. See the rules changelog.
newQNT delisted#QNT was delisted on 17 October 2026, because the open interest in it on Hyperliquid had stayed under $1 million for 24 hourly readings in a row (about $916,000 when it was removed).
QNT was delisted on 17 October 2026, because the open interest in it on Hyperliquid had stayed under $1 million for 24 hourly readings in a row (about $916,000 when it was removed). Nobody held a position in it. You can no longer open or add to a position in it. This applies to accounts already open. See the rules changelog.
newZEN delisted#ZEN was delisted on 16 October 2026, because the open interest in it on Hyperliquid had stayed under $1 million for 24 hourly readings in a row (about $851,000 when it was removed).
ZEN was delisted on 16 October 2026, because the open interest in it on Hyperliquid had stayed under $1 million for 24 hourly readings in a row (about $851,000 when it was removed). Nobody held a position in it. You can no longer open or add to a position in it. This applies to accounts already open. See the rules changelog.
newZORA delisted#ZORA was delisted on 16 October 2026, because the open interest in it on Hyperliquid had stayed under $1 million for 24 hourly readings in a row (about $939,000 when it was removed).
ZORA was delisted on 16 October 2026, because the open interest in it on Hyperliquid had stayed under $1 million for 24 hourly readings in a row (about $939,000 when it was removed). Nobody held a position in it. You can no longer open or add to a position in it. This applies to accounts already open. See the rules changelog.
newFive markets delisted#TNSR, SKR, HEMI, ZETA and BLUR were delisted on 13 October 2026, because the open interest in each on Hyperliquid had fallen under $1 million (about $195,000 on TNSR, $410,000 on SKR, $449,000 on HEMI, $903,000 on ZETA and $950,000 on BLUR).
TNSR, SKR, HEMI, ZETA and BLUR were delisted on 13 October 2026, because the open interest in each on Hyperliquid had fallen under $1 million (about $195,000 on TNSR, $410,000 on SKR, $449,000 on HEMI, $903,000 on ZETA and $950,000 on BLUR). Nobody held a position or had an order in any of them. You can no longer open or add to a position in them. This applies to accounts already open. See the rules changelog.
newMarkets are delisted and relisted by a standing rule#From 15 October 2026, a market is delisted when its open interest on Hyperliquid has read under $1 million at 24 hourly readings in a row, and a market delisted that way is listed again once its open interest has stayed at or above $2 million for 30 days.
From 15 October 2026, a market is delisted when its open interest on Hyperliquid has read under $1 million at 24 hourly readings in a row, and a market delisted that way is listed again once its open interest has stayed at or above $2 million for 30 days. The floors are the ones markets were already held to; the delisting no longer waits for a person to make it.
- Each market delisted or listed again gets its own dated entry here and in the rules changelog, with the open interest it was measured at.
- A position you hold in a delisted market stays open and keeps pricing, and you close it when you choose. New orders on it are refused.
- This applies to accounts already open. See v1.24.
improvedMarket orders, closes and stops fill at the order book's price, with a max slippage you set#An order that takes liquidity fills at the average price it gets across Hyperliquid's live order book for its size.
An order that takes liquidity fills at the average price it gets across Hyperliquid's live order book for its size. A market order is refused whole when its estimated slippage is above your max slippage. Nothing is partly filled.
A buy takes the asks from the lowest up. A sell takes the bids from the highest down. These fill this way:
- market orders and closes
- both legs of a Reverse
- take-profit and stop-loss fills
- a Conditional order that triggers at market
- TWAP and Swarm clips
- a limit order that is already through the market when you place it, never worse than its limit
Stock, index, commodity and FX markets fill from the order book too. Fees are Hyperliquid's base fees on every market.
Max slippage. The order panel's Slippage row sits between Margin Required and the fee. It reads, for example, Est. 0.0122% / Max 8%.
- Est. is the expected difference between your average fill price and the mid price at the size you typed. It comes from the live order book and updates as you type and as the book moves. It is what your fill pays.
- Max is the most you accept. It starts at 8%. Press it to pick 1%, 3%, 5% or 8%, or type your own from 0.1% to 30%. It is saved for each account.
- When the estimate is above your max, the order button is disabled. A red line under it says why, with a link to raise your max.
- If the book moves between your click and the order arriving, the order is refused with a message and no position is opened.
- On BTC, ETH and SOL a typical order costs less than the taker fee. On a thin market a large order costs a lot more, and the row shows it before you press.
- Through the API, a market order takes
maxSlippagePct, default 8.
Closing is never limited by max slippage. A manual close, Close All, Reverse, a reduce-only order, and stop-loss and take-profit fills ignore it, so it can never keep you in a position.
When the order book cannot fill or be read:
- An order that opens or adds is refused whole when the book cannot fill it, or when the book cannot be read at that moment. Send it again.
- A close is never refused for its size. What the book cannot hold fills at the last price level reached.
- A take-profit or stop-loss with no readable book closes at our live best bid (a long) or best ask (a short), when that quote is no more than 2 seconds old.
- A close you send reads the book once more. If it still cannot be read, the close fills at that same best bid or ask. It is refused, with the position left open, only when there is no fresh quote either.
Waiting limit orders fill at your limit price. A buy fills when the best ask reaches your price, and a sell when the best bid does. When we hold a live best bid and ask, it fills for no more than the size showing at the best price, and the rest keeps waiting at your limit. A large limit order can fill in several smaller parts.
Liquidation closes at the price that takes your account to its loss limit, so your loss stays capped there. A stop-loss whose market has gone through that price is capped at the same price, with or without a readable book.
Also:
- Slippage in Analytics is the fill against the order book's mid price, at the entry and at the exit.
- When a delisted market's positions are settled, every position settles at the market's price at the delisting, with no fee.
- Pro orders: the total size is cut down to the market's size step, each TWAP and Swarm clip is on the step, and leverage must be a whole number.
Before this change, every fill was priced at Hyperliquid's mid price whatever its size, and a losing position on a delisted market was returned at its entry price.
See How fills are priced and Max slippage.
Open accounts: affected, on every account including accounts already open, and on orders sent through the API. Max slippage from 2 October 2026 (v1.7). Order book fill prices from 5 October 2026 (v1.12), and this one is not in your favour. Closes and stops without a readable book, and the size of a waiting limit fill, from 5 October 2026 (v1.14).
What to do: Read the Slippage row before you press, and set your max for each account. If an opening order is refused, send it again.
improvedYour pass is decided at the mark price, and the closing price never reverses it#When your equity at the mark price, after the fees to close, reaches the profit target, you pass at that moment.
When your equity at the mark price, after the fees to close, reaches the profit target, you pass at that moment. We then close your positions for you.
- The closes fill like any other close, at the average price the live order book gives for their size.
- The closing price never reverses a pass. If the closes realize a little less than the mark price showed and your balance ends under the target, the account has still passed. Your balance is what the closes realized.
- The decision, the closes and the pass happen together. If a position cannot be priced, nothing is closed and nothing is decided. We try again while your equity is still at the target.
- If you close your positions yourself, you pass on your realized balance with every position closed.
- The sandbox and the demo pass the same way. The pass is decided at the mark price after the fees to close, and the price the closes fill at never holds the pass back or undoes it.
Before this change, the closes filled at the mark price whatever their size, and a sandbox account on a thin order book could sit at its target without passing.
See The profit target.
Open accounts: evaluations already open, from 7 October 2026 (v1.16). Every sandbox and demo account, including ones already open, from 7 October 2026 (v1.17).
What to do: Nothing.
improvedOne free trial and one tournament entry per person#A second account on the same inbox now counts as the same person for the free trial and for a tournament.
A second account on the same inbox now counts as the same person for the free trial and for a tournament.
- The same inbox means an address with a plus-tag (
name+2@), or the same Gmail address written with different dots. - The free trial is offered once per person: a second account on your inbox is offered the paid challenges.
- A tournament takes one entry per person: a second account on your inbox is told you have already entered.
- Signing up is unchanged. Your address is kept exactly as you typed it.
improvedLimit prices rest on the market's tick#A resting limit order, a stop and each price of a Scale ladder now rest at the nearest price the market can quote.
A resting limit order, a stop and each price of a Scale ladder now rest at the nearest price the market can quote. If you type a price between two ticks, the order rests at the price its row shows. Before, it rested exactly as typed while the row showed it rounded, so it could fill up to half a tick from the price shown.
This applies from 8 October 2026 to orders you place from then on, on accounts already open as well as new ones. An order already resting keeps its price. See the rules changelog.
improvedLeverage caps drop when a market gets volatile#The most leverage you can use on a market drops when its price moves too much for its cap.
The most leverage you can use on a market drops when its price moves too much for its cap.
Three lower caps:
- CASHCAT: 1x. It was 2x.
- SKR: 1x. It was 2x.
- Pre-IPO markets (QNT today): 2x. It was 4x.
Every other market keeps its cap. We test each market's one-hour prices over the last 90 days in two ways. A market that fails either test drops to the highest cap that passes both. In the 90 days to 9 October, SKR and CASHCAT each had 24-hour moves larger than the whole margin of a 2x position, after setting aside the largest 1 in every 100.
The cap halves while a market is volatile:
- When it starts. A market's last 24 hours have moved at least twice as much as its 30 days before. We check once an hour.
- What changes. The cap for new orders on that market is half the usual figure, rounded down and never under 1x. 5x becomes 2x, 4x becomes 2x, 2x becomes 1x.
- When it ends. 24 hours after the market settles.
- Bitcoin. When this happens on BTC, it applies to every crypto market.
The order panel, the leverage dialog and the Markets page show the halved figure while it is in force. If you hold a
position in the market, you get a notification when it starts and when it ends. On the API, /markets returns the
halved maxLeverage with leverageHalved: true.
Your positions and orders. A cap applies to orders you place and to waiting orders that fill while it is in force. An order that asks for more than the cap opens at the cap. A position you already hold is not changed or closed, and keeps the leverage it was opened with.
See Leverage caps.
Open accounts: every account, including accounts already open, from 10 October 2026: the three cuts (v1.20) and the halving (v1.21).
What to do: Check the cap in the order panel before you size a new position. A position you already hold needs nothing.
fixedOrders net against your position, and six order fixes#Seven changes to how orders are handled.
Seven changes to how orders are handled. Each one fixes something that was wrong.
An opposite-side order now reduces your position. If you hold a long and send a sell without Reduce only, the sell takes its size off the long. Only what is left over opens a short. A sell of 0.01 against a long of 0.03 now leaves a long of 0.02 and pays the taker fee on 0.01. Before, it closed the whole 0.03, opened a short of 0.01, and charged the taker fee on all of it. This is how an exchange behaves. The order panel's Est. Fee (Round Trip) now shows the lower fee when your order is against a position you hold.
Position limits hold when orders arrive together. Several orders sent in the same instant could each pass the size limits and together open a position larger than your account allows. The limits are now checked again at the moment each order fills, so the orders past the limit are refused.
A double click is one order. Every order, close, cancel and take-profit or stop-loss change you send from the terminal is now processed once. If your connection drops before the answer arrives, the terminal sends the same request again safely, and if it still gets no answer it tells you and reloads your positions and orders. Before, a double click could fill twice, and "Network error" left you guessing.
No leftover dust. A partial close that would leave less than $10 open now closes the whole position, because a remainder that small could not be closed on its own. Partial closes also take a size on the market's size step.
The size you type is the size you get. The order panel could round a typed size down by one step: 0.29 was sent as 0.28. It now keeps 0.29. Sizes sent through the API are cut down to the market's size step.
Clear refusals at the door. Leverage must be a whole number. A take-profit or stop-loss on the wrong side of the fill price is refused when you place the order, instead of closing the position on the next price tick.
A limit already through the market pays the taker fee. A limit order placed at a price the market has already passed fills straight away at the market price, like a market order. It now pays the taker fee, as the fee table has always said, and it is checked against your max slippage. It used to pay the maker fee and skip the check. A limit that rests and fills later still pays the maker fee. This one is not in your favour.
All of this applies to every account, including accounts already open. It is dated in the rules changelog.
fixedFunding is charged once an hour, on the position you held that hour#Funding on an open position is charged or credited once for each hour, on the size you held at the start of that hour.
Funding on an open position is charged or credited once for each hour, on the size you held at the start of that hour.
- Never twice. Each position and hour is recorded once, so a position cannot be charged the same hour twice.
- Never half done. The funding record and the change to your balance are saved together, so one cannot exist without the other.
- The hour's own size. At the start of each hour we record each open position's market, side and size. That hour's funding is charged on that size.
- No record, no charge. An hour with no record of your open positions is not charged. A position opened after the hour's record was taken is not charged for that hour.
- A missed hour is made up. When the rates or a price were unavailable, the hour is charged by a later hourly run, if the same position is still open. It uses the funding rate Hyperliquid published for that hour and the market's price at that hour. The run looks back 24 hours at most.
- An hour charged on time uses the rate and price at the run.
A made-up hour can be a cost or a credit, depending on the rate and your side.
Before this change, a missed hour was skipped for good.
See Funding.
Open accounts: affected from 5 October 2026, including accounts already open (v1.13 and v1.14).
What to do: Nothing.
fixedOn a phone, the Rules page's tables name their columns#On a phone, each table on Rules showed its rows as cards of bare figures, with nothing saying which figure was which.
On a phone, each table on Rules showed its rows as cards of bare figures, with nothing saying which figure was which. On the account sizes table, for example, a card read $5K, $500, $150 and $300 with no profit target, daily loss or max drawdown beside them.
- The tables in sections 1 to 15 now keep their columns on a phone. A wide table scrolls sideways inside its frame.
- The changelog index in section 16 still turns each row into a card on a phone, and each figure now has its column name beside it.
No rule or figure changed.
Buying and Payouts
newPayouts are held when a purchase is reversed#If a payment for one of your challenges is reversed, the account that purchase opened and any funded account it led to are closed and held for review.
If a payment for one of your challenges is reversed, the account that purchase opened and any funded account it led to are closed and held for review. Your payouts are now held as well: you cannot request one, and a request already in review is not paid. This applies however long after the purchase the reversal arrives.
newSee every plan and its price before you sign up#Challenges is open to everyone now.
Challenges is open to everyone now. Signed out, it shows every plan on sale at every account size, with its price, profit target, daily loss limit, max drawdown, profit split and time limit, the markets you will trade, and the answers to the most common questions. Until now it sent you to the sign-in page, and no public page showed a price.
Pick a plan and you are taken to sign-up. Once your account is made, the checkout opens on the plan you picked.
The prices are the ones the checkout charges, read from the same place. Nothing about the plans or their prices changed. Signed in, the page is the one you know.
See Buying a challenge.
improvedAdd a payout wallet before you are funded, and connect it instead of pasting the address#You can add a payout wallet while you are still trading an evaluation.
You can add a payout wallet while you are still trading an evaluation. A new wallet has to sit through a 48 hour lock before it can receive anything, so a wallet added early is ready the day you need it.
Adding a wallet before you are funded
- Request payout in the dashboard header can be pressed on an account that is not funded yet.
- It opens the payout window on an explanation of when payouts unlock, with an Add wallet button.
- Requesting a payout still needs a funded account. On an account that is not funded, this button opens the explanation and the wallet settings, never the request form.
Connecting a wallet
- Add payout wallet shows Connect wallet above the address field wherever your browser has a wallet in it: a wallet extension on desktop, or the browser inside a wallet app on a phone.
- You sign a message, the address is filled in for you, and the saved wallet is marked as proven yours.
- Signing costs nothing and sends no transaction.
- A connected wallet is held for the same 48 hours as a pasted one before it can receive a payout.
- You still confirm with a two-factor code or a passkey.
- Pasting an address still works.
Every saved wallet
- Payouts are USDC on Ethereum, and the network field says so.
- An address you add in different letter case is recognised as the same wallet.
See Wallets and networks and Settings.
Before this change, Request payout was greyed out until an account was funded, and a phone's wallet app browser offered no way to connect.
improvedBuying a challenge: pay from your wallet, and get your account when the payment finishes#A challenge paid in crypto is issued when the payment processor reports the payment finished, and only when the full invoice amount arrived.
A challenge paid in crypto is issued when the payment processor reports the payment finished, and only when the full invoice amount arrived. It is ready to trade the moment it is issued.
Paying:
- If your browser has a wallet in it, the checkout shows Pay with wallet beside Pay with. Connect, and the checkout checks your wallet's network against the coin you picked before any payment is created.
- On the wrong network, Pay is disabled. You can switch network, or pay in the same coin on the network your wallet is already on.
- Press Pay from your wallet and the payment is created. Your wallet then opens once to confirm that exact transfer. We ask for that one transfer only. We never ask for a signature or a spending approval, and your wallet's address is not sent to us.
- Wallets can pay the coins on Ethereum, Arbitrum and Base. Coins on Solana and Tron are paid to an address. Copying the address works for every coin.
- After you send from your wallet, the payment window keeps showing that the payment was sent, even if you close and reopen it before the transfer is detected.
- You can close the payment and come back to it. While a payment is open, a strip at the top of the Challenges page reopens the right window. View payment on your dashboard's Payment in progress card opens it too.
- If you switch coins in one tab, a payment open in another tab shows the old address as expired, with Show the current payment. Anything you had already sent to the old address still counts.
- While a payment is settling you cannot start a second checkout, so one purchase cannot be paid twice by mistake.
When your account arrives:
- The account arrives when the payment completes, which on most networks is a few minutes after the deposit is first confirmed. The checkout shows each stage.
- A payment that arrives short issues no account. We are told at once and will contact you to top up or refund.
- A new account is created active and shows its challenge type straight away.
A discount code on an unpaid invoice is given back. When the invoice expires or fails, the code is released. It is applied again if that invoice is paid late after all.
Before this change, an account was issued one step earlier, when the deposit was first confirmed.
See Paying and Paying from your wallet.
Open accounts: this changes how a new purchase is paid and issued. An account you already hold is not affected.
What to do: Send the exact amount the invoice shows.
improvedTotal withdrawn, over 24 hours and 30 days#The Total withdrawn section on Payouts opens on your all-time figure, and a switch at its right shows what you withdrew in the last 24h or the last 30d instead.
The Total withdrawn section on Payouts opens on your all-time figure, and a switch at its right shows what you withdrew in the last 24h or the last 30d instead. Share total sits at the bottom right of the section, and on a phone it is a share icon.
No payout rule, amount or limit changed.
Terminal and Trading
newSign in and claim the free trial without leaving the terminal#You can sign in, sign up and claim the free trial and stay on the terminal, on the market you were looking at.
You can sign in, sign up and claim the free trial and stay on the terminal, on the market you were looking at.
Sign in on a computer. Sign in in the terminal's top bar opens a sign-in window over the terminal. It is the same form as the sign-in page. You can:
- sign in with your email or username and password
- create an account, with the same checks, the policies checkbox and the optional marketing box, unticked
- use a passkey
- continue with Google
When you are in, you are back on the terminal, on the market you were looking at. On a phone, Sign in still opens the sign-in page.
Claim the free trial from the demo. Sign up or sign in from the demo's Get Funded prompt, on a computer or a phone. Once you are in, you are back on the terminal, on the market you were looking at, with the free trial you were claiming open. Before this fix, on a phone you were taken to the dashboard and the claim was gone.
When the free trial is paused. The terminal offers the free trial only while it is available. A claim made while it is paused says The free trial is paused and points you to the challenges that are on sale. Before this fix, the terminal could offer the trial while it was paused, and every claim answered Could not start your trial. Please try again.
newSort any table#You can sort every table in the terminal, the Markets table and Trade History on Analytics.
You can sort every table in the terminal, the Markets table and Trade History on Analytics.
- Click a heading to sort by it: A to Z for names, biggest or newest first for numbers.
- Click again to reverse the order.
- Click a third time to clear the sort.
An arrow beside each heading shows which way the column is sorted.
Where it works:
- In the terminal, on a computer. Every table under the chart: Positions, Orders, Order History, TWAP, Chase, Trade History and Funding History. The market search window sorts the same way.
- On Markets. Every heading sorts except Type.
- Trade History on Analytics. It also sorts by Market, Entry, Exit and Fees.
newSee each market's position cap and trading cost#You can now compare each market's position cap and trading cost before you trade it.
You can now compare each market's position cap and trading cost before you trade it.
The position cap. A new Cap column shows the largest position we allow in each market, shortened, for example $250K. It is the same figure the order panel shows as Max position. Click the heading to sort by it.
- In the terminal's market search on a computer. Click the market name, or press Cmd/Ctrl + /.
- On the Markets page. On a phone the column is hidden with the other secondary columns. Tap a market to see its cap.
The trading cost, on the Markets page.
- A Cost column. For every market, the slippage a market order would pay beyond the middle of the order book, at a smaller and a larger order size, in basis points. We measure it once an hour on Hyperliquid's order book and show the middle reading of the last day.
- Fees and the full table on hover. Hover or focus a figure to see that market's taker and maker fee, and the cost of a buy and a sell at each size.
- On a phone, in the market's detail. Tap a market. Trading costs shows the fee, the slippage and how the market fills, above Firm limits.
- The phone table fits the screen. On phones narrower than about 420 px the table fits without scrolling sideways.
What you pay did not change. The fees and the way orders fill are the same. See Markets.
newClose, reverse or cancel everything at once, after one review window#You can close or reverse all your positions, and cancel all your orders, in one action.
You can close or reverse all your positions, and cancel all your orders, in one action. Each opens a review window first, and nothing happens until you confirm there.
Positions
- The Positions tab has a ⋯ button beside the filter. It opens Close All, Close All Longs, Close All Shorts, Reverse All, Reverse Longs and Reverse Shorts.
- A close closes those positions at market.
- Each position row also has a reverse button beside its ×.
- A reverse closes the position at market and opens the opposite side at the same size and leverage. If the new order is refused, the position stays closed and the message says so.
- On a phone, the same actions are behind the ⋯ button on the Positions strip, and a Reverse button shows when you open a position.
Orders
- On desktop, the Orders table's last column is Cancel. The heading is a button that opens a review window listing every waiting order.
- Each order's own cancel is an × in that column. It asks Confirm? on the first press unless you turned that off in settings.
- On a phone, the ⋯ button on Orders opens Cancel All, Cancel Longs and Cancel Shorts, each with its count.
- A running Pro order keeps its own Stop on its row and is cancelled from there.
- On a phone, the sort button also orders your waiting orders.
The review window
- It opens on the first click and is named for what it will do, for example Close All Longs or Cancel All Orders.
- It lists every position or order it covers. A close shows each position's size and value, the realized profit or loss and the fee. A reverse shows the current and the new side and the estimated fees for both orders. A cancel shows each order's side, size and price.
- Every row starts ticked. Untick any you want to leave alone, read the total, then press the button at the bottom. It says what it will do and to how many, for example Close 3 positions or Cancel 3 orders.
- Press Esc or the × and nothing happens.
- Afterwards one message says what happened: how many closed, the realized profit or loss and the fees, and the name of anything that was refused. A bulk cancel shows one message for all its orders.
See Close all and reverse and Cancel orders.
Before this change, a bulk close asked for a second click on a red confirm in place.
newSave or copy an image of your chart#The chart's top toolbar has a camera button at its right end.
The chart's top toolbar has a camera button at its right end. It gives you two choices: Download image saves the chart as a PNG, and Copy image puts it on your clipboard. The image is made in your browser and is not uploaded anywhere. See The chart.
newYour account's rules on the phone terminal, and rows that open#Two things you can now do in the terminal, and one window redrawn.
Two things you can now do in the terminal, and one window redrawn.
- Your own limits, on the phone. The book button at the top of the phone terminal opens Challenge Rules for the account you are trading: a tab each for Profit Target, Drawdown and Daily Loss, with the limit on the left and how much of it you have used and have left on the right. It used to open the general rules table from the Markets page.
- A second line on the phone's rows. Under the chart on Market and under the ticket on Trade, each position, order and closed trade is one line with an arrow at its end. The arrow opens more figures under the line (a position's entry, mark, estimated liquidation price, take profit, stop loss and margin). Tapping the line still opens its sheet.
- Challenge Rules on a computer shows the same two halves: the limit on the left, your status on the right.
On the phone's Positions tab, Orders and History are now cards, like the ones on the phone Dashboard. No rule, limit or fee changed. See the phone terminal.
newSign in and sign up on the phone terminal without leaving it#On a phone, the terminal now signs you in where you are, as it already did on a computer.
On a phone, the terminal now signs you in where you are, as it already did on a computer.
- Sign in at the top of the terminal opens the sign-in screens in a sheet over the terminal.
- Get Funded, on the order ticket, the Account tab and the account sheet, opens the free-trial offer. Its Sign up to claim and I already have an account buttons open the same sheet.
The sheet is the same form as the sign-up page: email or username and password, Google where it is enabled, and passkeys. When you are in, you are back on the terminal, on the market you were looking at. From the free-trial offer, the trial you were claiming opens too. Before this change, both took you to the sign-in or sign-up page.
newPlace a limit or a stop from the chart#You can place a limit order or a stop straight from the chart in the terminal on a computer.
You can place a limit order or a stop straight from the chart in the terminal on a computer.
-
Hover the chart near the price scale. TradingView shows a + on the price scale at the price under your cursor. Click it.
-
A panel opens at that price with two buttons: Limit Sell and Stop Buy above the current price, Limit Buy and Stop Sell below it. It stays put while you move the cursor. Click anywhere else on the chart, or press Escape, to close it.
-
A button opens a small ticket for that order at that price. Choose the size with the slider, the percentage box or a preset, check the size, order value and liquidation price, then press Confirm. Back returns to the panel.
-
A limit is an ordinary limit order. A stop is a Conditional stop at market. Both show in Orders, and on the chart: a limit as a dashed blue line marked LMT, a stop as a dashed green (buy) or red (sell) line marked STP.
-
Cancel from the chart. Hover a waiting limit or stop line and a ✕ shows on it, beside its price tag. Click it to cancel the order, as Cancel in Orders does.
Clicking the chart itself still changes nothing on your order panel. Nothing is placed until you press Confirm. No rule, fee or fill changed.
newLearn each order type with an animated explainer#You can now see how each order type works before you place one.
You can now see how each order type works before you place one.
- Open it from the Pro menu. In the terminal, open the order panel's Pro menu and press the ? on any group heading. About order types opens on the first type in that group.
- Eleven types, one short animation each. Market, TWAP, Swarm, Limit, Scale, Chase, Take profit, Stop loss, Stop market, Stop limit and Chase TWAP. Each shows the price moving, where the order waits, and when and where it fills.
- Long or Short. Switch sides to see the same order the other way round. Your choice stays as you move between types.
- Read the docs takes you to that type's section of the docs.
It works on a computer and on your phone. No order, rule or fee changed.
newSP500 and XYZ100 fill at the reference price#From 17 October 2026, an order on SP500 or XYZ100 fills at the market's reference price, the price Hyperliquid publishes from the underlying futures market, plus a fixed spread for a buy or minus it for a sell.
From 17 October 2026, an order on SP500 or XYZ100 fills at the market's reference price, the price Hyperliquid publishes from the underlying futures market, plus a fixed spread for a buy or minus it for a sell. Before, it filled at the average price of walking the order book. Your price no longer moves with your order's size, up to the market's size limit.
- This holds while the underlying futures market is open. When it is closed, near a listed economic release, past the size limit, or when the order book has moved away from the reference price, the order fills from the order book as before, never at a better price than the reference price would have given.
- It covers a market order, a close, both legs of a Reverse and a triggered take-profit or stop-loss. A limit order still fills from the order book, and take-profit and stop-loss levels are still checked against the mark price.
- The Details panel shows the spread and the size limit on the Fills row. Every other market fills from the order book, as before. The full rule is on Trading rules.
- This applies to accounts already open. A single order can fill a little worse than the order book would have given, so it is not covered by the exception for changes in your favour. See v1.25.
newMove a waiting order by dragging its line#In the terminal on a computer you can now move a waiting limit order or stop by dragging its line on the chart.
In the terminal on a computer you can now move a waiting limit order or stop by dragging its line on the chart.
- Press anywhere on the line, drag it to a new price and let go. The line and its price tag follow your cursor and land on the market's price step.
- The order is moved in one step. It is never cancelled and placed again, so there is no moment with no order and no moment with two. If the move cannot be made, nothing changes and you are told why.
- A limit stays on its side of the price. A buy limit cannot be dragged to or above the current price, or a sell limit to or below it.
- A stop moves its trigger, and a stop with a limit price moves that price with it. A stop that has already triggered cannot be moved.
- Changed your mind? Press Escape before you let go, or let go outside the chart. The line goes back and nothing is sent.
Orders in a group (a Scale ladder) are not moved this way. No rule, fee or fill changed.
newPlace, move and cancel orders from the second chart#With two charts side by side in the terminal, the right chart now takes orders the way the left one does.
With two charts side by side in the terminal, the right chart now takes orders the way the left one does.
- Click the + on its price scale to place a limit or a stop at that price. The order goes to the right chart's market, with the leverage and margin mode set in the order panel.
- The order panel stays where it is. When the right chart shows another market, the chart's ticket names that market, so you can see where the order goes.
- Its lines work as on the left chart. Hover a waiting limit or stop and click its ✕ to cancel it, or drag the line to move the order. Take-profit and stop-loss lines drag too.
- A market shown on both charts draws its lines on both.
No rule, fee or fill changed.
improvedMove your stop past your entry to lock in profit, and drag TP and SL on the chart#A stop-loss or take-profit on an open position is judged against the current price, so once a trade has moved your way you can move the stop to your entry or past it to lock in profit.
A stop-loss or take-profit on an open position is judged against the current price, so once a trade has moved your way you can move the stop to your entry or past it to lock in profit.
- For a long, a stop-loss must sit below the current price and a take-profit above it. For a short, the other way round.
- A level the price has already reached is refused wherever you set it. For a long, that is a stop-loss at or above the current price, or a take-profit at or below it.
- The rule is the same in the terminal, on the chart and through the API.
- Adjust TP/SL checks your levels as you type and as the price moves, and shows the reason before you save.
- In Adjust TP/SL, a stop moved into profit shows its return as a gain, for example +2%, in dollars as well as in percent. A plain number in that box is a loss, and a number starting with + is a gain.
Drag on a computer. Drag the TP and SL lines of an open position on the chart. The new level is saved when you let go, and a message confirms it, such as "Take profit updated | $78,420". The entry, LIQ and DD lines stay where they are.
Drag on a phone. Press and hold a TP or SL line until it is picked up, drag it to the new price and lift your finger. A window shows the new price, the price the level had, how far the new level is from the mark and what the position would make or lose there before fees. Confirm saves it. Cancel puts the line back.
- A quick touch or a swipe never moves a level. The line is picked up only after a press and hold.
- A swipe that starts on a TP or SL line does not scroll the chart, so start a scroll anywhere else on it.
A drag the rule refuses puts the line back and says why.
Before this change, a stop-loss was judged against your entry, and a stop moved just past the price was accepted and closed the position on the next price check.
See Take-profit and stop-loss.
Open accounts: affected, for positions on accounts already open. Levels you already had are not changed.
What to do: Nothing. To lock in profit, move your stop past your entry.
improvedThe terminal shows fills at once and pauses orders while prices reconnect#The terminal shows what happened to your order as it happens, and it holds your orders while live prices are down.
The terminal shows what happened to your order as it happens, and it holds your orders while live prices are down.
Fills we make reach you right away. The terminal reads your positions, orders, balance and history again the moment any of these happens:
- a waiting limit order fills
- a take-profit or stop-loss fires
- a position is liquidated
- a running Pro order sends an order
- your account passes
The periodic refresh still runs as well.
A market order shows at the click. Its row appears in Positions straight away, dimmed and marked Pending, at the price the order panel was showing. When the server answers, the row becomes the real position at the fill price. If the order was refused, the row is removed.
A close shows it is in progress. The row of a position you are closing is dimmed until the close is confirmed.
Orders pause while prices reconnect. When the terminal loses its price feed, the connection status reads Reconnecting…. The order buttons turn off and read Reconnecting… too, on a computer and on a phone, until prices are live again. An order you try to place then is not sent, and the terminal says "Reconnecting to the price feed. Orders are paused until prices are live again."
A Pending row is not a position yet. Your equity, margin and the chart's lines do not count it until it is confirmed. See Positions and history and The order panel.
Before this change, the order buttons stayed on while the price on screen had stopped moving, and an order placed then was refused with a message about the price having moved.
fixedTerminal fixes: sliders, TP/SL units and the chart#Sliders, the TP/SL $ and % buttons and the chart now respond the way you expect.
Sliders, the TP/SL $ and % buttons and the chart now respond the way you expect.
- A slider stops when you let go. This covers the size, leverage, close and TP/SL sliders. If you let go with the pointer over the chart, a slider could miss the release. It then kept following the pointer when you moved back across it with no button held, and kept its blue highlight. It now stops the moment you let go, wherever you let go, and also when the window loses focus. Its highlight goes with it. After a drag, the highlight comes back only if you move to the slider with the keyboard.
- The TP/SL $ and % buttons switch on one click. On the order panel, the $ and % buttons beside Take profit and Stop loss could need several clicks on a live market. Price updates were redrawing the buttons between your press and your release. One click now switches them, on Market and Limit orders, on a computer and on your phone. See The order panel.
- Your position lines stay on the chart. After you switched the market on the second chart, or on the phone's chart, your entry, take-profit, stop-loss and breach lines could disappear until you reloaded the page. They now come back as soon as the new market loads.
- Buy / sell markers on the phone. Turning on Buy / sell markers after the chart had opened showed no markers until a reload. They now appear straight away.
- The chart keeps the price scale you set. With a position open, the chart widens its price scale so your breach price and loss lines stay in view. It did that on every price update, so a price scale you zoomed in jumped back to the wide view about a second later. This was most noticeable on a phone, where the wide view flattens the candles. Now a scale you set by hand stays where you put it, on a phone and on a computer.
If your own scale leaves your breach price or a loss line off the chart, press auto under the price scale to bring them back. Opening a new position on the market, or switching market, also brings them back.
fixedTerminal loss-limit bars now match the dashboard#The terminal's loss limit bars now read the same as the Dashboard's, and a tournament account shows your rank.
The terminal's loss limit bars now read the same as the Dashboard's, and a tournament account shows your rank.
- The daily bar on a phone. The phone terminal's daily loss limit bar uses the same measure as the Dashboard. Before this fix, on an account in profit it could show more of the day's allowance left than there was, or stay full after some of it had been used.
- Max DD stops at 100%. Max DD never reads more than 100% in the terminal. On an account in profit it could read, for example, 136%. Your allowance is whole there, so it reads 100% with a full bar, as the Dashboard does.
- Your tournament rank. On a tournament account, the terminal's Account: section shows your Rank, for example #17, where an evaluation shows its Profit Target. It reads Unranked until your first closed trade and Disqualified if your entry was. Click the figure to see when the rank was last calculated.
See The Account section.
fixedStops, closing limits and liquidations: six fixes#Six things in the trading engine that could go wrong, fixed.
Six things in the trading engine that could go wrong, fixed.
- A moved stop stays moved. If the price reached your stop-loss or take-profit while the price feed was briefly stale, the level was held to close the position at the next fresh price, even if you had moved or removed it in the meantime, and even on a new position you opened on the same market. A level now belongs to the position and the price it was set at: move it or close the position, and the old one is gone.
- A limit that closes a position tells you. A resting limit that reduced or closed a position while you were away (a reduce-only limit, for example) filled silently. You now get the filled notification with the result, and you are told if that fill cleared a phase or breached the account.
- Closing something already closed. If a position was closed a moment earlier (by its own stop, or a second click), the second close answered "closed" with a result of $0.00. It now says there is no open position.
- A waiting Pro order says why. A TWAP or Swarm order the account could not take kept retrying with nothing on screen. Its row in Orders now reads "waiting" with the reason, and a Swarm refused for a while slows down and notifies you once.
- Liquidation of several positions. When an account holding more than one position was liquidated, the closing prices could leave the balance above or below the loss limit that was crossed. They now bring it to that limit, less the close fees, however many positions were open.
- A breach on old numbers. An order could, rarely, fail an account using a balance or a daily limit that had just changed. The engine now checks the current figures again before it marks an account breached.
The stop and liquidation changes are dated in the Rules changelog (v1.12). See Placing an order and Pro order types.
fixedA cancel request can only touch the account it names#A malformed cancel request, sent from the terminal or with an API key, could remove resting orders that did not belong to the account sending it.
A malformed cancel request, sent from the terminal or with an API key, could remove resting orders that did not belong to the account sending it. No balance could be moved this way and no position could be opened or closed. Every order, cancel and close request now refuses anything but a plain account, order or market id before it reads a single order, on the terminal and on the API alike.
fixedStops, take-profits and limit orders reached at the same moment no longer queue behind each other#When a move reached many take-profits, stop-losses and resting limit orders across the platform at once, they were handled one after another, so yours could fire late: seconds late in a small burst, and up to about a minute late when a hundred were reached together.
When a move reached many take-profits, stop-losses and resting limit orders across the platform at once, they were handled one after another, so yours could fire late: seconds late in a small burst, and up to about a minute late when a hundred were reached together. They are now handled several accounts at a time, and a level on your account no longer waits for everyone else's. What a level fills at is unchanged: the average price of walking the order book for its size.
A running TWAP or Swarm is also kept from holding up other traders' levels: when more of its orders are due than there is room for in one pass of the engine, the rest go out on the next pass. None is dropped, and the run still finishes at its full size.
See Placing an order and Pro orders.
fixedA tap outside a sheet closes only the sheet#On a phone, tapping the dimmed area outside a sheet or window could also press the button underneath it once the sheet had closed.
On a phone, tapping the dimmed area outside a sheet or window could also press the button underneath it once the sheet had closed. In the terminal that could switch the order type under the Pro order types sheet, and on the Dashboard it could change tab under the account list. A tap outside a sheet now closes the sheet and does nothing else.
fixedTablet and sideways-phone layouts no longer hide controls#Three layouts hid controls at widths between a phone and a laptop.
Three layouts hid controls at widths between a phone and a laptop.
- The terminal's tabs no longer run under its buttons on a tablet. The chart's tabs (Chart, Depth, Asset Data, Details, News, Calendar) and the positions tabs (through Funding History) scroll sideways inside their own row, so every tab can be reached and tapped.
- The dashboard no longer scrolls sideways on a tablet held upright.
- The side menu scrolls as one column when the window is short, such as a phone on its side, so every page in it can be reached.
No rule, fee or fill changed.
fixedMarkets opens sorted and its rows hold still#The Markets table opened in a fixed order and, a few seconds later, re-sorted itself by volume, so a row could move away just as you went to tap it.
The Markets table opened in a fixed order and, a few seconds later, re-sorted itself by volume, so a row could move away just as you went to tap it.
- The table now opens already sorted by 24h volume, highest first.
- While you watch, prices and figures update in place and the rows keep their order. Press a column heading to sort by the latest figures.
No rule, fee or fill changed.
Tournaments
newRegister for a tournament before it starts, even before its start time is set#You can register for a tournament that has been announced and has not started yet.
You can register for a tournament that has been announced and has not started yet. Your tournament account is issued when the tournament starts, and nothing can be traded until then. A registration cannot be withdrawn.
Registering
- On the tournament's page, press Register for the tournament.
- When no tournament is running, the Tournaments page in the app shows the announced tournament itself: its start time, how many have registered, the registered list and its prizes. Press Register there.
- While a tournament is running, announced ones are listed under Registration Open with View Tournament.
- Signing up from an announced tournament's page registers you for it.
- Once you register you stay registered. There is no Withdraw button.
- A suspended or banned account cannot register for or enter a tournament.
- Joining a tournament that is already running works as before.
What the page shows
- The start time in your own time zone, and who has registered, in order. If you have turned off Show on leaderboard, you are counted and not named.
- A tournament announced without a start time reads Coming soon and shows how many days it will run. You register the same way. It starts when the Perps Fund team launches it, and its window begins at that moment.
- Share beside Registered opens a card with the tournament's name and image, the account size, the start time and how many have registered. The link on it carries your referral. A trader who signs up from it and registers counts as yours.
What you are told
- When it starts: a notification and an email titled "Tournament name is live", with a link to your account.
- Reminders: for a tournament with a published start time, a notification 24 hours and 1 hour before the start, in the app and by push. Reminders are not sent by email.
- A moved start time: a notification and an email with the new time and the reason. Your registration stands, and the reminders are sent again for the new time.
- Other changes: if its dates, account size, loss limits or prizes change after you registered, you get a notification.
- A cancelled tournament: everyone who registered or entered gets a notification and an email titled "Tournament name is cancelled". A cancelled tournament has no results, nothing is awarded, and no entry counts against anyone. There is nothing you need to do.
The tournament pages
- Tournaments in the sidebar and in the terminal's top bar opens the list of tournaments (Live Now, Registration Open, Ended), inside the app when you are signed in. View Tournament opens a tournament's page.
- A tournament's page opens on one card: its image, name and state, the button to join or register, and its account size, prize, entries and clock. While a tournament is announced, the card also says whether you are registered.
- Your Standing (the Result once it has ended) shows your rank, PnL and Return, with a share icon.
- Past Tournaments is in the bar at the top of the page. It lists every finished tournament with your placing, opens each one's final standings, and shows your record across them. It replaces the Track Record section.
- A back arrow beside the page's title returns to the list. There are no tabs between live tournaments.
See Tournaments.
Before this change, joining early created a tradeable account days before the start, a registration could be withdrawn until the start, a tournament always needed a published start time, and a cancellation was sent in the app and by push only.
Open accounts: the rule that a suspended or banned account cannot register for or enter a tournament applies to every account from 4 October 2026 (v1.8). A registration you already hold cannot be withdrawn.
What to do: Nothing. Register only for a tournament you mean to play, because a registration cannot be withdrawn.
newTournament prizes reach up to 100 places, and a suspended account's prize passes down#A tournament can award up to 100 places.
A tournament can award up to 100 places. Its Prizes panel lists them by place or by range of places, for example 1st, then 4th to 10th, then 11th to 100th. Each place or range has one prize: a cash amount in USDC, or a challenge account of a stated size. Every place in a range wins that prize. A tournament's card says how many prizes it awards.
A challenge account prize
- It is issued to you automatically when the tournament closes, with a notification and an email.
- It is a free one-phase evaluation with the usual profit target and loss limits. You can pass it and get funded.
- It is not a free trial.
- It earns no points and no referral commission.
- While it is open, it counts as your paid account.
A cash prize needs a verified identity. It is reviewed, then sent in USDC.
If your account is suspended, banned, scheduled for deletion or deleted
- You keep your place on the tournament ladder, and your row is shown as "Unnamed trader".
- You are not awarded a prize or placement points.
- The prize for your place goes to the next eligible entrant, and every prize place below moves up, across ranges.
- Everyone else keeps the rank they had on the ladder.
- If you delete your account, your row stays on the ladder as "Unnamed trader", with no personal data.
See Tournaments.
Open accounts: prizes by place, up to 100 places, apply to tournaments that close from 9 October 2026. A tournament that was already open keeps the prizes it listed (v1.19). The rule for suspended, banned and deleted accounts applies to tournaments already running from 7 October 2026 (v1.17).
What to do: Nothing. To receive a cash prize, verify your identity.
improvedWhen a tournament ends, your open positions close at the end price and count#When a tournament ends, any position still open on your tournament account is closed for you and counted in your final result, win or lose.
When a tournament ends, any position still open on your tournament account is closed for you and counted in your final result, win or lose. From the end time, your tournament account takes no new order and no manual close.
At the end time
- Positions close at the end price. That is the market's price at the end time: the opening price, on Hyperliquid, of the minute the tournament ended. Everyone holding that market gets the same price. The close pays the ordinary taker fee.
- Orders stop. Waiting orders are cancelled and running Pro orders are stopped.
- You are told. A notification says how many positions were closed.
After the end time
- Your tournament account takes no new order of any type: market, limit, any Pro order, or an edit to a running Pro order.
- It takes no manual close.
- The terminal and the API answer "This tournament has ended. Open positions are closed at the price at the end and scored."
- You can still change a take-profit or stop-loss and cancel an order.
- A trade closed after the end time counts only if its position was already open when the tournament ended. A position opened after the end does not count.
See Tournaments.
Before this change, a position left open at the end stayed open on an account you could no longer trade and the ladder left it out, and an order or a close sent in the short gap after the end time was accepted.
Open accounts: affected from 5 October 2026, including tournaments already running then. The closing at the end price is dated v1.13 and the end of orders and closes is dated v1.14 in the rules changelog.
What to do: Close any position you do not want scored at the end price before the tournament's end time.
fixedA tournament's page loads again#From October 13, the page of a tournament that was running or had ended could fail to load, at its own link (/tournament/ and the tournament's name).
From October 13, the page of a tournament that was running or had ended could fail to load, at its own link
(/tournament/ and the tournament's name). The page showed an error where the ladder belongs. A tournament that had
not started yet was not affected.
- The page loads again, with its top three traders as cards above the ladder.
- The tournament board inside the app was not affected.
Nothing about ranking, prizes or entries changed. See Tournaments.
Points and Referrals
newPay for challenges with points#Points come straight off the price at checkout: 200 points take $1 off a challenge, on crypto and on card.
Points come straight off the price at checkout: 200 points take $1 off a challenge, on crypto and on card.
- At checkout, Pay with points shows what you have and how much of the price it can cover. Step up or down in 200s, or take the most allowed with Use max.
- Your tier sets the most you can use on one challenge: 20% of the price at Bronze, 25% at Silver, 30% at Gold, 40% at Diamond and 50% at Obsidian. This is the perk each tier carries.
- After a breach you can cover up to 50% of the same challenge type and size with points for 14 days. This replaces the Retry discount code.
- One reduction per purchase: points, a coupon code or a promotion.
- Your points are set aside when the payment is created, and come back if it expires, fails or is refunded.
The catalog is three items, and all of them redeem: a streak freeze (400 points), a leaderboard flair for the month (1,000) and a profile frame you keep (2,000). A discount code you already redeemed still works.
Spendable points lapse 12 months after they become available, oldest first. Your lifetime points and your tier never lapse. The Points page shows the next lapse, and you get a notice 30 days before.
Your tier, Bronze to Obsidian, is set by your lifetime points earned. The Tier Ladder on the Points page marks a tier as reached by the same figure, so redeeming a reward never removes the mark from a tier you hold.
Before this change, the catalog held 10% and 20% discount codes, a Retry discount and a profile badge, and the tier perks the Tier Ladder listed were never applied.
See Paying with points and Tiers.
Open accounts: applies from 4 October 2026 (v1.9). Nothing on your balance today lapses sooner than 12 months after it became available. Nothing you earned or redeemed changes.
What to do: Nothing.
improvedReferrals: your link is remembered for 30 days, with reviews, pauses and partner deals#Your referral link is remembered in the browser for 30 days, and you are credited whether the person signs up with email or with Google.
Your referral link is remembered in the browser for 30 days, and you are credited whether the person signs up with email or with Google.
Who counts as yours:
- Someone who follows your link, leaves and comes back within 30 days is yours, and gets their first-challenge discount.
- If they follow another trader's link after yours, the later one counts.
- Someone who joined the waitlist through your link is yours when they register, even after the browser has forgotten the link.
- A trader who started the free trial before buying gets the first-challenge discount on their first paid challenge.
- You are notified when someone signs up through your link, with email or with Google.
The Referrals page:
- Referral Funnel is one track of five steps: link opens, sign-ups, verified, first purchase and funded. Between two steps it shows the share that moved on. Link opens counts each time your link is opened from outside Perps Fund, so one person can count more than once, and no share joins it to sign-ups. The info dot says the date counting began.
- Paid referrals counts traders who bought a challenge. A free trial does not count. Your commission and your tier were never affected.
- Commission Tier is a card for each tier, with the commission you earned on purchases made while that rate was yours. The cards add up to what you have earned at the tier rates.
- Earnings by Month shows this month's commission, your total, and your running total over the last six months.
- Pending shows the next amount to clear and its date.
- Getting Started lists five steps for a new referrer and ticks each as you do it. It goes away when all five are done.
- How It Works and Questions state the programme, when a commission clears and what a refund does.
History:
- Commissions lists every entry behind your balance, with its reason: a commission (with the rate and the amount it was a share of), a reversal after a refund or chargeback, a payout request, a rejected request's amount coming back, and any correction. The rows add up to your balance.
- Traders shows four totals while you have fewer than 5 referred traders: signed up, verified, bought and funded. From 5, it also lists each trader under the short name your commission entries use, with the furthest step they have reached. It never shows a username, an email, a date or an amount.
- Something wrong with this? sits on every commission and reversal. Say what looks wrong and send it. The entry is attached for you, and we reply by email.
Reviews, pauses and reversals:
- In review. If we are checking activity on your link, new commission is still earned and listed, marked In review. It cannot be withdrawn until the review ends. It is then released and clears its hold as usual.
- Paused. While your referrals are paused, purchases by traders you referred earn no commission, and commission you have already earned is held. Request payout is disabled and the page says why. Nothing is taken, and what you had earned is withdrawable again when the pause is lifted.
- Reversed by us. A commission we reverse ourselves stays in Commissions, struck through, with a Reversal entry beside it, the same as one reversed by a refund.
- Reversed after you were paid. If a purchase is refunded or charged back after you withdrew its commission, the page says how much is owed back. It is set off against the commission you earn next. Nothing is taken from your wallet.
Partner deals:
- Apply for a partner deal under the tier cards opens a short application. A deal is a custom rate under a Partner Agreement you accept on the page.
- With a deal, Commission Tier becomes Partner Deal. History gains Statements: one row for each month that has ended, each as CSV and PDF, with an export of your commissions and your referred traders for any dates.
- Add campaign tags to your link and the Campaigns tab show only while you have an active partner deal. A tag builds a tagged copy of your link, and Campaigns counts sign-ups, buyers and purchases for each tag. Sign-ups a tagged link already brought you still count as yours.
- Materials holds your link, code and a QR, three approved lines you can post as they are, and the banner sizes.
Without a deal, your page has your one link and code, and they credit you the same way.
Say you are paid. When you share your link or code, say in the same place that you may earn a commission. The post the X button opens, the share card and a partner's approved copy already say it. Section 07 of the Terms states the rates, how a trader is attributed to you, that a commission on a refunded purchase is reversed even after it was paid and set off against later commission, how a pause and a review work, and what promotion is not allowed.
Before this change, a referral counted only if the person signed up with email in the same visit.
See Referrals, Reviews, pauses and reversals and Partner deals.
Open accounts: reviews, pauses and reversals apply to every referrer from 6 October 2026, including commission already earned. Sign-ups and purchases made before each change are not re-attributed or repriced. Your rate, the hold and how you are paid are unchanged, and nothing here changes an account you already hold.
What to do: Say you may earn a commission wherever you share your link or code.
improvedHow you earn points: passes, payouts, streaks, referrals, weekly trading and boosts#You earn points on accounts you bought, by these rules:
You earn points on accounts you bought, by these rules:
- A purchase earns on the discounted price you paid.
- A payout earns 5 points per dollar, and at most 20,000 points for one payout. Its points are dated to when you requested it, so their hold starts from your request.
- A free trial's pass earns no points.
- The first funded account bonus arrives with the funded account. If your account is held for a manual review, the bonus comes when the funded account is issued.
- A referral earns 5 points per dollar the trader you referred paid for their first purchase. Their later purchases earn you the commission and no more points.
- Streak milestones are paid once per trader, on an account you bought or the funded account it led to. A free trial or Tournament account still shows its streak.
A pass earns its points when it is built over several days. All of these must be true:
- the account has at least 5 trading days
- no single trade made more than 60% of its gross profit
A pass that misses either is still a pass and still funds you. It earns no pass points. There is no minimum number of days to pass.
A streak week counts when it ends in profit with at least 3 trading days, at least 5 counted trades and a return of at least 0.5%. A profitable week that falls short changes nothing. Your streak does not grow or break, and no freeze is used.
A trade counts when all four are true:
- it is closed
- it was held at least 2 minutes
- its notional is at least 10% of the account size
- it is not on a thinly traded market
A trading day is a day on which a counted trade closed.
Weekly points. Each week one pool of points is shared among traders who traded a paid account on 3 or more days, with no breach.
- You get one share for each trading day, up to 5.
- You get 2 more if the week ends in profit.
- You get 1 more if no day used over half your daily loss limit and you did not re-enter oversized after a loss.
- You get 8 shares at most, and at most 1,000 points a week.
Size and volume never count. A 5K account and a 100K account with the same week earn the same, and trading more does not earn more. Weeks run Monday to Sunday, UTC, and are paid early the following Monday. The pool is set each week and is shared, so the points per share change from week to week.
The Points page shows three totals: lifetime points (your tier), monthly points and available points. It also shows last week's weekly points and your shares so far this week.
The Points board. On the Leaderboard, choose Points under Board. It ranks the month by points from passes, streaks, weekly points, Tournaments and referrals. Purchase and payout points are not counted. You are listed only if Public profile is on in Settings. If it is off, you still see the place you would hold. The month's top three earn 2,000, 1,000 and 500 points and that month's profile frame, and stay on the page through the next month.
Points boosts. For a set window we can multiply the points for passing (or getting funded), for buying a challenge, or both, for example 2×, on every product and size or only some.
- A credit is boosted when the pass or the purchase happens inside the window.
- Where two boosts overlap, the higher one applies. They never stack.
- Boosted points spend like any other but do not count toward your tier. Your tier is set by points earned at the normal rate.
Linked accounts. Opposite positions across linked accounts earn no weekly points and do not count toward a streak, for either account that week.
Refunds. A refunded or charged-back purchase takes all of its points with it: the purchase, pass, first funded, streak and referral points earned on that account.
A points discount code is yours alone. It works only on the account that redeemed it. A code already issued belongs to the trader who redeemed it.
Before this change, trading activity earned no points, a payout earned 20 points per dollar and a referral a fixed 500.
See How you earn, Weekly points and Points boosts.
Open accounts: points already on your balance are unchanged. The earning rules apply to what you earn from 4 October 2026. Weekly points apply from 5 October 2026 (v1.10).
What to do: Nothing. To earn weekly points, trade a paid account on at least 3 days in a week.
Dashboard, Analytics and Sharing
newThe Perps Score#Your Perps Score rates the selected account from 0 to 100, and a line shows how it moved after each closed trade.
Your Perps Score rates the selected account from 0 to 100, and a line shows how it moved after each closed trade.
What it is built from. Five axes, drawn as a radar: Performance, Risk Control, Consistency, Discipline and Activity. Each is listed with its own score beside the radar. Hover or tap a point on the radar to see what went into that axis.
The score and its band. The panel's top right reads Score and the number, with your band in a grey badge beside it:
- Needs work below 40, with the number in red
- Developing from 40, in white
- Disciplined from 60, in green
- Elite from 80, in green
The score line. Under the score, a line shows it after each closed trade since your first, up to your last 30 closed trades. One closed trade is enough to draw it, and a quiet week does not empty it.
Where it is. The score appears after your first closed trade, and it is private to you.
- On a computer: the Dashboard. The analytics button at the top right of the panel opens Analytics for that account.
- On a phone: Analytics, directly under the equity curve, and not the phone Dashboard. It reads like the desktop panel, stacked: the radar on top, then the box with the score and your band, the score line, and the five axes with their scores. The phone shows the same score as the Dashboard on a computer, for every account, including a funded account and a two-step challenge in its second phase.
The Account panel. The score takes the place of the Limits panel. Your Daily DD and Max DD sit side by side in the Account panel, under the profit target, with the daily reset countdown in a grey badge beside Daily DD. The profit target readout does not repeat the percentage complete and the amount to go under its bar, because the figure above the bar says both. A breached account keeps its Account locked panel, and a finished account keeps its Result.
How the score is worked out has not changed since it launched. Before the phone fix, a funded account or a two-step challenge in its second phase showed the radar with no score on the phone, and some other accounts showed a slightly different number.
newExport your trades and connect an AI assistant#On Analytics you can export your full trading record and let an AI assistant read your trade journal.
On Analytics you can export your full trading record and let an AI assistant read your trade journal.
Export. The Export button downloads more than the trades on the page. Choose:
- what: your trades, fills, funding payments, daily equity or payouts
- which account: one account or all of them
- when: any dates
- format: CSV or JSON
Connect your AI. Connect your AI gives you a read-only journal key and a server address, so an AI assistant that supports MCP can read your trade journal and answer questions about it. A journal key cannot place, change or close a trade.
It is all on one screen: pick your assistant, create the key, and copy the setup with the key already inside it.
- Your 2FA code is sent as soon as you type the sixth digit.
- A tile for any other MCP client takes a server address and a header.
- ChatGPT's tile takes you straight to Export.
- On a phone it opens as a sheet from the bottom of the screen and fits without scrolling. Before this fix it opened as a small window that scrolled and was cut off on the right.
See Trade journal and Connect your AI.
newSee your orders and closed trades on the phone dashboard, and cancel an order there#On a phone, the dashboard's Positions heading is three tabs: Positions, Orders and History.
On a phone, the dashboard's Positions heading is three tabs: Positions, Orders and History. Orders lists your waiting limit orders on the selected account. History lists its closed trades with the net result of each.
Tap a card to open it:
- A waiting order shows its limit price, how far the market is from it, its size and when you placed it. Tap Cancel order to cancel it without leaving the dashboard.
- A closed trade shows its net and realized P&L, fees, entry and exit. From there you can share its P&L card or open the terminal on that market.
The Share button is in the header, beside the + and the bell.
newYour waiting orders on the Dashboard#On a computer the Dashboard's Positions panel now has an Orders tab beside Positions.
On a computer the Dashboard's Positions panel now has an Orders tab beside Positions.
- Orders lists your waiting limit orders, one line each: the market, the side and leverage, the order's value and its limit price.
- Cancel from the row. Click the ✕, then Confirm?, to cancel an order.
- Positions is still the tab the page opens on.
improvedYour equity over the last 24 hours#The Dashboard's change line, its Account sparkline and the equity curve all show how your equity really moved.
The Dashboard's change line, its Account sparkline and the equity curve all show how your equity really moved.
The 24h change line. The line under your equity on the Dashboard reads 24h, and it measures a real 24 hours: your equity now against your equity 24 hours ago. The figures read $2,397 (2.40%), with the percentage in brackets and no plus or minus sign. The triangle and the colour show the direction. An account that started less than 24 hours ago is measured from the balance it started with. Your equity is also read when the account opens and at every trade, so the 24h figure does not show a dash while it waits for a reading. Before this change the line read today, and it added the profit you had closed since 00:00 UTC to all of your open profit, so a position opened days earlier counted in full.
The Account sparkline. The small line in the Dashboard's Account section draws your equity over the last 24 hours, with a reading every 15 minutes and your live equity at the end, on a computer and on a phone. It is scaled to the day's own high and low, so a day that moved looks like one.
- An account younger than a day draws the hours since it started across the full width of the line. A first trade shows its result, in colour, straight away.
- An account that has not moved in the last 24 hours shows its last active day instead: the 24 hours ending at its last trade, with that day's change and no 24h after it.
- An account that has never traded shows a grey line with no movement and $0 (0.00%).
The equity curve. On the Dashboard and on Analytics, the curve draws one point for each period below, each your equity at that moment, ending at your live equity:
- 24H: every hour
- 7D: every 2 hours
- 30D and All: every day
The scale fits the curve, your two loss limits and, on an account in evaluation, the profit target, with a little room above and below, so every one of them is always on the chart. A new account draws from the moment it opened, across the full width of the chart. The 15-minute readings behind 24H and 7D began on 24 September 2026, so until there are 7 days of them 7D draws the ones that exist. The return curve on public trader profiles uses the same daily points and the same scale.
Point at the chart to see a small box with the time and your equity, just above that point on the line. Near the top of the chart it sits below the point, and at the edges it stays inside the chart. On a phone, press and hold the chart to show it, drag to move along the line, and lift your finger to hide it.
Before this change, the sparkline drew one point per closed trade over the account's whole life, and the curve drew one point a day plus one for each trade closed since midnight UTC. A day with an open position that moved could look like a straight line.
improvedYour withdrawable amount on the dashboard#The Withdrawal button at the top of the dashboard now shows how much you can withdraw right now, for example 2,350.00 USDC.
The Withdrawal button at the top of the dashboard now shows how much you can withdraw right now, for example 2,350.00 USDC. It is the same figure the Payouts page shows as Available to request. An account with nothing to withdraw yet, including a new account and a free trial, reads 0.00 USDC. The button still opens the payout request.
improvedThe leaderboard needs a sign-in#The Leaderboard is no longer a public page.
The Leaderboard is no longer a public page. You now need to be signed in to open it, like the dashboard. If you open it signed out, you are taken to sign in and brought back to the board afterwards.
Nothing about the ranking changed: the pools, the timeframes, the floor to rank and your own standing are what they were. Trader profiles stay public, so a profile link you share still opens for anyone. A leaderboard link no longer shows a preview card of its own when pasted into a chat. How the board works is in the Leaderboard guide.
improvedYour standing on the Leaderboard, in one place on each screen#Where the Leaderboard shows your own place changed on both screens.
Where the Leaderboard shows your own place changed on both screens.
- On a computer, the row pinned to the bottom of the table is gone, with its Jump button. Your rank is in the Standing card at the top right, and the share button for your rank card is in that card's head now.
- On a phone, the Standing section shows your own row from the board: your rank, your win rate, how many traders are ranked, and your return. Its share button makes your rank card, and Jump to my row takes you to your row in the list. Before you rank, the row says how many closed trades you need.
No rule, ranking or figure changed.
improvedYour Perps Score shows which way it moved#A mark before Score in the Perps Score box shows which way your score has moved since 7 days ago: an arrow up or down, or a level line when it is the same.
A mark before Score in the Perps Score box shows which way your score has moved since 7 days ago: an arrow up or down, or a level line when it is the same. On an account with no score a week ago, it compares with the account's first score.
On a computer the box now sits under the radar, centred, and the radar is larger. The score itself is worked out as before.
improvedThe dashboard's Orders tab lists every order you have working#The Orders tab on the dashboard listed only your waiting limit orders.
The Orders tab on the dashboard listed only your waiting limit orders. A running TWAP or chase order was counted in a line under the list, and a standing stop was not shown at all.
- Every order is a row now: limit orders, conditional orders (stops), TWAP, Swarm, Chase, Chase TWAP and Scale. A running order shows how far it has got, for example 3 of 8 clips, and a stop shows the price that triggers it.
- You can cancel any of them from the dashboard. On a computer, click ✕ and then Confirm?. On a phone, open the order and press Cancel order. A running order stops, and what has already filled stays open as a position.
See the Orders tab. No rule, fee or fill changed.
fixedYour public profile and Analytics agree on drawdown and risk ratios#A public trader profile now works out Max drawdown, Sharpe, Sortino and the return-to-drawdown ratio exactly the way your own Analytics page does, so the two no longer show different numbers for the same account.
A public trader profile now works out Max drawdown, Sharpe, Sortino and the return-to-drawdown ratio exactly the way your own Analytics page does, so the two no longer show different numbers for the same account. Max drawdown is the deepest fall from a peak on the equity curve, as a share of that peak, and each day's return is its net result divided by your equity at the start of that day. Before, the profile measured drawdown from closed trades only, against the starting balance.
A trade that closed exactly flat is now neither a win nor a loss everywhere: it ends a streak on Analytics, your profile and the leaderboard, shows as a grey mark in your recent form, and no longer counts toward Avg win hold. Avg win and Avg loss show a dash until you have a trade on that side, instead of $0.00, and R : R shows a dash until you have both.
Account and Security
improvedConfirm your email to finish signing up, and sign in with your authenticator code#Creating an account with email does not sign you in.
Creating an account with email does not sign you in. The page reads Check your inbox. Open the link we email you, then sign in.
Signing up with email
- An unverified address cannot sign in with a password. If you try, we send the verification link again.
- Forgot password? also works. Setting a new password from the reset link verifies the address.
- An address that already has an account gets an email saying so. The page reads the same either way and never says whether an address is registered.
- A username that is taken is still refused on the spot.
Signing in
- With two-factor on, sign-in asks for a code after the password: the 6-digit code from your authenticator app, or a recovery code.
- With a passkey and no authenticator app, the password alone does not sign you in. Use Sign in with a passkey.
- Continue with Google and a passkey sign-in are not asked for a further code.
- New-device sign-in emails are sent only to a confirmed address, and no more than three in an hour.
Continue with Google on an account whose email was never confirmed
If an account was created with a password and its email address was never confirmed, the first Continue with Google sign-in with that address secures it before signing you in.
- Its password is removed and every other device is signed out.
- Its two-factor settings, passkeys, saved payout wallets and API keys are removed, because until that moment nobody had shown they own the address.
- We email the address to say so.
- You can keep signing in with Google, or set a new password with Forgot password.
- An account whose email was already confirmed is not changed.
An account made with Google
An account created with Continue with Google has no password. To add a first passkey, turn on two-factor or delete the account, it is confirmed by how recently you signed in: within the last 15 minutes. If it has been longer, Settings asks you to sign out and sign back in. Do that, and make the change straight away. Without a second factor, an account cannot add a payout wallet.
See Creating an account, Securing your account and Signing in with Google.
Before this change, creating an account with email signed you in at once, and Settings asked an account made with Google for a password it did not have, so it could not add a second factor or be deleted.
improvedMake a new set of recovery codes, and passkey accounts get recovery codes too#Recovery codes made before this change no longer work.
Recovery codes made before this change no longer work. Generate a new set in Settings, Security. Two-factor recovery codes are now 16 letters and digits in four groups, written XXXX-XXXX-XXXX-XXXX.
If you have two-factor on
- Settings shows that no recovery codes remain.
- Open Settings, Security, choose Regenerate on the Recovery codes row, confirm with a current code from your authenticator app, and save the new set.
- Until you do, your authenticator app is the only way through a two-factor step.
- A recovery code is used up by its first use. Two requests sent at the same moment with the same code are not both accepted.
- Five wrong codes lock payouts and wallet changes for 15 minutes. Wrong codes while you set two-factor up are counted on their own and do not count toward that lock.
If your account signs in with a passkey and has no authenticator app
- A password alone does not sign you in.
- Adding your first passkey gives you a set of recovery codes, shown once.
- Each code signs you in a single time, together with your password. On the sign-in page, enter your password and choose Use a recovery code.
- The codes only sign you in. A payout or a wallet change is still confirmed with your passkey.
- An emailed code is never accepted in place of a passkey.
- If you added your passkey before these codes existed, you have none yet. Open Settings > Security > Recovery codes, choose Generate and confirm with your passkey. You also see a reminder when you sign in. This applies to accounts already open.
Inside a wallet app's browser on a phone
- Those browsers cannot use passkeys, so the sign-in page has no passkey button there and says so.
- It tells you what works: your password and, if your account has two-factor, your authenticator code or a recovery code.
- If your account signs in with a passkey and has no authenticator app, it tells you to open the page in your phone's main browser, such as Safari or Chrome, or to use a recovery code.
- In Add payout wallet, when the browser has more than one wallet in it, only the wallet you pressed Connect on reads "Connecting…".
See Two-factor authentication, Recovery codes for a passkey and Signing in.
Before this change, a passkey account had no way in from a browser that could not use its passkey, and the sign-in page pointed it at a passkey button that was not there.
improvedSigning out ends your sign-in everywhere, and a password change revokes your API keys#When you sign out, your sign-in ends on our side, so a copy of it held anywhere else stops working.
When you sign out, your sign-in ends on our side, so a copy of it held anywhere else stops working. A sign-in lasts 30 days at most.
How long you stay signed in
- A sign-in ends 30 days after you signed in, however much you use it, and 14 days after it was last used. Then you sign in again.
- Every sign-in is listed under Active sessions in Settings from the moment it happens, and can be logged out on its own.
- A sign-in belongs to the perpsfund.com address you signed in on. It is not shared across perpsfund.com addresses.
Log out all other devices, and changing your password
- Log out all other devices, a password change and a password reset each sign out every other device on your account.
- Once you end your other sign-ins they stay ended, even one copied to another browser. The device you used stays signed in every time.
- Each of the three also revokes every API key on your account. Create new keys afterwards if you use the API or run a trading agent.
Password reset links
- Asking for a new reset link cancels the earlier ones. Only the newest link in your inbox works.
- Resetting or changing your password cancels every link you have not used.
- A completed reset signs out every device, revokes every API key, and verifies your email address.
- Reset emails are limited to three an hour for one address. A request past that shows the same page and sends nothing.
Signing out on a shared computer leaves nothing of yours behind on that browser:
- Support chat is closed, so the next person to open chat there does not see your conversation.
- Push alerts stop on that browser. Choose Enable push again in Settings after you sign back in.
- Referral and campaign cookies are cleared, so someone who registers on the same browser later is not counted as your referral, or theirs as yours.
- Records of which accounts and payouts you had looked at are removed from the browser's storage.
See Securing your account, Your password and What revokes your API keys.
Before this change, signing out cleared your sign-in from your browser only, a copied sign-in could renew itself after you logged out other devices, and the device you used was sometimes signed out as well.
fixedDeleting your account removes your details everywhere, and your data export holds more#When your account is deleted, after the 30-day grace period, your email address, username and name are removed or replaced in every record we keep, including your profile.
When your account is deleted, after the 30-day grace period, your email address, username and name are removed or replaced in every record we keep, including your profile.
Deleting your account
- What is still kept, under an internal identifier: your trading and purchase history, payout records including the wallet they were paid to, and the result of your identity check. We are required to keep these.
- We do not store your IP address with your sign-up or your purchases.
- During the grace period your profile, spectate page and leaderboard rows are hidden.
- Cancelling a deletion puts the account back as it was.
- Your username and referral code stay reserved. For a period after the deletion, nobody can register them or rename to them, and old referral links that used them credit nobody.
Exporting your data
Export my data in Settings includes your purchases, points and referral commission history, signed-in devices and sign-in history, the names and dates of your API keys and passkeys, your consent records, Tournament entries and results, problem reports, saved chart layouts, and the funding and equity history of your accounts. The file says where a long history was shortened and lists what it leaves out.
See Danger zone and What the export holds.
Before this change, the log of your email-updates choice, a partner's legal name and contact email, and our internal records that mentioned you kept the original values, and someone else could register a deleted account's username at once and pick up its referral links.
fixedOn a phone, sheets stay above the keyboard#On a phone, a sheet that slides up from the bottom of the screen could end up under the on-screen keyboard.
On a phone, a sheet that slides up from the bottom of the screen could end up under the on-screen keyboard. Typing in its field, for example confirming that you want to delete your account, could hide the field and the sheet's buttons.
- Sheets and pop-up windows now sit above the keyboard while it is open, and settle back when it closes.
- The buttons at the foot of a sheet clear the home bar on phones that have one, and a window opened with the phone on its side stays clear of the notch.
No rule, fee or fill changed.
Docs and API
newCopy a docs page into an AI assistant, or connect the docs to your editor#Every page of the docs and of the Agent API reference has a Copy page button beside its section name.
Every page of the docs and of the Agent API reference has a Copy page button beside its section name. It copies the page as Markdown, ready to paste into an AI assistant. Its arrow opens more options, among them:
- View as Markdown opens the page as plain text. Every page has one at its own address plus
.md, for exampledocs.perpsfund.com/trading-rules.md. - Open in ChatGPT and Open in Claude start a chat pointed at that plain-text page, so you can ask questions about it.
- Connect to Cursor and Connect to VS Code connect the docs to your editor in one click.
Once connected, the docs and the Agent API reference are an MCP server at docs.perpsfund.com/mcp. An AI assistant
in your editor can search them and read any page while it helps you build. It needs no account or key. It serves
the public docs only. It cannot see your account, your trades or your keys, and it cannot place or change an order.
AI tools can find every page at once through docs.perpsfund.com/llms.txt, a list of all the plain-text pages.
improvedRead the API reference and fetch its OpenAPI spec without an account#The full Agent API reference and its OpenAPI spec are public.
The full Agent API reference and its OpenAPI spec are public. You can read both without an account, so you can see exactly what the API does before you decide whether you want a key.
- The reference holds the getting-started walkthrough, every endpoint with its parameters and examples, the error tables and the concepts. Its pages are built ahead of time, like the rest of the documentation, so they open faster.
- The spec,
GET /v1/openapi.json, covers the whole API: the sandbox,/health,/meand the live trading routes, with every schema and every error code. Fetch it, hand it to a code generator, open it in a Swagger viewer, or give it to an agent as context:
curl https://api.perpsfund.com/v1/openapi.json -o perpsfund-openapi.jsonCreating a key still needs your account in the API beta. Every endpoint the spec describes still needs that key.
improvedAPI keys are Read only or Trade, they expire, and creating one needs a confirmation#An API key used to do everything, for ever.
An API key used to do everything, for ever. A key now has an access level and an end date, both chosen when you create it.
- Read only or Trade. A Read only key reads your accounts, positions, orders and prices and cannot place or change anything: on an order route it
answers
403 insufficient_scope. A Trade key can also place, change, close and cancel. The form starts on Read only, so pick Trade for a key that will place orders. - Every key expires, after 30 days, 90 days or 1 year. From that date it answers
401 expired_api_key; create a new one, a key is not extended. - Creating a key needs a code from your authenticator app, a recovery code, or your passkey. An account with neither two-factor nor a passkey adds one under Settings, Security first.
- You get a security email when a key is created on your account.
- A completed password reset, and Log out all other devices, each revoke every key you hold.
GET /v1/mealso returnsscopeandexpiresAt, so an agent can read what its key may do and when to replace it.
Keys that already existed are Trade keys, which is what they could already do, and expire 90 days after this change. The date is on each key's row in Settings. See the API reference.
improvedRequests that change the same account at the same moment take turns, and one that waits too long is told to retry#Orders, closes, take-profit or stop-loss changes, and placing, changing or cancelling a Pro order on one account have always been applied one after another.
Orders, closes, take-profit or stop-loss changes, and placing, changing or cancelling a Pro order on one account have always been applied one after another. A burst of them sent at the same instant used to wait in line for as long as it took, and a large enough burst could slow other traders' requests while it waited. A request that has waited its limit for its turn is now refused with status 429 and the code ACCOUNT_BUSY, and nothing is placed or changed by it. Wait for Retry-After and send it again with the same idempotency key. In the terminal the message reads This account is busy. Try again.
Ordinary trading does not meet this: it takes many requests for one account in the same moment. If you run a bot, send an account's requests one after another.
See Errors and Placing an order.
improvedThe API: read your equity, stream your fills, cancel or close everything, and several answers changed#A live key can read your equity and the markets, stream your fills, and cancel or close everything at once.
A live key can read your equity and the markets, stream your fills, and cancel or close everything at once. Several answers that were wrong or inconsistent were corrected. If you already run an agent, read Answers that changed below.
Reading your account and the markets:
GET /accounts/{accountId}returns yourequity, your unrealized P&L, and how far you are from the daily loss limit, the overall loss limit and the profit target, as numbers. Each row ofGET /positionscarries its mark and unrealized P&L.GET /marketsandGET /priceswork with a live key. Each market lists its size step, minimum order value, maximum leverage, position cap, how it fills and what it costs.GET /tradesis paged:limitup to 500 and acursor.GET /fillslists each execution with its price, size, fee, the order book's mid price, the slippage in basis points, and the order it belonged to.- Every response carries a request id (
x-request-id) and your remaining rate-limit budget.Retry-Afteris the actual wait.
A private stream. GET /stream sends your fills, order changes, position changes and account changes as they happen, as server-sent events. A key can hold two streams. A stream lasts 270 seconds and then asks you to reconnect. Prices are not on it. Read them from Hyperliquid.
Your orders:
- Every order answers an id, and
GET /orders/{id}says whether it is waiting, partly filled, filled or cancelled. - Send
clientOrderIdwith an order, then read it or cancel it by that id. An id can be used once per account. POST /orders/cancel-allcancels every waiting order and stops every running Pro order, for the account or for one market.POST /orders/cancel-all-afteris a dead man's switch. It cancels everything if your agent stops calling within the time you set. It cancels orders. It does not close positions.POST /positions/close-allcloses every position.POST /positions/reversecloses a position and opens the same size the other way. If the opening half is refused, you end with no open position and the answer says why.
Keys tied to your IP. When you create a key in Settings you can list up to 10 IP addresses or CIDR blocks. From anywhere else the key answers 403 ip_not_allowed.
A limit across all your keys. You can make 2,000 requests a minute in total across all the keys you hold, on top of the limit of each key. Past it the API answers 429 user_rate_limited.
Answers that changed:
- A request body that is not JSON answers
400 invalid_json. It used to answer an empty500. - A path that does not exist answers
404in JSON, and a wrong method answers405in JSON. - Closing part of a position uses
closePercenton the sandbox as well as live (pctstill works on both). A value outside 1 to 100 is refused and nothing is closed. It used to close the whole position. - Cancelling an order that does not exist answers
404 order_not_found. Cancelling one that already filled or was already cancelled answers200withcancelled: falseand the reason. It used to answer success for any id. - A symbol that is not a market answers
400 bad_symbol. Symbols are not case-sensitive. - Money in a live response is always a number.
pnl,feeandnewBalancefrom a close were text rounded to cents. - An order that flips a position reports both sides: what it closed and what it opened.
- The live trade list is under
trades. It was underhistory. userId,hlSubAccountAddress,autoPassandmmrIndexare no longer in live responses.- The sandbox cuts an order's size to the market's size step, honours
reduceOnly, and honoursIdempotency-Key, as live does.
The reference lists two small client libraries, for TypeScript and Python, kept beside the API.
See the API reference, the API docs and Settings.
fixedA rate-limited request can be retried with the same Idempotency-Key#A request refused with 429 was stored under its Idempotency-Key, so retrying it with the same key replayed the refusal for 24 hours instead of running the request.
A request refused with 429 was stored under its Idempotency-Key, so retrying it with the same key replayed the refusal for 24 hours instead of
running the request. A 429 is no longer stored: wait for Retry-After, send the same request with the same key, and it runs. Sandbox orders are
also now counted per account as well as per key, so several keys share one sandbox budget.