Trading

Currently, we primarily offer perpetual futures trading to users, and fees are calculated mainly according to the following categories.

Trading Fee (Opening / Closing Fee)

We offer users low trading fees. We understand that trading fees are an important consideration factor for users, so we strive to lower trading fees to attract more users. We optimize costs to ensure that fees are competitive in the market.

  1. Trading Fee = Size * Price * Feerate

  2. The specific Feerate for each trading pair can be found in Perpetual Specifications.

  3. Collection Method: When opening, it will be charged from the Balance.When closing, it will be charged from the position. These fees will be deducted first from the Balance at the time of opening, and if the Balance is insufficient, the remainder will be recorded in your position as Unrealized Opening Fees. This fee order is designed to keep users' positions healthier, allowing them to access more margin without the risk of margin decay due to fees, thus achieving a balance between risk and return. Price impact is similar and will not be repeated in the following sections.

  4. Fee Collector: Vault.

  5. Collected on both opening and closing.

  6. Case Study:

Pairs

ETH

FeeRate

0.08%

Price

2000 USD/ETH

Size

5 ETH

Position

10000 USD

Trading Fee

8 USD

Price Impact Fee

Price impact refers to the cost incurred due to the high volatility and fragmented liquidity in cryptocurrency markets. Different exchanges often experience discontinuities and mismatches. The design of price impact aims to generate reasonable trading fees using an impact function and market depth, applied to orders affected by these discontinuities and mismatches. This helps enhance price discovery efficiency and reduce uncertainties for users when trading.

Users need to consider market depth and order size when trading to avoid impulsive actions.

  1. Price Impact Fee= Position size * Price * Price Impact Rate

  2. Fee rate: Determined based on position size

  • Long positions: Price Impact Rate = (Size * Price) / (1000 * 0.1% depth Sell)

  • Short positions: Price Impact Rate = (Size * Price) / (1000 * 0.1% depth Buy)

  • 0.1% depth Sell/Buy = Total depth of price movement (0.1%) in the order book of centralized exchanges.

  1. Fee collection method: When opening, it will be charged from the Balance.When closing, it will be charged from the position. These fees will be deducted first from the Balance at the time of opening, and if the Balance is insufficient, the remainder will be recorded in your position as Unrealized Opening Fees.

  2. Fee Collector: Vault.

  3. Collected on both opening and closing.

  4. Fees will only not be charged during liquidation or Maxprofit.

Borrowing Fee

As an intermediary, the exchange must maintain a fair and neutral position between buyers and sellers. By charging borrowing fees, the exchange can balance its interests with those of its users. Additionally, charging borrowing fees helps avoid the exchange's overreliance on transaction fees, promoting a more sustainable development path. Collecting borrowing fees also attracts more borrowers to participate in lending transactions, thereby providing more liquidity and depth to the exchange's trading market. This is crucial for enhancing the exchange's competitiveness and attracting more traders and liquidity providers.

The borrowing fee is calculated once per hour and is accumulated in the position until the position is closed.

  1. Borrowing fee = Size * Price * Borrowing rate * Time (h) * Token ratio

    1. Borrowingrate=exp(TotalOpenInterest/10TotalLiquidityPool)βˆ—minrate/hBorrowing rate=exp(\frac{Total Open Interest / 10}{Total LiquidityPool})*minrate/h

      • Minrate = 0.002%

      • When users borrow with a leverage of up to 11x: Annualized rate of 52.63%.

      • When users borrow without available lending: Annualized rate of 17.52%.

      • Not all pairs have a borrowing fee, you can refer to Perpetual Specifications to see the BorringFeeMinrate for each pair.

    2. Token ratio: The default borrowing rate is based on the BTC/USD borrowing rate. Borrowing rates for other tokens will vary.

      • BTC/USD token ratio = 1

      • With Chainlink, otherΒ tokenΒ ratios=AnnualizedΒ borrowingrateΒ ofΒ thatΒ tokenΒ onΒ CEXAnnualizedΒ borrowingΒ rateΒ ofΒ BTCΒ onΒ CEXother\ token\ ratios=\frac{ Annualized\ borrowing rate\ of\ that\ token\ on\ CEX}{Annualized\ borrowing\ rate\ of\ BTC\ on\ CEX}

        • Token ratios will not exceed 2.

        • For pairs without available data on CEXs, the token ratio will be set to 2.

      • With UNI, other token ratios are specific.

  2. Collection Method: Deducted from position collateral and PNL.

  3. Fee Collector: Liquidity Providers (LP).

  4. Fees will be calculated and collected at the beginning of each hour.

    • If a user opens a position at 0:01 and closes it at 0:59, they will not be charged borrowing fees.

    • If a user opens a position at 0:59 and closes it at 1:01, they will be charged 1 hour of borrowing fees.

  5. Borrowing fees will be triggered by the following status: Position closing, Maxprofit forced closing, and liquidation.

