Crypto trading

Mark Price vs Last Price: Meaning, Stops and Liquidation

Price ladder showing last price above a last-price stop while mark price is below a hypothetical liquidation threshold.

Last price is the price of the most recent completed trade. Mark price is a calculated reference used by a derivatives exchange to value positions and assess risk. They can differ at the same moment, even for the same contract.

Token price vs mark price. “Token price” may refer to a spot quote, the latest trade or a price aggregated by a data service. It is not another name for mark price. Before comparing the numbers, check the market, instrument and timestamp.

That difference matters when your stop watches one price and the exchange checks liquidation using another. In the worked isolated-margin example below, last price is 59,220 while mark price is 59,080. The last-price stop is still waiting, but mark has already crossed the stated liquidation threshold. These are teaching figures, not a live trade.

  • Compare the references: last, mark and index prices have different roles.

  • Check the stop: read its trigger reference separately from the resulting order type and fill price.

  • Work through the numbers: compare unrealized P&L, a full market exit and a partially filled limit exit.

Get free access to crypto trading lessons

Continue learning in New Hope Workspace and explore the New Hope Crypto training simulator. The lessons are free; software purchase is separate. The team will email you an invitation after reviewing your request.

Already have access? Open the Crypto setup lesson · Explore New Hope Crypto

Three prices on one market

Price

What it describes

Question to ask

Last traded price

The most recent completed trade on that market

Is this what my chart and trigger use?

Index price

An external reference constructed from spot-market sources

Which index and instrument specification apply?

Mark price

A calculated reference used in derivatives risk calculations

How does my account use it for margin and liquidation?

For its perpetual contracts, Bybit describes mark price as a calculated reference tied to a spot index and basis components. It is not simply a copy of the latest trade. The current formula is documented in Bybit’s mark-price explanation.

OKX also distinguishes the last execution from a calculated mark reference and documents an index-plus-basis construction. The exact implementation belongs to the venue and contract, so copying one exchange’s formula into another exchange’s monitoring system is a poor assumption. See OKX’s explanation.

A worked example: the stop is waiting for the wrong series

Consider a hypothetical long position in a linear perpetual contract. Its entry is 60,000, its quantity is 0.02 units, and its displayed isolated-margin liquidation threshold is 59,100. A stop has been configured to trigger when last price falls to 59,150. These figures are invented to illustrate the sequence; they are not a suggested leverage or stop setting.

Observation

Last price

Mark price

What the rules see

Earlier snapshot

59,400

59,360

Both references remain above their stated thresholds

Later snapshot

59,220

59,080

Last-price stop has not triggered; mark crossed 59,100

Looking only at 59,220, the trader might believe there is still room before either protective boundary. But the liquidation reference has already moved below 59,100. The stop condition and the risk condition can therefore disagree without either system misreading its own input.

For Bybit isolated margin, liquidation is triggered using mark price at the position’s liquidation price. Cross and portfolio margin instead depend on account maintenance-margin conditions; the displayed liquidation price can be a reference rather than a fixed trigger. Confirm the account-specific rules in Bybit’s execution and liquidation FAQ.

The difference also changes the number you see as unrealized P&L

For our simplified linear example, valuing the position at 59,220 gives (59,220 − 60,000) × 0.02 = −15.60 quote-currency units. Valuing it at 59,080 gives −18.40. The difference is 2.80 before fees or funding. These are two valuations of the same open exposure, not two executed closing trades.

This is why a screenshot of floating profit is incomplete evidence. Ask which reference created it and whether the figure includes costs. Our guide to balance versus equity explains the broader difference between realized results and the changing value of open positions.

Trigger price is not fill price

A conditional order has at least two stages: a rule becomes true, then an order must be processed. Specifying mark price as the trigger does not create a counterparty willing to trade at that exact mark. A market order still needs available liquidity; a limit order still has its price restriction.

Bybit’s API exposes different trigger references, including LastPrice, MarkPrice and IndexPrice, for supported derivatives conditions. It also has separate take-profit and stop-loss trigger fields. Inspect the actual submitted parameters rather than relying on the label of a saved preset. The fields are described in the order API documentation.

