MartinShkreIi

BTC Contango Index

MartinShkreIi Updated   
Inspired by a Twitter post by Byzantine General:

This is a script that shows the contango between spot and futures prices of Bitcoin to identify overbought and oversold conditions. Contango and backwardation are terms used to define the structure of the forward curve. When a market is in contango, the forward price of a futures contract is higher than the spot price. Conversely, when a market is in backwardation, the forward price of the futures contract is lower than the spot price.

The aggregate prices on top exchanges are taken and then averaged to obtain a Spot Average and a Futures Average. The script then plots (Futures Average/Spot Average) - 1 to illustrate the percent difference (contango) between spot and futures prices of Bitcoin.

When in contango, Bitcoin may be overbought.
When in backwardation, Bitcoin may be oversold.
Release Notes:
Updated to show contango/backwardation in real time — just select your current timeframe in the dropdown menu.
Release Notes:
Updated to show contango/backwardation in real time — just select your current timeframe in the dropdown menu.
Release Notes:
Updated image
Release Notes:
Added an option to show VWAP of the contango line, which can help to filter noise.
Release Notes:
Added more markets to aggregate prices from.
Release Notes:
Added options in the menu to select which exchanges are included in the calculation. Because of the logic, some exchanges are paired - may find a way to unpair them later.
Release Notes:
Updated to include an option for repainting -- default value is true, meaning the script will repaint the current bar.

False = Not Repainting = Value for the current bar is not repainted, but all past values are offset by 1 bar.

True = Repainting = Value for the current bar is repainted, but all past values are correct and not offset by 1 bar.

In both cases, all of the historical values are correct, it is just a matter of whether you prefer the current bar to be realistically painted and the historical bars offset by 1, or the current bar to be repainted and the historical data to match their respective price bars.

As explained by TradingView,`f_security()` is for coders who want to offer their users a repainting/no-repainting version of the HTF data.

Also repaired the three paired exchanges so they make more sense:
Coinbase/Deribit --> Coinbase/Bitmex
Bitfinex/Bitmex --> Bitfinex/Bybit
Bitstamp/Bybit --> Bitstamp/Deribit

Removed the option to show VWAP.
Release Notes:
Removed the timeframe input to simplify the script.
Release Notes:
Fixed a bug in the final logic.

Open-source script

In true TradingView spirit, the author of this script has published it open-source, so traders can understand and verify it. Cheers to the author! You may use it for free, but reuse of this code in a publication is governed by House Rules. You can favorite it to use it on a chart.

Disclaimer

The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.

Want to use this script on a chart?