Swolecharts
Live crypto data · 10 exchanges
Log inSign up

Futures term structure, calendar spreads and annualised basis

Read dated futures premiums across expiries, and understand what annualising them can hide.

Last updated: 17 October 2026

The futures curve

A dated future has a specified expiry. For the same underlying asset, each expiry has its own price and premium over spot. Put the expiries side by side and you have a futures term structure. Contango describes futures above spot; backwardation describes futures below spot. Later contracts often carry a larger premium in contango, but a curve can be mixed, and its slope depends on whether you plot prices, premiums or annualised rates.

BTC annualised basis by days to expiry

Live exchange observations as of 04:15 UTC; separate lines for each venue and margin type.

  • Binance USDⓈ-margined
  • Binance Coin-margined
  • Bybit USDⓈ-margined
  • Bybit Coin-margined
  • Perp funding APR (0 days)
0% 5% 10% 15% perp 60d 120d 180d 240d 300d 360d Binance BTCUSDT_261225: +5.48% annualized, 69 days Binance BTCUSDT_270326: +5.28% annualized, 160 days Binance BTCUSD_261225: +5.33% annualized, 69 days Binance BTCUSD_270326: +5.25% annualized, 160 days Bybit BTCUSDT-23OCT26: +5.50% annualized, 6.2 days Bybit BTCUSDT-30OCT26: +6.47% annualized, 13 days Bybit BTCUSDT-06NOV26: +8.11% annualized, 20 days Bybit BTCUSDT-27NOV26: +5.49% annualized, 41 days Bybit BTCUSDT-25DEC26: +5.51% annualized, 69 days Bybit BTCUSDT-26MAR27: +5.37% annualized, 160 days Bybit BTCUSDT-25JUN27: +5.38% annualized, 251 days Bybit BTCUSDT-24SEP27: +5.33% annualized, 342 days Bybit BTCUSDZ26: +5.49% annualized, 69 days Bybit BTCUSDH27: +5.28% annualized, 160 days Binance perp BTCUSDT: funding +10.95% APR Bybit perp BTCUSDT: funding +6.09% APR 0% 5% 10% 15% perp 60d 120d 180d 240d 300d 360d Binance BTCUSDT_261225: +5.48% annualized, 69 days Binance BTCUSDT_270326: +5.28% annualized, 160 days Binance BTCUSD_261225: +5.33% annualized, 69 days Binance BTCUSD_270326: +5.25% annualized, 160 days Bybit BTCUSDT-23OCT26: +5.50% annualized, 6.2 days Bybit BTCUSDT-30OCT26: +6.47% annualized, 13 days Bybit BTCUSDT-06NOV26: +8.11% annualized, 20 days Bybit BTCUSDT-27NOV26: +5.49% annualized, 41 days Bybit BTCUSDT-25DEC26: +5.51% annualized, 69 days Bybit BTCUSDT-26MAR27: +5.37% annualized, 160 days Bybit BTCUSDT-25JUN27: +5.38% annualized, 251 days Bybit BTCUSDT-24SEP27: +5.33% annualized, 342 days Bybit BTCUSDZ26: +5.49% annualized, 69 days Bybit BTCUSDH27: +5.28% annualized, 160 days Binance perp BTCUSDT: funding +10.95% APR Bybit perp BTCUSDT: funding +6.09% APR

The live futures curve above, when available, plots annualised basis rather than the futures price itself. Its spot reference is each venue's own index, not a single spot trade. Perpetual funding APR diamonds at zero days are a comparison, not expiring contracts or a guaranteed continuation of that rate. Missing exchange data can leave the chart unavailable; the explanation still applies.

Annualised basis: the formula and a worked example

Annualised basis = (futures / spot − 1) × 365 / days to expiry. On this site, futures means mark price and spot means the exchange's index price: basis = mark / index − 1. Days are fractional 24-hour days until the reported expiry timestamp. This is a simple, not compounded, 365-day convention. Multiply the decimal result by 100 to display a percentage.