Here is a useful debugging separation: “The trigger fired at 10:00:00.100” is one fact; “the resulting order was accepted at 10:00:00.160” is another; “0.02 units filled at an average price of 59,030” is a third. Combining all three into “the stop price was 59,150” conceals the important part of the story.

Read limit versus market orders for bots for the execution distinction. Quantity and price validation can also prevent an intended order from being accepted; those checks are covered in minimum order size and tick steps.

One mark trigger, two execution outcomes

Practical check — 23 October 2026. A saved trigger and a completed exit are different records. Before comparing a chart with a stop, inspect the reference that activates the order and the order that follows it.

  • Bybit: for a supported derivatives conditional order, check triggerBy, triggerPrice and direction separately from orderType, limit price and timeInForce. Built-in TP/SL has separate trigger fields; a conditional closing order and attached TP/SL are not interchangeable API recipes. See the official order fields and restrictions.

  • OKX: its TP/SL guide describes switching the chart through Markets → Last Price to compare last, mark and index histories. Match that chart reference to the saved trigger type, then inspect the resulting order and fills. Labels and availability can differ by interface and account.

A reproducible order-book exercise

Consider a separate, entirely synthetic linear BTC/USDT example with isolated margin: a long exposure of 0.020 BTC entered at 60,000 USDT/BTC. Mark has just fallen through a sell trigger of 59,400. At this observation, mark is 59,390, last is 59,420 and index is 59,410. The mark condition is met; the same downward threshold has not been reached by the other two references at this observation.

After activation, suppose the following bids are available. Each branch starts from this same book independently; these are alternative experiments, not two orders sent together.

Bid, USDT/BTC

Available, BTC

Cumulative, BTC

59,380

0.008

0.008

59,350

0.007

0.015

59,320

0.005

0.020

Assume the closing order is accepted, quantities and price steps are valid, the book does not change, and no competing order consumes this volume. All three prices are inside the applicable execution safeguards for branch A. Fees and funding are excluded. This exercise does not simulate liquidation or demonstrate a New Hope Crypto configuration.

Measure

A: Market

B: Limit / GTC

Sell instruction

Close 0.020 BTC at available bids

Sell 0.020 BTC at 59,370 or better

Filled, BTC

0.020

0.008

Average fill, USDT/BTC

59,354.50

59,380.00

Realized P&L before costs, USDT

−12.91

−4.96

Still open, BTC

0

0.012

Unfilled order balance

None in this assumed book

0.012 BTC waits at 59,370

Check A: (59,380 × 0.008 + 59,350 × 0.007 + 59,320 × 0.005) ÷ 0.020 = 59,354.50. Realized P&L = (59,354.50 − 60,000) × 0.020 = −12.91 USDT before costs.

Check B: a sell limit of 59,370 accepts the bid at 59,380, but not 59,350 or 59,320. Its realized result is (59,380 − 60,000) × 0.008 = −4.96 USDT before costs. GTC keeps the remaining order active; it has not closed the remaining 0.012 BTC.

−4.96 is not evidence of a better complete exit than −12.91. Branch B still carries exposure and an unrealized result. Mark selects the activation event; liquidity, limit price and order lifetime determine what can execute.


Synthetic Mark-trigger comparison: market closes 0.020 BTC at average 59,354.50; a GTC sell limit fills 0.008 BTC and leaves 0.012 BTC open.

Separate alternatives from the same starting book. Invented prices and liquidity; fees and funding excluded. This is not New Hope trading performance. Open the full-size diagram.

Bybit processes market orders as IOC: if permitted liquidity is insufficient, an unfilled remainder is cancelled rather than left waiting. Full execution in A is an assumption of this book. Changing B to IOC would cancel its unfilled balance; it would not close that exposure. These order-lifetime rules are documented in Bybit’s GTC/IOC/FOK guide.

Apply the check to a New Hope Crypto setup

