Take Profit and Stop Loss Orders on Hyperliquid
Hyperliquid TP and SL orders are trigger orders: a mark-price condition activates an order that then attempts to execute according to its configured market or limit behavior.
A take-profit or stop-loss order on Hyperliquid does not guarantee an exit at the trigger price. The trigger watches the mark price. Once the condition is met, the configured child order is submitted. A market TP/SL prioritizes execution but can incur slippage; a limit TP/SL controls price but can remain unfilled.
The trigger is not the fill
This distinction matters most during fast markets. If a stop triggers at $100, the book may already have moved by the time the market order consumes liquidity. The actual average fill can be worse than $100.
Conversely, a limit stop can trigger correctly and still fail to execute if the market gaps through its limit.
Mark-price triggering
Hyperliquid uses mark price for TP/SL triggering. Mark price is designed for risk calculations and is less sensitive to a single anomalous last trade than raw trade price.
That makes the trigger source more robust, but it also means a trader watching the last traded price can see a different number from the trigger reference.
Market versus limit exit
A market TP/SL is appropriate when the priority is leaving the position. Hyperliquid documents a default slippage tolerance for market trigger orders, and builders should verify the current behavior before relying on a hard-coded assumption.
A limit TP/SL is appropriate when refusing a worse price matters more than guaranteed execution. The trade-off is explicit: execution certainty versus price certainty.
Operational checklist
Check the trigger direction, reduce-only behavior, quantity, reference price, and whether the order remains valid if the position changes. A stale stop left behind after manually reducing or reversing a position can create unintended exposure if not configured safely.
Bots should reconcile open trigger orders after fills and cancellations rather than assuming the exchange state matches local strategy state.