Funding Rates

Funding rates are a core mechanism in perpetual futures markets designed to keep the price of the perpetual contract aligned with its underlying spot index. Funding will be computed and settled natively inside NexusCore.

How Funding Works

Funding reflects the basis between the perpetual mid-price and the underlying index price:

  • Positive funding → longs pay shorts

  • Negative funding → shorts pay longs

Each market will display its current hourly funding rate at the top of the trading interface.

Implementation

The Nexus Exchange funding mechanism will charge roughly every hour, with the calculation period spanning the full hour and settlement occurring at the end of each hour.

As the network progresses through mainnet phases, the cadence will become increasingly consistent.

Basis Calculation

The system will calculate the basis (premium or discount) by comparing the market's mid-price (average of best bid and ask) with the underlying spot price provided by the oracle.

basis=mid_pricespot_pricespot_price\text{basis} = \frac{\text{mid\_price} - \text{spot\_price}}{\text{spot\_price}}

These samples will be taken at fixed intervals to capture representative market conditions.

Rate Determination

At the end of each hour, the collected basis measurements will be averaged to form the hourly rate.

For positive rates:

rate=min(clamp(average_basis)+baseline_rate, cap)\text{rate} = \min(\text{clamp}(\text{average\_basis}) + \text{baseline\_rate},\ \text{cap})

For negative rates:

rate=max(clamp(average_basis)+baseline_rate, cap)\text{rate} = \max(\text{clamp}(\text{average\_basis}) + \text{baseline\_rate},\ -\text{cap})

Settlement Logic

Funding payments are exchanged between longs and shorts based on the final computed rate:

  • Positive Funding (Market Trading Above Index)

    • Longs pay shorts proportional to position size, rate, and index price

  • Negative Funding (Market Trading Below Index)

    • Shorts pay longs using the same proportional model

All settlements will occur atomically within the Core block processing the end-of-interval boundary.

Last updated