🎫Fees & Spread
Introduction
In line with industry standard, fees are calculated on the value of the total position size (leverage x collateral).
Fees Breakdown
The "Market/Limit" fee below goes to Buyback & Distribute if the order is a market order, and to oracle bots if the order is a limit order.
Additionally, the referrer rewards are always taken from the "Governance Fund" fees.
Finally, while all trades are open, they may pay a borrowing fee, which goes into the overcollateral layer of the corresponding gToken vault.
Cryptocurrencies
For BTC and ETH, the spread is 0%. For other cryptocurrencies the spread is dynamic, depending on the price impact formula.
Opening a trade: 0.06%
Closing a trade: 0.06%
Forex (Major)
Spreads on all major forex pairs are fixed at 0.01%.
Opening a trade: 0.012%
Closing a trade: 0.012%
Forex (Minor)
Spreads on all minor pairs are fixed at 0.01%.
Opening a trade: 0.016%
Closing a trade: 0.016%
Forex (Exotic)
Spreads on all exotic forex pairs are set per pair depending on their volatility.
Opening a trade: 0.02%
Closing a trade: 0.02%
Commodities (Tier 1)
This category currently only includes XAU/USD (Gold). Spreads on all tier 1 commodities are fixed at 0.01%.
Opening a trade (0.05%)
Closing a trade (0.05%)
Commodities (Tier 2)
This category currently includes XAG/USD (Silver), WTI/USD (Oil), XPD/USD (Palladium), and XPT/USD (Platinum). Spreads on all tier 2 commodities are fixed at 0.04%.
Opening a trade: 0.08%
Closing a trade: 0.08%
Revenue Distribution
For a Market order, the stream of revenue from fees is allocated as follows:
For a Limit order, the stream of revenue from fees is allocated as follows:
A Market order refers to when an order is manually opened and/or closed, and a Limit order refers to when an order is opened by a limit or stop limit, and/or closed by a take profit, stop loss, or a liquidation. Please note that a trade can be opened manually and closed via a take profit for example, opened via a stop limit and closed manually, and so forth. The open and close fees remain the same for the trader, but the revenue allocation differs depending on how a trade was opened and closed. The Buyback & Distribute category is dynamic, and the current distribution can be found here.
Lifecycle of a Trade
Opening Fee
Let's say we use 250 DAI at 10x leverage to long ETH/USD. The fee is applied to leveraged amount: 2,500 DAI.
2,500 * (0.06/100) = 1.5 DAI fee
248.5 DAI is the total collateral value of your newly opened trade, and therefore its total position size is 2,485 DAI.
Fixed Spread
When opening a trade the Chainlink oracle returns a price for the asset, for instance 3,003.19. The spread is then taken into account (0.04%), so the open price would be 3004.39 before consideration of the dynamic spread (see section below).
That is: 3,003.19 + (3,003.19 * 0.04 / 100) = 3004.39
Please make note that the spread is different for each pair — smaller pairs with lower liquidity have a higher spread. It is displayed on the front end next to the Price in the Trade Parameters box, and can be confirmed in the Pairs Storage contract by searching for the relevant pair index.
Dynamic Spread
Dynamic Spread, formerly known as 'Price Impact' is added on top of the fixed spread (if the pair has one). It depends on the open interest of the pair, the position size of the trade being opened, and on the direction of the trade (long / short).
Dynamic Spread (%) = (Open interest {long/short} + New trade position size / 2) / 1% depth {above/below}.
Cryptocurrencies
Dynamic spreads using the 1% depth in each direction (long: 1% depth above / short: 1% depth below) from Binance.
Forex
Fixed spreads.
Commodities
Fixed spreads.
ETH/USD Example
So using our above price example with a position size of 2,480 after fees, if the "1% depth above price" parameter for ETH/USD is 8m and there is 100,000 DAI of open long interest:
(100,000 + 2,480 / 2) / 8,000,000 = 0.0126% dynamic spread
This percentage is then applied to the opening price including the Fixed Spread. In the case of crypto, as there is no Fixed Spread, this is just 3,003.19:
Final opening price = 3003.19 + (3003.19 * 0.0126 / 100) = 3003.57
So in this case if the median spot price was 3003.19, the opening price would be 3003.57.
Borrowing Fees
Borrowing fees are applied to trades while they are open.
Borrowing Fee
Borrowing fees treat open trades of the dominant side as vault borrowers. The fee is determined by a pair's (or the group the pair is part of) net OI relative to the overall vault TVL, meaning pairs (or groups) with more lopsided OI will charge more than pairs with balanced OI.
The fee is charged per block on a trade's total position size.
Please refer to the Medium article for further details.
Liquidation Prices
Trades liquidation prices can get closer over time if you pay borrowing fees.
Liquidation Price Distance = Open Price * (Collateral * Liquidation Threshold - Closing Fee - Borrowing Fees) / Collateral / Leverage.
Liquidation price = If Long: Open Price - Liquidation Price Distance Else (Short): Open Price + Liquidation Price Distance.
For example, let's say that you have opened a long on BTC/USD at 20,000 USD using 100x leverage and 50 DAI collateral, the liquidation threshold would be 67%, the closing fee would be 16 DAI (20,000*(0.08/100) and that you have paid 1 DAI in borrowing fees:
Liquidation Price = 20,000 - 20,000 * (50 * 0.67 - 16 - 1) / 50 / 100 = 19,888 USD.
Liquidation Thresholds
The liquidation threshold depends on asset class and leverage used. The values can be found in the following table, for Cryptocurrencies, Forex (major), Forex (minor), Forex (exotic), Commodities (gold), Commodities (other)
Cryptocurrencies
Closing Fee
Let's say ETH/USD went up 1% from the open price, and we close the trade at 3,033.6. The pending profit (PnL) will be 1% of 2480 (our leveraged collateral), which is 24.85 DAI.
Now, we close the trade, and therefore pay the closing fee. Please note that the fees are always applied on the initial position size (without PnL).
2485 * (0.06/100) = 1.988 DAI closing fee
--> 24.85 - 1.988 = 22.862 DAI PnL
Now let's also say that the trade paid 0.5 DAI of borrowing fees:
22.862 - 0.5 = 22.362 DAI final PnL
Therefore, you would receive 270.862 DAI (248.5 DAI collateral + 22.362 PnL) to your wallet after closing your trade.
Last updated