Why does a Nifty future trade at 24,138 when the index is at 24,000? Not magic — it is the cost of carry, and understanding it unlocks basis, term structure, and the spread/arbitrage trades later. This is pure arithmetic, which suits us nicely.
The cost-of-carry model
The fair price of a future is the spot price plus the net cost of carrying the position until expiry:
Fair future = Spot × (1 + (r + storage − convenience_yield) × T)- r — the risk-free interest rate. Holding the future instead of buying the asset now saves you the cost of funding the purchase, so interest pushes the future above spot.
- storage — (commodities only) the cost of storing and insuring the physical. Pushes the future up.
- convenience_yield — (commodities only) the benefit of actually holding the physical (being able to use it, avoid shortages). Pushes the future down.
- T — time to expiry, in years.
For a financial future there is no storage or convenience yield, so it is just interest:
def fair_future(spot, r, days, carry=0.0): # carry = storage - convenience (commodities)
return spot * (1 + (r + carry) * days/365)
fair_future(24000, 0.07, 30) # Nifty 1-month -> 24138 (basis +138)
fair_future(76000, 0.07, 60, carry=0.005) # Gold 2-month -> 76937 (basis +937)So the Nifty future at 24,138 is simply the index (24,000) plus one month of interest (~138 points). As expiry nears, T → 0, the carry shrinks, and the future converges to spot. This convergence is guaranteed (otherwise there is an arbitrage — Lesson 8).
Basis
Basis = future − spot. It is the market’s quoted version of the cost of carry, and it tells you a lot:
- A positive basis (future above spot) is normal for financial futures and well-supplied commodities — the carry is a cost.
- A negative basis (future below spot) signals something special — usually tight physical supply (a high convenience yield), common in commodities during shortages.
- Basis narrows to zero at expiry as the future converges to spot. Watching basis gives you a read on funding costs, supply tightness, and whether the future is rich or cheap to fair value.
Contango and backwardation (the term structure)
Look at futures of different expiries on the same underlying and you get a term structure — a curve of price vs time to expiry:
- Contango — further-out futures are more expensive than near ones (an upward-sloping curve). This is the normal state for most markets, reflecting positive carry (interest + storage). A long who rolls (Lesson 6) repeatedly pays the gap each time.
- Backwardation — further-out futures are cheaper than near ones (downward-sloping). This signals tight supply now (a high convenience yield — people pay up for the physical today). A long who rolls actually gets paid.
This shape is not noise — it is a tradeable signal about carrying costs and supply/demand, and it directly drives roll yield (Lesson 6) and calendar spreads (Lesson 8). Always know whether your contract is in contango or backwardation; it changes the economics of holding it.
Pitfalls
- Thinking the future “predicts” the spot. The future is mostly spot + carry, not a forecast. A future above spot usually just means positive carry, not that the market expects a rise.
- Ignoring the convenience yield in commodities. It can make a commodity future trade below spot (backwardation) even with positive storage costs. Don’t assume contango.
- Forgetting convergence. The basis must go to zero by expiry. A “cheap” far-month that is simply in backwardation is not free money — it reflects real supply conditions.
Recap
A future’s fair price is spot × (1 + (r + storage − convenience yield) × T) — the cost of carry. Basis = future − spot, and it converges to zero at expiry. The term structure is contango (future above spot, normal, a rolling long pays) or backwardation (future below spot, tight supply, a rolling long is paid). This is arithmetic and a genuine signal, not noise — and it sets up rollover and spreads.
Next: Lesson 4 — The Commodity Universe, the instruments you can actually trade and their personalities.