Perpetual Futures


Perpetual futures, or perps for short, are futures with no expiry (delivery) date. They remain open indefinitely until the position is closed. Funding payments occur between two counterparties at regular intervals to incentivize the perp price to converge to the underlying index price.

Variational is the world's first protocol to support perpetual futures on any underlying index feed. This includes:

  1. Assets traded on centralized exchanges; for example, an underlying index of spot BTC/USDC across a number of exchanges

  2. Assets traded on decentralized exchanges; for example, an underlying index of the PANDORA/USDC Uniswap v3 pool current price

  3. Coming soon: indices which aren't even physical assets; for example, points and pre-launch tokens, prediction markets, generic time series such as inflation rates, etc.

Index and Mark Prices

Variational maintains robust indices which are calculated from average of the mid prices all exchanges that support the underlying asset. Exchanges with stale data are removed from the index. The prices are always converted to units of USDC. For example, ETH/USDT prices from exchanges are then multiplied by the USDC/USDT index to return a final ETH/USDC index.

The mark price is derived from the index price:

mark price = index price * (1 + funding rate)

The mark price is used for margining, liquidation, and unrealized PnL calculations.

Funding Rates

In contrast to many exchanges, funding rates on Variational are not based on the price difference between the perp price and the index price. Funding rates are instead based on the open interest imbalance, or the difference between long open interest and short open interest. Because Variational supports many illiquid assets which are traded infrequently, the open interest imbalance is a more robust metric that encourages a balance of longs and shorts on the platform.

The basic formula is as follows:

majority_funding_fee = (funding_factor_per_second * open_interest_imbalance)^funding_exponent_factor / total_open_interest

open_interest_imbalance is defined as abs(long open interest notional - short open interest notional)

The side of the trade is defined as the taker side; this is the side submitting the RFQ. The maker side is the party quoting (responding to the RFQ).

majority_funding_fee means that the side (long/short) with the majority of the open interest notional is the one paying funding. The minority side receives funding.

Three Regime Model

The funding_factor_per_second is different depending on whether there is a small open interest (OI) imbalance, medium OI imbalance, or large OI imbalance. We give an example graph of the funding rate below, but please use the metadata API endpoint to query the exact parameters per market.

Anti-manipulation Measures

  • Smoothing: the funding rate is snapshotted every minute. The funding payment is determined based on a rolling average of the minutely snapshots over the last 6 hours.

  • Minimum OI threshold: below a minimum open interest threshold, the funding rate is 0.

  • Solvency requirement: only pools wherein the user has a positive pool balance are included in the open interest calculations.

Contract Specifications

Instrument type

Linear perpetual

Contract size

1 unit of underlying spot asset (e.g., 1 ETH)

Index price

Variational oracle index of underlying data feed, in USDC terms (e.g., ETH/USDC)

Settlement asset


Mark price

index price * (1 + funding rate)


Paid hourly. Positive number indicates longs pay shorts; negative number indicates shorts pay longs.

Note: all margin requirements and liquidation rules are set on a per pool basis by the users.

Last updated