Fees & slippage
For Simple mode
Last updated
For Simple mode
Last updated
A Opening fee = Number of contracts × Entry price × Opening fee rate0.08% fee is charged when opening a position, calculated as:
Opening fee = Number of contracts × Entry price × Opening fee rate
Example
If a trader on BNB Chain opens a 1 ETHUSD long position at $1,500:
Opening fee = 1 × 1,500 × 0.08% = $1.20
A 0.08% fee is also charged when closing a position, calculated as:
Closing fee = Number of contracts × Close price × Closing fee rate
Example
If the same trader closes the 1 ETHUSD position at $1,600:
Closing fee = 1 × 1,600 × 0.08% = $1.28
For positions using 500×, 750×, or 1001× leverage, no opening fee is charged. Instead, a dynamic closing fee is applied, calculated based on the realized PnL.
The minimum closing fee under this model is 0.03%.
Where:
PnL = Profit or loss on the position
Share rate = Percentage of notional paid in fees (e.g. 15%)
Notional = Value used to open the position
Close min rate = Minimum fee rate applied (e.g. 0.03%)
Example
If the position has a $100 profit, share rate is 15%, and notional is $600:
Closing fee rate = Max((100 × 15%) / 600, 0.03%) = 0.03%
Note: In the event of liquidation, the 85% liquid loss rate includes this closing fee.
This fee covers network costs and ensures smooth order execution. It is charged only when a position is opened.
BNB Chain: $0.50
Arbitrum: $0.20
The funding rate helps balance long and short positions on Aster Simple. It protects the ALP from excessive risk exposure and reduces the pool’s exposure to large open positions.
Funding is calculated every block. When market conditions change, the accumulated funding fee is automatically updated. This fee is reflected in a position’s unrealized PnL and directly affects the liquidation price.
If the user holds a long position, the fee uses the long funding rate
If the user holds a short position, the fee uses the short funding rate
Funding fee formula
Funding fee per block = (Number of contracts × Mark price) × Funding rate per block
Funding rate per block
The funding rate per block is determined by the gap between long and short open interest and the platform’s current borrow rate.
When long positions > short positions:
Long basic funding rate = -abs(funding rate p)
Short basic funding rate = abs(funding rate p)
When short positions > long positions:
Short basic funding rate = abs(funding rate p)
Long basic funding rate = -abs(funding rate p)
Final funding rate
Long funding rate = Long basic funding rate − Borrow rate
Short funding rate = Short basic funding rate − Borrow rate
Borrow rate
The borrow rate is reviewed and adjusted regularly as part of platform risk management. It is influenced by:
The size of the position
The time the position is held
The base interest rate per block is used to help calculate the borrow rate dynamically, based on recent market volatility.
Base interest rate per block = Base interest rate / (365 × 28,800)
Where:
Base interest rate = k × HV
k = Adjustment factor (default: 1.25, platform adjustable)
HV = Historical volatility = 2-week average volatility × 365
This allows the platform to adjust borrow costs dynamically in response to volatility.
For more, see the historical volatility & base interest rate below:
Liquidation occurs when a position’s mark price reaches its liquidation price. This price is determined by factors like leverage, margin, funding, and the platform’s liquidation loss rate.
The liquidation price distance is calculated as:
Liquidation price distance = Entry price × (Initial margin × Liquidation loss rate + Cum funding fee) / Initial margin / Leverage
For long positions:
Liquidation price = Entry price − Liquidation price distance
For short positions:
Liquidation price = Entry price + Liquidation price distance
Entry price: The price at which the position is opened
Initial margin: The collateral the trader deposits to open the position
Liquidation loss rate: The default platform-defined loss factor during forced liquidation (default: 90%)
Cum funding fee: The total accumulated funding fees since the position was opened
Leverage: The leverage multiple selected by the user
If a trader opens a long ETH/USD position at 10× leverage with:
Entry price: $1,500
Initial margin: $100
Funding fee: $2
Liquidation loss rate: 85%
Then:
Liquidation price distance = 1,500 × (100 × 85% + 2) / 100 / 10
= 1,500 × (85 + 2) / 1,000
= 1,500 × 87 / 1,000
= 130.5
Liquidation price = 1,500 − 130.5 = 1,369.5
Slippage on Aster Simple can be either fixed or dynamic, depending on the trading pair. The platform determines the slippage type based on the liquidity of the pair’s underlying assets, as observed from its oracle sources. This mechanism helps prevent price manipulation.
In general:
Slippage increases when open interest and new position size increase
Slippage decreases when oracle-source liquidity improves
Fixed slippage is used for high-liquidity pairs like BTC/USD, ETH/USD, and forex contracts.
Example:
If a trader opens a long ETH/USD position when the Pyth oracle price is $1,500 and the slippage is 0.01%:
Entry price = 1,500 + (1,500 × 0.01%) = 1,500.15
Because liquidity differs across trading pairs and source markets, slippage levels also vary by asset. In general, pairs with lower liquidity will experience wider spreads.
Dynamic slippage is used for trading pairs that don’t qualify for fixed slippage. It is calculated based on ALP exposure, current open interest, and the size of the user’s new position.
Formulas:
Long dynamic slippage (%) = (New position + Symbol long open interest) / 1% depth above
Short dynamic slippage (%) = (New position + Symbol short open interest) / 1% depth below
Where:
New position: Size of the user’s order
Long/short open interest: Current open interest for the symbol in each direction
1% depth above / below: Aggregated spot market depth within ±1% of the index price, based on major source markets
This design ensures that slippage scales with market impact and liquidity — helping maintain fairness and pool stability.