Price Impact & Trading Fees
Price impact and trading fees are distinct charges incurred whenever an account's position changes.
Price Impact
The price impact is the difference between a trade's execution price and the oracle price, applied to Taker positions. It is calculated as the sum of linear, proportional, and adiabatic fees.
Linear Fee
A fixed spread calculated as a percentage of the trader's notional value.
Proportional Fee
Varies based on the volume of trades occurring at that time.
Adiabatic Fee
Paid by Takers to incentivize a more balanced market, adjusting gradually based on the aggregate market skew and the direction of the Taker's order.
Orders are categorized as:
Positive skew orders (long open / short close): Trades that increase or create long exposure, or decrease or close short exposure.
Negative skew orders (short open / long close): Trades that increase or create short exposure, or decrease or close long exposure.
Key Variables for Price Impact:
Trade Fees
Trading fees are levied on Perennial and are based on the gross trade fee.
Fees Summary & Distribution
As of v2.3, the calculation of market fees has been updated to decouple risk and oracle fees, with oracle fees now determined by the oracle itself rather than market parameters. Collected fees are split between Makers (and in rare cases Takers), the Perennial treasury, and the respective product owner's treasury.
The apportionment of the Gross TradeFee
follows this structure:
Subtractive Fee (Referral Component):
subtractive_fee_amount = Gross TradeFee × referral_fee_percentage
Solver Fee:
solver_fee_amount = subtractive_fee_amount × solver_fee_percentage
Market Fee:
market_fee_amount = Gross TradeFee - subtractive_fee_amount
Risk Fee:
risk_fee_amount = market_fee_amount × risk_fee_percentage
Oracle Fee:
oracle_fee_amount = (market_fee_amount - risk_fee_amount) × oracle_fee_percentage
Protocol Fee:
protocol_fee_amount = market_fee_amount - risk_fee_amount - oracle_fee_amount
Key Parameters for Trade Fees:
Fee Split
All collected fees are distributed among Makers (occasionally Takers), the Perennial treasury, and the treasury of the respective product owner. This enables market owners (e.g., individual organizations, DAOs, protocols) to earn revenue from the administration of their products and parameters.
Last updated