Tick Math
Why Ticks?
A one-cent move on a $60,000 asset is noise. A one-cent move on a stablecoin pair is a massive dislocation. Fixed decimal pricing can't serve both markets well.
PartyDEX uses ticks — a logarithmic price scale where each step moves the price by exactly one basis point (0.01%). This gives every market the same relative precision, from stablecoins trading near 1.0 to volatile pairs spanning orders of magnitude.
The Core Idea
A tick is a signed integer. The price at any tick is:
price(tick) = 1.0001 ^ tick
Moving up one tick multiplies the price by 1.0001. Moving down divides by 1.0001. Tick 0 means price = 1.0.
Some landmarks:
- Tick 0 — price is exactly 1.0 (stablecoin peg)
- Tick 6,932 — price is roughly 2.0
- Tick 23,027 — price is roughly 10.0
- Tick 69,081 — price is roughly 1,000
- Tick -23,027 — price is roughly 0.1
The symmetry: price(tick) * price(-tick) = 1.
Display Prices
The raw tick price needs adjustment for token decimals. For example, BTC has 8 decimals and USDT has 6, so:
display_price = raw_price * 10^(baseDecimals - quoteDecimals)
For exact formulas and field definitions, see the Spot API reference.
The Unified Grid
The order book and AMM pools share the same tick grid. Book orders rest at discrete ticks. Pool prices move continuously between ticks, but liquidity position boundaries snap to the same grid. No translation layer, no rounding mismatch. This is what makes smart routing work seamlessly.