Module 2 / 2
Contango and backwardation: the futures curve
How to measure carry on the futures curve: the spread formula between series, annual carry rate, roll cost in R, and rules for when the curve says no.
- Author
- Zordon Intelligence Sp. z o.o.
- Updated
- 8 min read
- Structure sources
- 2
The thesis of this lesson: the contract price depends on the term
A contract for December can cost differently from a contract for March — and that is not a “market mistake.” The forward curve (futures curve) describes the dependence of price on time. The two extreme states have names worth knowing, because they determine the cost of holding a position. The difference between them is not an opinion: it can be measured in points, normalised to an annual rate, and expressed in R — i.e. in the unit you compare with the result of your strategy.
Contango and backwardation
| State | When | What it means |
|---|---|---|
| Contango | prices rise with term | market assumes storage cost / interest; normal for indices and many commodities |
| Backwardation | prices fall with term | “today” shortage — spot more expensive than far contracts; seen in commodities under stress |
Contango on an index: you pay a premium for holding the position longer (indirectly “interest” on the exposure). Backwardation on a commodity (e.g. oil in shortage): the market pays you for maintaining exposure. This is not “price forecasting” — it is carry structure. The state name is only a label; the carry size you take from your own quotes, and contract parameters from the specification at your broker. The curve shape depends on the basket character — indices and commodities have different drivers, compared in the lesson Indices and commodities.
Curve measurement protocol — six steps
You complete this protocol in a worksheet or notepad. The condition: the result must be reproducible — the same quotes and the same read moment must give the same number, even when someone else calculates them.
- Choose an instrument and the three nearest series with quotes — front, next, and further. Record their codes and expiry dates from the contract specification.
- Record prices at one moment. Ideally after session close, when quotes are not “jumping.” Three reads from three different hours describe three different markets, not one curve.
- Calculate the spread in points.
S = F_further − F_nearer. The sign is part of the result: S above zero is contango, S below zero is backwardation. - Set N — the number of calendar days between the expiries of both series. You take it from the instrument calendar (exchange or broker), not from the interval between month names.
- Normalise the spread to the carry rate. Dividing by N is necessary, because spread between series separated by a different number of days is not comparable between instruments:
S = F_further − F_nearer (points)
daily_carry = S / F_nearer (fraction, per one series)
annual_carry = daily_carry × (365 / N) (annual fraction; 365 = calendar year)
- Convert it to money and to R. Only this step tells you whether carry matters for your position size:
roll_cost_USD = |S| × point_value × number_of_contracts
roll_cost_R = roll_cost_USD / 1R
Point value and contract size are specific to the market and the broker — check with your broker, in the instrument specification. Calculate 1R from your own stop, in line with the lesson on r-multiple. Without these two data points, step 6 is only decoration.
Example calculation on illustrative numbers
F_nearer = 100 pts, F_further = 103 pts, N = 90 days. These are illustrative numbers, chosen to make the calculation readable — they are not quotes from any instrument.
S = 103 − 100 = 3 pts
daily_carry = 3 / 100 = 0.03
annual_carry = 0.03 × (365 / 90) = 0.122 → approx. 12% annualized
With a point value of $10 and one contract, the roll cost is $30 plus closing and opening commissions (point value is an illustrative number — check with your broker). If your 1R is $300, the roll eats 0.1R. This fraction — not the number of points alone — is the quantity you compare between instruments and between holding horizons.
Measurement worksheet — fill it in yourself
| Date | Instrument | F_nearer (pts) | F_further (pts) | S (pts) | N (days) | annual_carry (%) | roll cost in R | repeated measurement |
|---|---|---|---|---|---|---|---|---|
After ten rows, calculate the median of annual_carry and the median of roll cost in R — separately for each instrument. The median from your worksheet is the reference point: only relative to it do you see whether today’s spread is exceptional or the normal level for that market. The “repeated measurement” column has one job: spread that does not reproduce on the second read is not a cost, it is a quote artifact.
How to read the curve in practice
- Look at quotes for several months — front month, next, further.
- Check the difference (spread) between months — that is the cost / benefit of carry.
- Compare with your horizon — day trade can ignore the curve; swing and holding — cannot.
- Record in your journal which month you chose and why.
More on why instrument choice (futures vs CFD) depends on costs: round-trip cost and CFD or futures.
When the curve says “do not trade”
- The further series has no liquidity. If you do not have comparable volume and spread for both series, the calculated S describes a quote, not a market. You do not choose a month that cannot be read.
- Roll cost in R exceeds the carry budget from your plan. You set the budget yourself and record it. If you do not have one, that is not a signal — it is a missing rule that must be added first.
- Spread does not reproduce on the second measurement. A change of sign or order of magnitude between two reads means artifact. Wait for a read from a normal session, instead of trading on a number that will vanish shortly.
- You do not know the specification of the further series. Tick value, required deposit, and quote hours change from month to month — see margin on futures, and confirm parameters with your broker before comparing series.
Common mistakes
- “Contracts differ only in tick value” — the curve and carry are often more important than the tick itself.
- Treating the continuous chart as a spot price book — the continuous chart is a construct, not a spot price.
- Roll “on the fly” — you move the position without checking how much you pay for the month difference.
- Comparing spreads without normalisation — spread in points on two markets with different point value and different N tells you nothing until you calculate
annual_carryand cost in R. - One measurement as a rule — a single read is an anecdote; the reference point is only the median from a series recorded in a worksheet.
Measurable exercise
Fill in the worksheet for one instrument: three series, one read moment, calculated S, annual_carry, and roll cost in R. Repeat the measurement the next day and compare both reads. Answer in writing two questions: whether this instrument’s carry fits your plan’s budget, and whether the horizon you plan can be maintained at this cost. If the second answer is “no” — change the horizon or the instrument, not the definition of cost.
Backwardation on the forward curve is:
In backwardation, prices fall with term (e.g. commodity shortage). In contango they rise — and that is normal for indices.
Common questions
Is contango always a bad deal?
No — it is a cost you must know. For day traders it is often irrelevant; for holding positions it counts in every roll.
How do I check the forward curve?
At a futures broker: quotes by month, sometimes a separate ticker for spread between months. A set of prices for several terms is enough — but tick value and contract size, which you need for step 6, check with your broker, because they differ between markets.
Does the curve predict price?
No — it describes carry structure (cost / benefit of storage), not a forecast. That distinguishes it from 'direction analysis.'
Why measure annual_carry if I hold the position short-term?
Because carry enters the result whether you calculate it or not, and its size changes the meaning of the same entry signal. Without the number, you cannot separate strategy advantage from structure cost: an identical setup in contango and in backwardation gives a different net result. Measurement also gives you a clear answer to whether the holding horizon is profitable at all on the chosen month — and that is a decision you make before entry, not after a series of rolls. Confirm broker values (tick value, commissions) with your provider before treating them as fixed.
Advertisement
Key takeaways
- The forward curve is not a forecast, it is a number: spread between series, annual carry rate, and roll cost in R. This lesson gives you a formula and measurement protocol with which you will reproduce the same values from your own quotes, a worksheet for recording measurements, and rules excluding a month that cannot be measured. You pay contango; in backwardation you recover — but only when you calculate it before the decision, not after the loss.
Structure sources
The material is based on source documents. Variable values — fees, limits, regulatory figures — are worth checking at the source before making a decision.
- CME Group — contango & backwardation — cmegroup.com
- Investopedia — futures curve — investopedia.com
Disclaimer
- Educational material. Not investment advice or a recommendation. Trading involves the risk of losing capital.
- The materials are educational. They are not investment advice or a recommendation within the meaning of financial instruments trading regulations. Numbers in examples are illustrative unless a measurement date and source are given.
Who writes this and how we check it
The materials are written and verified by Redakcja Kurs Tradera — the rules are described on about the site: every number has a source, and we show gaps openly. Report a factual error via contact — corrections are described in the content.
Progress is stored only in this browser (localStorage) — there is no account and no copy on the server. Clearing site data will remove it. Manage your data