Docs

How it works

Soft liquidation

How bands sell collateral for dollars as the price falls and buy it back as it recovers, and what that costs.

Every band is a market maker

Each band is a small automated market maker that trades collateral for USDC at a price set by the oracle. It never acts on its own; it quotes, and anyone can trade with it.

  • When the oracle falls into a band, the band offers its collateral a little under the market. Arbitrageurs buy it and sell it elsewhere. The band's collateral turns into dollars.
  • When the oracle rises back through it, the band bids for collateral a little over the market. Arbitrageurs sell collateral into it. The dollars turn back into collateral.

Your loan is the sum of your shares of those bands. That is the whole mechanism: there is no separate liquidation engine that decides when to sell.

Watch a range convert

Bands converted
0.0 of 10
Collateral in bands
10.000
Dollars in bands
0.00
Versus holding
+0.00
Ten units of collateral over ten 1% bands from 100.00 to 90.44. Move the price down and back up: every pass through a band costs a little, which Versus holding adds up. Simplified model; the program uses Curve's LLAMMA curve.

The curve

Taper uses the oracle-dependent curve from Curve's LLAMMA. A band with x dollars and y collateral, top edge U and amplification A, adds virtual reserves derived from the oracle price p:

f = A × y0 × p² / U g = (A − 1) × y0 × U / p (f + x) × (g + y) stays constant through a trade

y0 is the positive root of the band's quadratic, so the curve passes through the band's actual balances. In a band holding only collateral, the marginal price is p³ / U²: as the oracle falls, the band's price falls faster than the oracle, which is exactly what makes buying from it profitable.

The program does this in integer arithmetic. Every rounding goes against the trader, input needed to finish a band rounds up, and output rounds down. The SDK reproduces the same math to the unit, checked against vectors generated by the program's own code.

Who does the trading

Anyone can call swap: buy collateral from the bands with USDC, or sell collateral to them. A trade posts a fresh Pyth price in the same transaction and can cross as many bands as the caller allows. Taper never trades on its own account. If nobody arbitrages, nothing converts, and a falling price eats into health instead. Keepers describes the work.

What it costs you

  • The spread. Each band sells a little under the market on the way down and buys back a little over it on the way up, so every round trip through a band loses a little of its value. Versus holding in the app is the running total.
  • Chop. A price that swings back and forth inside your range pays the spread on every swing. crvUSD borrowers have paid exactly this.
  • Lag. After a fast move the band fee rises for two minutes, so arbitrage waits and conversion trails the price. See Oracle.

The band trade fee itself, 0.20%, is paid by the trader and stays in the band, so it accrues to the band's owners.

Measured on history

The program's math was replayed on SOL/USDC minute closes, for a 100-SOL loan over 20 bands starting 15% under the opening price, with the jump fee on.

MonthLoss versus holding
August 2024, 44,640 closes2,320.82 USDC
April 2025, 43,200 closes558.73 USDC
August 2026, 44,640 closes0.00 USDC; the range was never reached

The replay assumes arbitrage with no latency and deep outside liquidity, uses exchange closes rather than Pyth updates, and leaves out interest. Read it as the shape of the cost, not a forecast.