Many futures models say the future price is based on the current price plus the cost of carry. IE, assuming zero-interest-rates, then something like:

Future_price_at_maturity = current_price × (1 + cost_of_carry)^(time_to_maturity)

But what about futures on commodities where its cheaper to get new supply in the future rather than pay the carry cost today? IE, I could buy oil today and pay to store it in a tanker for 5 years and then the above equation would apply; but it would be stupid to pay that storage cost for 5 years because we could instead just wait 5 years and then buy new oil fresh-out-of-the-ground and avoid all that storage cost. In that case, the correct futures price must be less than the equation above suggests.

Isn't the above equation a ceiling on the price rather than an equality? What's the best way to generalize that equation? I'm assuming the price should be like "= min(cur_price*carry, expected_future_spot_price)" but that seems to get recursive very quickly. What's the correct way to adjust that equation?

  • 1
    $\begingroup$ Unless you are an oil producer you cannot extract and refine oil. Even if you could you would be subject to future processing costs. If you instead purchase it in 5y time to sell it simultaneously then you are indifferent to the price and equivalently doing nothing. If you need oil in 5y buying today and storing guarantees your price, otherwise you run the very large risk of prices moving $\endgroup$ – Attack68 Dec 17 '19 at 16:34
  • $\begingroup$ OK, sure, I understand that a future guarantees a known price and eliminates risk of prices moving; but the situation above is when that guaranteed price is a bad price that you can (no-guarantees-but-highly-likely) beat by not buying a future. For instance, if the cost to store oil for a year was 10000000x higher than the cost of the oil itself and you have no reason to think the price of oil will change significantly over the next five years. In that case, it would be stupid to store the oil, so how do you modify the above equation? $\endgroup$ – Student Dec 17 '19 at 16:46
  • $\begingroup$ Consider a different perspective. Suppose you already have 1mm barrels of oil you want to sell. You can today for 60usd pb or you can store and sell at a future point. At what price would you sell in 3m time? $\endgroup$ – Attack68 Dec 17 '19 at 16:52
  • $\begingroup$ You are right that in general: futures_price <= current_spot * (1+c)^T A "less than" could occur if there is an expected abundance of the product in the future (new discoveries expected to come onstream, etc.). Sadly that is not the case most of the time for oil, gold, etc. But theoretically yes. $\endgroup$ – Alex C Dec 17 '19 at 17:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.