shadowpaperDocsTrade ↗
Open AppTrade ↗
How it works

LP & payout queue

The LP starts at zero and grows only from trader losses; wins it cannot pay at once wait in a first-in, first-out queue.

The LP#

The LP is the protocol's USDT used to settle trades. It starts at zero: there is no seed capital, no founders' deposit and no LP fundraising. No one can deposit into it. It grows only from trader losses. The only way to participate in LP economics is to stake SPAPER.

The payout queue#

The payout queue is a first-in, first-out (FIFO) list of unpaid profits. When the LP cannot pay a winning close in full, it pays what it can and the unpaid profit joins the back of the queue. If a queue already exists, the whole profit joins the back. As later losses refill the LP, the queue is paid from the front.

Margin is never queued. On every close, the original margin returns to the trader's balance immediately. Only profit can wait.

While the queue is active#

  • Losses that would refill the LP are earmarked for queued winners first.
  • The 2% LP-side fee on losses is waived.
  • Staking dividends from LP surplus pause; queued winners are paid ahead of stakers.

Queued balance as margin. A trader can open a new position funded by their own queued balance. If it wins, the new claim joins the back of the queue; if it loses, the lost part of that queued balance is cancelled.

The trader's queue position and the current LP balance are shown on the trade panel and in the portfolio.

Example: a win is queued and repaid#

Alice closes a winning position with a net profit of 86.38 USDT while the LP holds 30 USDT of free cash; later Bob closes a losing position for 60 USDT.

EventAliceLP free cashQueue
Alice closesMargin 100 returned; 30 paid30 → 0Alice 56.38
Bob loses 60 (no fee: queue active)—+60, earmarkedAlice 56.38
Harvest pays the queue56.38 paid60 − 56.38 = 3.62Empty
Bob's SPAPER (60 × 100)——Bob mints 6,000 SPAPER
paid now = min(profit, LP cash)  = min(86.38, 30) = 30
queued   = 86.38 − 30            = 56.38
Bob fee  = 0                     (queue active)
LP after = 60 − 56.38            = 3.62
Bob mint = 60 × 100              = 6,000 SPAPER   (net LP below 2,000,000 USDT)

← Scroll sideways for long formulas

Alice receives her full 86.38 USDT profit in two parts and her margin immediately; the queue is cleared before the LP retains any new cash.

Reserve line#

The LP keeps a reserve line (initially 5,000,000 USDT) before any surplus is distributed. Only the timelock can change it, with 24 hours' notice. Money released by lowering it can only flow to SPAPER stakers through the normal dividend path. Apart from the timelock itself, which after 24 hours' notice can upgrade contracts or repoint the staking address (see Risks), no contract function sends LP cash to anyone other than SPAPER stakers, including the team.

A reserve line below 5,000,000 USDT takes effect only after the timelock has separately switched on wind-down (also with 24 hours' notice) and all positions are settled. The contract checks four conditions: wind-down is on, trading is paused, no positions are open and the payout queue is empty. If any condition fails, the 5,000,000 USDT line still applies. An emergency pause alone does not trigger it. In a wind-down, the reserve line is set to 0 and the remaining LP cash is distributed to stakers.