A stop loss is a trader's conditional exit instruction; a liquidation price is a venue-calculated risk threshold for a leveraged position under the applicable margin rules. Setting a stop before liquidation does not guarantee the position closes first. The stop must activate on its selected price source and execute, while the exchange separately monitors the position or account for liquidation.
The useful comparison is therefore between two processes, not just two numbers on a chart. A stop can remain untriggered, activate into an unfilled order, or close only part of the exposure. Each outcome leaves a different position for the liquidation mechanism to assess.
What each threshold actually controls
| Comparison | Stop loss | Liquidation threshold |
|---|---|---|
| Who defines it? | The trader configures an instruction within venue rules | The venue calculates risk from the applicable margin system |
| What happens at the condition? | An exit instruction becomes eligible for execution | The liquidation mechanism acts under its documented rules |
| Which price matters? | The selected trigger source, where supported | The venue's specified risk reference or account metric |
| Does the displayed number establish an exit price? | No; check executions | No; check liquidation handling and records |
For Bybit's isolated-margin perpetual and expiry contracts, liquidation is triggered when mark price reaches the position's liquidation price. Its process can involve canceling exposure-increasing orders and, depending on risk tier, reducing the position before a full liquidation. Treat that as one documented implementation, rather than a universal description of every derivatives venue. Bybit's isolated liquidation process.
The mark-price guide explains the reference itself. Here, the operational question is narrower: how much of this position was actually closed before the liquidation condition was reached?
Follow one long through a gap
Consider an entirely hypothetical USDT-linear long equivalent to 0.10 BTC, entered at 60,000 USDT per BTC. Its sell stop is 55,000, triggered by last traded price. Assume the venue reports an isolated liquidation price of 54,000. That threshold is an input, not a value inferred from leverage; assume it stays unchanged while this base-case position remains untouched.
The following invented observations deliberately separate last traded price from mark price. They are successive updates, with no claim about elapsed time or typical price divergence.
| Observation | Last traded price | Mark price | Last-price stop | Original position's risk comparison |
|---|---|---|---|---|
| Before drop | 55,600 | 55,500 | Waiting | Mark above 54,000 |
| First update | 55,050 | 54,950 | Still waiting | Mark above 54,000 |
| Next update | 55,020 | 53,950 | Still waiting | Mark below 54,000 |
At the first update, the mark has crossed the stop's numerical level, but it is not the selected source. Last traded price remains 50 above 55,000. At the next update, last traded price is still 20 above the stop while mark is 50 below the assumed liquidation threshold. No ordinary stop fill has occurred in this branch.
Bybit explicitly documents this failure case: mark-based liquidation can precede a stop triggered by last traded price. A screenshot of the last-price candle cannot disprove that sequence. Bybit's execution and liquidation FAQ.
Change only the stop's reference
In a separate branch, keep the same size, prices and 55,000 stop, but select mark as its trigger source. The first update now satisfies the stop condition because 54,950 is below 55,000, while still above 54,000.
Assume the resulting market close is valid and completes before the next update. Its two hypothetical fills are 0.04 BTC at 54,850 and 0.06 BTC at 54,700, both permitted by the venue's applicable execution rules.
The total close value is 5,476 USDT: 2,194 from the first fill plus 3,282 from the second. Dividing by 0.10 BTC gives an average execution price of 54,760. Gross realized price loss is 524 USDT, calculated as 0.10 × (60,000 − 54,760). Fees and funding are excluded.
An execution exactly at 55,000 would have produced a 500 USDT gross loss. The constructed fills therefore lose 24 USDT more. This branch closes the whole position before the later risk observation, but the stop's trigger still does not cap loss at 500.
Now remove the intervening update
Suppose instead that mark jumps directly from 55,500 to 53,950. The same new observation is beyond both the mark-triggered stop and the assumed liquidation threshold. Numerically placing 55,000 ahead of 54,000 does not establish that a completed close occurred between them.
This constructed gap leaves the engine's actual ordering and outcome unspecified. Documentation about a trigger source does not establish a guaranteed interval for matching the exit before liquidation. A real incident needs venue event records; a line connecting two chart observations cannot supply the missing execution.
A partial close leaves a fresh risk question
Use another separate branch: the mark stop activates at the first update, but only 0.04 BTC closes at 54,850. No other close executes. The gross realized price loss on that part is 206 USDT: 0.04 × (60,000 − 54,850). The remaining position is 0.06 BTC, or 60% of the original size.
Do not label the exit complete because its condition fired. Bybit's order API documents that market instructions are converted to IOC limit orders for matching and can encounter price protections or insufficient liquidity. These rules matter when evaluating whether an activated instruction actually finished. Bybit's place-order documentation.
After a partial reduction, retrieve the resulting position and risk state. Reusing the original 54,000 liquidation snapshot may be wrong because exposure and account state have changed. The stop-market versus stop-limit comparison helps distinguish an instruction seeking an immediate close from one retaining an explicit price boundary.
Coverage also depends on how the stop was created. Bybit's position TP/SL endpoint documents internally created conditional orders whose quantity adjusts with the open position and which cancel when it closes. That behavior should not be assumed for an unrelated standalone conditional order or a different venue. Bybit's position trading-stop API.
Why there is no universal safe spacing
The example's 55,000 stop is 1,000 USDT per BTC above its initial liquidation price. Dividing that gap by the stop level gives approximately 1.818%. At 0.10 BTC, multiplying the price gap by size gives 100 USDT. That 100 is a price-distance calculation, not an additional collateral deposit or a reserved execution budget. It also does not measure the eventual loss or charge from liquidation.
Moving a stop changes an order condition. It does not itself add margin, reserve bids, or establish how quickly a gap can occur. The skipped-update branch shows why a percentage alone cannot guarantee time to exit.
Changing position size requires a new comparison too. Pyramiding and averaging down change the quantity and weighted entry being managed. Recheck the stop's coverage and venue risk calculation after any addition, rather than carrying forward the old stop-to-liquidation distance.
For a short, reverse the adverse price direction: the buy stop is reached as its reference rises, and the applicable liquidation threshold generally lies on the rising-price side. A long-position inequality copied into a short worksheet can reverse the intended test.
Check whether a price is the governing risk metric
The example isolates one position to make the sequence readable. Under Bybit's cross and portfolio margin modes, the FAQ says account maintenance margin ratio reaching 100% governs liquidation. A single position's displayed price is not a substitute for that account measure. Bybit's margin-mode distinction.
Its position API describes the cross-margin liquidation price as estimated and provides no liquidation-price value for portfolio margin. An empty field therefore does not establish freedom from liquidation. Bybit's position information fields.
A threshold also has an observation time. Record changes to collateral, other positions and charges alongside it. Even an isolated calculation needs the product's actual maintenance-margin and fee rules; entry price and leverage alone do not establish an authoritative liquidation price. Bybit's published isolated formulas illustrate those additional inputs. Bybit's liquidation calculations.
Build a stop and liquidation worksheet
Complete this record before relying on an exit, then update it after any position change.
| Field | Record to keep | Check it resolves |
|---|---|---|
| Contract and account | Venue, instrument, side and margin mode | Which risk rules apply? |
| Stop condition | Trigger price, reference and direction | Which observation activates it? |
| Exit instruction | Market or limit, quantity and closing semantics | What can execute after activation? |
| Coverage | Current position and stop quantity | Is the whole intended exposure covered? |
| Risk snapshot | Applicable liquidation price or account metric, with time | Is the comparison current? |
| Failure response | Owner and steps for an unfilled remainder | Who verifies and manages residual exposure? |
For a replay, run the full-fill, partial-fill and skipped-update branches separately. State the remaining quantity after each event. Paper or backtest results are useful only to the extent their trigger sources, liquidity assumptions and event ordering represent the intended live path.
If a broader plan also includes recurring purchases, document that funding schedule separately. Daily versus weekly DCA compares purchase timing and funding; a recurring purchase schedule does not establish an exit or liquidation buffer for a leveraged position.
Verify the close with executions
Retain the accepted stop configuration, activation or rejection records, resulting order identifiers, executions and subsequent position state. Bybit's execution stream exposes execution price, quantity, time and identifiers, and can include several executions in one message. Reconcile the quantities rather than treating the message count as a fill count. Bybit's execution records.
If the records cannot establish which event occurred first, leave that ordering unresolved. The decisive review question is concrete: what quantity remained open when the applicable liquidation condition was reached? A stop setting describes the intended response; confirmed closes and current risk state establish what exposure remains.