The New Hope Crypto product page describes volume-profile and price-level analysis, configurable trade volume, profit targets and loss limits, with automatic actions following configured rules. It lists Bybit and OKX among supported exchanges, while asking users to confirm the account and market before connection.

For the intended build and instrument, confirm where the protective condition runs, which price it observes, which closing order it produces, and how a partial fill or restart is reconciled. The public product description does not establish support for every perpetual contract, margin mode or Mark/Index trigger selector. This exchange-level worksheet is a verification brief for that conversation, not proof that a particular product configuration exposes those options.

Build a useful incident record

If a live event looks wrong, collect facts before changing settings. A chart image may use a different timezone, symbol or price series. Preserve the order identifier and the exchange timestamps, then align your own log with them. Avoid publishing API secrets, account credentials or personal identifiers when asking for assistance.

Record

Useful content

What it distinguishes

Market identity

Exchange, exact contract, quote currency

One product from a similarly named spot pair

Account context

Margin mode and position direction

Position threshold from account-wide risk

Condition

Trigger reference, trigger price, order type

Activation from execution

Timeline

Exchange event times and local receipt times

Market sequence from delayed delivery

Outcome

Accepted, rejected, partial fill, fill or cancellation

Missing execution from a missing signal

Do not reconstruct the incident from a single current account screen. Margin can change as other positions move, orders fill, funding is applied or collateral changes. A snapshot taken after the event may describe a different account state from the one that caused it.

If your robot connects to an exchange but no trades appear, use the New Hope Crypto no-trades checklist. It separates connection, instrument selection, strategy conditions, order submission and actual execution, so you can identify which stage needs attention.

What to check before enabling an automated strategy

  1. Identify the exact market. Record whether the intended operation is spot, linear derivatives or another contract type.

  2. Identify the reference for every condition. Entry, take profit, stop loss, alerts and account risk may not use the same series.

  3. Review margin mode. Do not reuse a fixed-price assumption from isolated margin in an account-wide margin model.

  4. Verify the resulting order. Confirm quantity, order type, closing behavior and acceptance, not just that a trigger was stored.

  5. Test an abnormal sequence. Use a safe test environment to examine a price divergence, delayed update and partial fill.

  6. Define a stop-and-review procedure. Decide who investigates a rejection, disconnect or unexplained exposure.

The objective is not to force all prices to be identical. It is to make each decision’s input visible. A dashboard that labels “last,” “mark” and “index” explicitly is easier to diagnose than one large number called “price.”

Three common mistakes

Placing a stop extremely close to the displayed liquidation level

The apparent gap may be smaller in the relevant reference series, and execution takes time. There is no universal safe percentage that works for every instrument, liquidity condition and account configuration. A risk review must consider the whole position and available margin, not only the visual spacing of two lines.

Changing trigger type without retesting the strategy

A rule researched on last-trade candles can produce a different event sequence on mark data. Changing the trigger changes the experiment. Save the old configuration, state the reason for the change and compare events on the correct data. The same discipline applies to tick and candle backtesting.

Treating a restart as a fresh account

After a reconnect, open positions and exchange-side conditional orders may already exist. Reconcile them before issuing replacements. Our restart and recovery checklist explains how to avoid confusing a recovered session with a new strategy start.

Questions worth asking

Is mark price always more accurate than last price?

They answer different questions. The latest trade tells you where a trade occurred; a calculated reference supports other functions. Neither number guarantees that your whole order can execute at that level.

Will using mark price for my stop prevent liquidation?

No. It can align the trigger reference with a risk reference in supported configurations, but it cannot eliminate gaps, execution delays, rejection, insufficient liquidity or account-level margin changes.

How does this relate to New Hope Crypto?

New Hope Crypto automates strategy decisions involving volume-profile analysis, clustered levels and price movement. When discussing a deployment, confirm the exchange, supported market type and actual protection settings with the team. This article explains exchange mechanics; it does not claim that every described order feature is available in every New Hope configuration.

Get our presentation about New Hope PRO and CRYPTO

Get our presentation about New Hope PRO and CRYPTO

Get our presentation about New Hope PRO and CRYPTO