Skip to main content

What is Jupiter Perps?

Jupiter Perps is a perpetual futures exchange built on Solana. Its SOL, ETH, and wBTC markets operate as a trader-to-LP model: traders borrow assets from the Jupiter Liquidity Pool (JLP) to open leveraged positions, while liquidity providers earn a share of the fees generated by trading activity. Positions on these markets are priced using onchain oracles rather than an orderbook: a trade executes at the oracle price when it is processed, within your slippage tolerance. A price impact fee is applied instead to protect liquidity providers from large or imbalanced trades.

Supported Markets

These three markets trade against the JLP pool and carry a JLP badge in the market selector on jup.ag. Traders can hold up to 6 simultaneous positions on them: one per asset per side (long/short). Beta markets, marked with a Beta badge in the selector, extend the lineup with USDC-collateralized markets powered by GUM, an orderbook trading engine: Beta markets use an hourly funding rate instead of a borrow fee, taker and maker fees, one net position per market, and leverage limits set per market. See Beta Markets.

Key Parameters

For the JLP markets (SOL, ETH, wBTC). Beta markets set their own leverage limits and order caps: see Beta Markets.

How It Works

Trader

Deposits collateral and borrows the remainder of the position size from the JLP. Pays borrow fees, base fees, and price impact fees. Profits and losses are settled in the position’s underlying collateral token.

Liquidity Provider

Provides liquidity to the JLP. Earns 75% of the fees generated by trading on the JLP markets, swaps, and JLP minting/burning. Exposed to trader PnL as the pool acts as counterparty.

Execution Model

On a JLP market, trades are executed by a keeper (an automated offchain service run by Jupiter), in one of two ways that the app picks:
  1. Request: you sign a trade request, and the keeper detects it, validates it, and executes the trade in a second transaction. Limit orders and take profit / stop loss orders are always executed by the keeper this way, once the price reaches their trigger.
  2. Single transaction: you sign one transaction that the keeper co-signs and executes right away.
Either way, trades are processed automatically without manual intervention. See Technical Reference for details. Orders on Beta markets are signed in your wallet and processed by the market’s trading engine instead; see Beta Markets.

Price Oracles

Token prices are sourced from three independent oracles: Edge by Chaos Labs (primary), Chainlink, and Pyth (both used for verification and as fallback). Prices are updated during trade execution and by a dedicated keeper. See Technical Reference for the full oracle logic.

Liquidity Comes from the JLP Pool

The liquidity for Jupiter Perps is provided by the Jupiter Liquidity Provider (JLP) pool. Traders borrow assets from this pool to open leveraged positions. In return, the pool earns 75% of the trading fees of the SOL, ETH, and wBTC markets. JLP holders act as the counterparty to all trades on these markets: when traders profit, the pool pays out; when traders lose, those losses flow back into the pool. Beta markets run on their own trading engine and do not use the JLP pool. This model means trading activity on Perps directly affects JLP holders, and JLP pool liquidity directly affects what traders can access.

Learn more about JLP

JLP pool mechanics, yield, risks, and how to become a liquidity provider.

Order Types

Opens a position immediately at the current oracle price. No price guarantee beyond the oracle price at the time of execution.
Opens a position when the oracle price reaches a specified target. Limit orders remain active until triggered or manually cancelled. They are independent from existing positions, if triggered, they will open a new position or increase an existing one on the same market and side. Reaching the target price does not guarantee execution: if the price moves too fast, the order may fail on slippage.
Conditional close orders attached to an existing position on a JLP market (not available on Beta markets). Automatically triggered when the oracle price reaches the specified level; execution is not guaranteed if the level is close to the liquidation price.

Risks

Trading perpetuals involves significant risk of loss.
  • Leveraged positions can be liquidated if collateral falls below the maintenance margin.
  • Borrow fees accrue continuously and move your liquidation price closer to the current price over time.
  • Oracle prices may differ from prices on other venues.
  • Smart contract risk: the protocol has been audited but no audit eliminates all risk.
Only trade with funds you can afford to lose.

  • Beta Markets: JUP, HYPE, ZEC, and the stock markets SPCX, SNDK, and SKHYNIX, with USDC collateral, hourly funding, and one net position per market
  • Positions & Collateral: how to open, manage, and close positions
  • Fees: all fee types explained
  • Liquidation: liquidation mechanics and how to avoid it
  • Technical Reference: oracles, keeper model, onchain accounts
  • JLP Overview: the liquidity pool powering Jupiter Perps