Pika Protocol
Comment on page


Low Slippage

Pika has its liquidity concentrated around the current oracle price, making it possible to achieve the same level of liquidity as top perpetual exchanges. This enables capital efficiency and minimum trade slippage without requiring too much exchange liquidity. Specifically, Pika has zero slippage for major pairs like ETH, BTC and forex.


Pika uses the on-demand decentralized Pyth oracle to decide the mark price. Whenever an order is submitted, the keepers will fetch the price from Pyth price feed and update the mark price onchain before executing the order. To safeguard the accuracy of the low latency oracle, Chainlink oracle is used for most of the pairs with a bid/ask spread whenever the low latency oracle is not updating or its price deviates too much(2%) from Chainlink prices. In addition, traders can set an allowed slippage for each order submission, to make sure the order is executed only if the mark price is within the allowed slippage range.
Pika has zero slippage for ETH, BTC and forex pairs. The trading price for each is almost the same as the mark price.
For other pairs, the trade price is dynamically adjusted on top of mark price. The pricing is determined by these factors in real time:

TradePrice=MarkPriceSlippage+PriceAdjustmentTrade Price = Mark Price * Slippage + Price Adjustment

Mark Price: Pika gets the real-time fast oracle price as the base price.
Slippage: The trade slippage is calculated based on the virtual liquidity, trade amount and trade direction, using the xyk model.
Price Adjustment: To reduce the risks to the LPs, Pika has the mechanism to balance the open interest of longs and shorts. When there are more longs than shorts in the protocol, the bid price will increase slightly to incentivize fewer long positions, and vice versa.

Trade Many Assets

Pika Protocol empowers users to trade both crypto and non-crypto assets with leverage. It can support any asset as long as there's a reliable price feed.

Simple Experience

Unlike many other derivatives exchanges, Pika allows traders to swap directly from their wallets without any depositing steps.


Pika Protocol was launched on the Optimism network, providing users with low transaction costs relative to layer-1 Ethereum. Other than the user gas fee, there are two fee parts:
Execution Fee: A small execution fee(~0.00025 ETH) is charged when an order is submitted, which is paid to keepers reponsible to execute the submitted orders with latest oracle update.
Trade Fee: A small trade fee (0.05% for ETH/BTC, 0.1% for other crypto pairs and 0.02% for forex) is charged for each trade. 50% of trade fees are distributed to the vault (liquidity providers) and 50% to the protocol.

Funding Rate

Pika has a funding mechanism to balance the longs and shorts for each trading pair, reducing the risk for liquidity vault. When there are more longs than shorts, longs pay shorts, incentivizing more traders to short. When there are more shorts than longs, shorts pay longs, incentivizing more traders to long. Since the liquidity vault is always at the minority side, it always receives funding. The funding rate of each trading pair is updated every time a trade is made for that pair, and the funding is paid or received when positions are closed. Annual funding rate is calculated as follows:
(openInterestLongopenInterestShort)fundingMultiplier/maxExposure(openInterestLong - openInterestShort) * fundingMultiplier / maxExposure
fundingMultiplier is set to 2 for crypto and 0.2 for forex right now and maxExposure is the max long or short exposure allowed for each pair, which can be found at the Detail section of the trading page.

Market, Limit and Stop Orders

Pika supports 3 types of orders: market, limit and stop. The market orders are sent to be executed immediately once it is submitted. For limit and stop orders, they are submitted to be stored in a smart contract instead of centralized servers, with the aim to be as trustless as possible, and are triggered by keeper bots once the price requirement is matched.
Take-profit and stop-loss orders are a special type of limit and stop orders, which can be created together to close positions within 1 transaction.


If the Oracle price reaches the liquidation price, the position will be liquidated. The liquidation price of a position is calculated using this formula:
Long Position:
entryPrice(entryPrice(liquidationThresholdmargin+funding)/positionSizeentryPrice - (entryPrice * (liquidationThreshold * margin + funding) / positionSize
Short Position:
entryPrice+(entryPrice(liquidationThresholdmargin+funding)/positionSizeentryPrice + (entryPrice * (liquidationThreshold * margin + funding) / positionSize
The liquidationThreshold is set to 80% as default. The remaining margin of the liquidated position are shared as reward among liquidators, liquidity providers, PIKA token stakers and Pika Protocol.
For the 50x ETH long position with entry price at $4000, positon size as 8000 USDC with margin as 160 USDC, and current funding as 10 USDC, the liquidation price would be $3941((4000 - (4000 * (0.8 * 160 + 10) / 8000)). If a liquidator liquidates this position at $3941, $32(160 * (1 - 0.8)) will be used to pay liquidators, protocol fees and liquidity providers.
For the 50x ETH short position with entry price at $4000, positon size as 8000 USDC with margin as 160 USDC, and current funding as -10 USDC, the liquidation price would be $4059(4000 + (4000 * (0.8 * 160 - 10) / 8000). If a liquidator liquidates this position at $4059, $32(160 * (1 - 0.8)) will be used to pay liquidators, protocol fees and liquidity providers.
At the launch, Pika Protocol team will be the liquidator for all the positions.

Liquidity Vault

The protocol is backed by the liquidity providers. By staking in the vault, liquidity providers take the opposite position of all traders on the platform. The vault pays for trader profits and receives trader losses. In addition, it also receives trading fees, funding payments and liquidation profit of trades.
To protect vault from big loss in highly volatile conditions, the vault has a maxExposure parameter for each trading pair. When the maxExposure is reached, traders cannot open the additional position that increases the vault's exposure, but can open the position in the direction that decreases the vault's exposure. This should rarely happen when the vault's liquidity is big enough.
The APY shown for the vault is calculated based on the fees distributed to vault in the last 7 days.