Synthetic example — not live data: spot/index is $100,000 and a future with 90 days left has a $102,000 mark. The basis is 102,000 / 100,000 − 1 = 2%. Annualising gives 2% × 365 / 90 ≈ 8.1%. The premium over those 90 days is still 2%, before costs; 8.1% is a comparison rate, not a promised one-year return. With the same prices but 30 days left, it would be about 24.3% annualised.

The site's curve classification calls a rate flat when its absolute annualised basis is under 0.5%. That is a display convention, not proof that a trade has no risk or cost.

Why the curve slopes

Cost of carry includes financing the spot asset and holding it until settlement. Physical storage is approximately zero for crypto, but custody, collateral and borrowing costs remain. Demand for leveraged exposure can lift futures relative to spot; hedging demand can push them down. Market access and balance-sheet constraints can let premiums persist. These are possible explanations, not a diagnosis from the slope alone.

At expiry, settlement ties the dated contract to the venue's specified settlement reference. That encourages convergence as expiry approaches; it does not fix today's spot price as the eventual settlement price. Basis is not a forecast of where Bitcoin or another coin will trade.

Calendar spread and roll

A calendar spread compares two expiries on the same underlying. State the sign convention: here the quoted spread is far future minus near future. With synthetic near and far prices of $102,000 and $103,000, the spread is $1,000. Buying the far contract and selling the near contract gains if that price difference widens, before costs and subject to matched exposure. The spread is a price difference, not the difference between their annualised basis percentages.

A roll closes the expiring position and opens a later contract. It changes the maturity and locks in the prices available for those two trades, including fees and slippage. A front-quarter series can jump when its selected contract changes even if neither contract's own price jumps. The site's history rolls its front series 2 days before expiry.

With under 2 days remaining, small price deviations become large annualised rates. Those contracts are flagged and excluded from the live curves and rankings. At or past expiry no annualised basis is calculated. Check the individual expiry rather than interpreting an enormous near-expiry rate as an opportunity.

A quarterly future expires; a perpetual does not. Perpetuals exchange funding payments that can change at each interval, while a dated future embeds a premium to settlement. Read perpetual basis and funding arbitrage before comparing the two. A funding APR and a dated basis rate have different cash flows and risks.

Coin-margined vs USD-margined: units and limits

Binance COIN-M contracts have USD-denominated face values even though collateral and settlement are in the coin. Their open interest in USD is contract count × USD contract size, not contract count × coin price. USD-M quantities are in the base asset, so this site's USD open-interest conversion uses quantity × mark price. Bybit inverse and linear products likewise require their own field units; do not compare raw contract counts across them.

Inverse payoffs, coin collateral and changing collateral value complicate an exposure match. A displayed basis is not a net cash-and-carry return. Fees, financing, liquidation, execution, counterparty and settlement risks remain. The tool covers eligible Binance and Bybit dated futures, not every venue. Expiry timestamps and settlement rules are product-specific; check the exchange's current instrument information and delivery rules. Index and mark prices can differ from executable prices, and failed sources can leave coverage incomplete.

Primary API references checked on 17 October 2026: Binance: USD-M market API reference · Binance: COIN-M market API reference · Bybit: instruments and delivery times · Bybit: delivery prices. Not financial advice.

Futures term structure FAQ

Is basis a forecast of the expiry price?

No: basis is not a forecast. Financing, leverage demand, hedging and market frictions affect the premium. The expiry price can be above or below today's spot price.

Is annualised basis a guaranteed yearly return?

No. It scales a current premium using 365 days and the remaining time to expiry, without compounding. Fees, financing, slippage, margin and settlement risks affect realised results.

Why is a near-expiry contract excluded from the curve?

With under 2 days remaining, dividing a small premium by a tiny time interval amplifies noise. This site flags those contracts and excludes them from curves and rankings.