[PLUS] Bitcoin Spot vs BTC Quarterly Futures Basis Spread Analysis in Python

What is the Basis
The basis refers to the difference between the futures price of a commodity and its spot price. In other words, it's the difference between the price of a futures contract and the market price of the underlying asset that the contract represents. This difference arises due to a variety of factors, such as storage costs, interest rates, transportation costs, and supply and demand factors in the market. The basis can be positive or negative, and it reflects the market's expectation of the future spot price of the underlying asset. If the basis is positive, it means that the futures price is higher than the expected spot price, and if the basis is negative, it means that the futures price is lower than the expected spot price. The basis is a key concept in futures trading and is closely monitored by traders to identify trading opportunities and manage risk.

Basis Convergence
As a futures contract approaches its expiry date, the basis risk between the futures price and the spot price of the underlying asset tends to converge towards zero. This is because at expiry, the futures price and the spot price should theoretically be the same, assuming no storage or other costs. As a result, traders who had entered into futures contracts with a long or short position may need to take offsetting positions in the spot market to reduce their exposure to basis risk. This convergence towards the spot price at expiry is known as "convergence of futures to spot" and is an important consideration for futures traders looking to hedge their positions.

The Analysis
It may be slightly hard to tell from the first graph where BTC Spot price is plotted directly against the most recent, 3/31/2023 Quarterly Futures prices (as chart not quite zoomed enough); but the futures price spent the majority of its time trading in positive basis space (meaning that the futures price was higher than spot). In mid January, the spread between futures and spot got as wide as $250+! It is interesting to note that periods of widening in basis seem to be followed by pullbacks in price for this comparison.

BTC Spot Price vs Futures Price

Basis Spread: Futures Price - Spot Price

The Code
We have included all of the code used to generate the basis comparison analysis for BTC basis and resulting spread and commented every line. Feel free to modify to fit to your purpose. The script loads the two data sets independently into Pandas DataFrames, then merges the two data sets together respective to each Date. The basis is then added as an additional column, and graphs are produced. We use Binance data available on CryptoDataDownload.

This is a premium post. Create Plus+ Account to view the live, working codebase for this article.

Notice: Information contained herein is not and should not be construed as an offer, solicitation, or recommendation to buy or sell securities. The information has been obtained from sources we believe to be reliable; however no guarantee is made or implied with respect to its accuracy, timeliness, or completeness. Author does not own the any crypto currency discussed. The information and content are subject to change without notice. CryptoDataDownload and its affiliates do not provide investment, tax, legal or accounting advice.

This material has been prepared for informational purposes only and is the opinion of the author, and is not intended to provide, and should not be relied on for, investment, tax, legal, accounting advice. You should consult your own investment, tax, legal and accounting advisors before engaging in any transaction. All content published by CryptoDataDownload is not an endorsement whatsoever. CryptoDataDownload was not compensated to submit this article. Please also visit our Privacy policy; disclaimer; and terms and conditions page for further information.

Latest Posts
Follow Us
Notify me of new content