Funding Fee

When traders engage in contract trading on the exchange, they are required to pay a funding fee. This mechanism helps reduce certain market manipulation behaviors and encourages traders to continuously learn and improve their trading skills to achieve better trading outcomes.

SubstanceX has introduced an innovative funding fee design to balance the interests of traders and liquidity providers (LPs). The new version of the funding fee will still be paid by larger position holders, but the rate will be significantly reduced, especially in some low position trading pairs. At the same time, LPs, as risk takers of naked positions, will be compensated for their risk.

Funding fees are calculated every hour and are accumulated within the position until the position is closed. Let's take the example of a long position holder being the larger position holder:

  1. Fee calculation:

    1. Funding Fee Rates Paid by Long and Short Position Holders (Daily):

      • LongPayFeeRate = BaseRate + LinearRate * LongOI / (Total Liquidity * maxLiquidityLockRatio)

      • ShortPayFeeRate = BaseRate + LinearRate * ShortOI / (Total Liquidity * maxLiquidityLockRatio)

      • The maxLiquidityLockRatio may be different for each trading pair. Please refer to Perpetual Specifications.

    2. LP's risk compensation received from the funding fee paid by long positions (Daily): LP_fee = LongOI * LongPayfeerate * (LongOI - ShortOI) / LongOI

    3. Actual funding fee paid by long positions / actual funding fee received by short positions (Daily): Long_fee = ShortOI * ShortPayFeeRate - LongOI * LongPayFeeRate Short _fee = LongPayFeeRate * ShortOI - ShortPayFeeRate * ShortOI

    4. Actual funding fee rate for Long / Short (Daily):

      Funding Rate L = Long_fee / LongOI

      Funding Rate S = Short_fee / ShortOI

  2. Collection Method: Deducted from position collateral and PNL.

  3. Fee Collector: LP, Counterparty.

  4. Fees are collected on an hourly basis.

    • If a user opens a position at 0:01 and closes it at 0:59, they will not be charged a funding fee.

    • If a user opens a position at 0:59 and closes it at 1:01, they will be charged an one-hour funding fee.

    • Specific fee collection times can be found on the perpetual trading page.

  5. The following actions trigger the collection of funding fees: Position closing, Maxprofit forced closing, and liquidation.

  6. Funding Fee V2 & Funding Fee V1

Pairs

BTC

LongOI

20000

ShortOI

15000

Total Liquidity

1,000,000

maxLiquidityLockRatio

1

BasicRate (V1) / h

0.00025

BaseRate (V2) / h

0.0008

LinearRate (V2) / h

0.08

Funding Fee V2

Funding Fee V1

LongPayFeeRate / d

0.0008+0.0820000/(10000001)=0.0024

ShortPayFeeRate / d

0.0008+0.0815000/(10000001)=0.002

Funding Rate L / h

-0.75/20000=-0.00375%

-0.025%*(20000-15000)/20000=-0.00625%

Funding Rate S / h

0.25/15000=0.00167%

-0.025%*(15000-20000)/15000=0.00833%

Funding Fee / h

(15000*0.002-20000*0.0024)/24=-0.75

-0.00625%*20000=-1.25

Funding Fee / h

(0.0024*15000-0.002*15000)/24=0.25

0.00833%*15000=1.25

LP Profit / h

0.0024*15000/24=0.5

0

Execution Fee

Execution fees are collected at the time of opening a position and are fixed.

  1. Fee = 0.0003 ETH.

  2. Collection Method: Deducted from the user's My Wallet. If the user has enabled 1CT, it will be deducted from there.

  3. Fee Collector: Vault.

  4. The fee is collected at the time of submitting the order, and users can retrieve it by canceling the order.