BTC:
ETH:
SOL:
BNB:
XRP:
Position state

Partial exits and remaining inventory

Selling part of a position creates two records at once: a realized result for the units sold and a smaller open position whose price, route, and exit capacity can keep changing.

9 min readReviewed July 14, 2026Trading mechanics

The short answer

A partial exit realizes proceeds and profit or loss only for the quantity that actually sold. The unsold tokens remain open inventory. They retain exposure to price, liquidity, contract, and route risk even if the first sale returned your original cash outlay.

Track six separate values after every fill: units sold, net proceeds, cost basis assigned to those units, realized result, units remaining, and cost basis still open. A single “position P&L” number hides whether value is in the wallet, already realized, or merely marked at a price the pool may not support.

A partial exit changes the position state

Realized proceeds

The destination asset actually received for the sold units, net of costs you assign directly to the exit.

Realized P&L

Net exit proceeds minus the documented cost basis assigned to the units sold.

Remaining inventory

The exact token quantity still controlled by the wallet after the fill, including any unsold amount returned by the route.

Open cost basis

The portion of acquisition cost still assigned to the remaining units under the journal's chosen lot method.

Unrealized mark

An estimate based on a current price or executable quote. It is not realized and should name the pricing source and size.

A simple average-cost example

Suppose 1,000,000 TOKEN cost 10 SOL plus 0.1 SOL of acquisition costs. The position's journal basis is 10.1 SOL. Later, 250,000 TOKEN sells and returns 6 SOL; exit costs reduce net proceeds to 5.9 SOL.

Units sold

250,000 TOKEN · 25%

Net proceeds

5.9 SOL

Allocated basis

2.525 SOL

Realized result

+3.375 SOL

Units remaining

750,000 TOKEN

Open basis

7.575 SOL

This example uses average cost for a performance journal: 25% of the units receives 25% of the basis. A wallet with several acquisition lots may use a different, consistently documented lot method. Tax rules vary by jurisdiction; this guide is trade accounting, not tax advice.

Use actual fill amounts, not the slider label

A “sell 25%” button expresses an intention. The transaction result tells you what happened. Rounding, token decimals, transfer behavior, route limits, and partial input use can make actual input differ from the interface label.

Jupiter's current execution response separates the input used and output received from broader total amounts and fees. On any route, the durable source is the onchain token and native balance delta. Recalculate remaining units from the post-transaction wallet—not by subtracting a rounded percentage from a prior screenshot.

The next exit is a new trade

The first sale changes pool reserves. Other holders can sell, liquidity providers can withdraw or move ranges, a curve can migrate, and an aggregator can choose a different route. The fill and capacity available to the first 25% do not promise the same result for the remaining 75%.

Re-quote the remaining position at several sizes after every material exit. Use liquidity depth and exit capacity to find the largest acceptable next rung rather than carrying forward the first trade's price.

A partial-exit plan needs triggers and quantities

Define the trigger

Use an observable condition—price, liquidity, time, thesis break, or loss limit—not a vague promise to “take some profit.”

Define the quantity

State tokens or a percentage of current inventory, then convert it to base units before signing.

Set the protected output

Record the minimum destination amount and maximum acceptable impact for that exact exit size.

Plan the residual

Specify what remains, its next decision point, and how much executable capacity it would require.

Cap retry costs

Repeated failures add network fees and pressure. Decide the total attempt budget before the first submission.

Common accounting mistakes

  • Treating gross output as proceeds while excluding pool, platform, priority, tip, gas, and network costs.
  • Declaring the whole position profitable because one exit exceeded the original cash outlay.
  • Setting remaining basis to zero without naming the internal accounting method, then mixing that method with lot-based realized P&L later.
  • Marking remaining inventory at the latest spot price instead of a quote sized to the actual inventory.
  • Forgetting tokens held in another token account, wrapped balance, smart account, or failed route cleanup.

The journal record after each partial exit

  1. Transaction identifier, time, route, success status, and sold token's mint or contract address.
  2. Actual token input, gross destination output, every direct exit cost, and net proceeds.
  3. Basis method, allocated basis, realized P&L, and cumulative realized proceeds across all exits.
  4. Remaining token units, open basis, current size-aware exit estimate, and the next planned trigger.

Primary sources

Reconcile the residual

Track what sold and what is still exposed.

Paste a public address to reconstruct actual fills, fees, realized proceeds, and remaining inventory without connecting a wallet.

Open the journal