Analyzing Markets through Options Open Interest

Share:
Indexes
  1. What can Option Prices tell us about the current and future state of the stock market?

Exploring Options Open Interest as a potential indicator of market sentiment and future risk.

Photo by Nimisha Mekala on Unsplash

Quick Introduction

In my previous blog post linked below, I covered the options prices and their potential application for predicting future market sentiment. If you have never heard or explored the options before, I encourage you to visit that post first to get the most out of this post, which will cover a topic of Option Open Interest. I will explore whether this piece of information can also tell more about the potential future state of the market — the general expectation of the investors.

Open Interest

Open Interest represents the number of options contracts currently held by traders or investors. These are the active positions in the options markets. It is worth nothing that Open Interest is not the same as Volume. Volume is the number of contracts traded during a particular day. Both measures provide a sense of the activity and liquidity in the market.

Open Interest applies only to the options that are open — not closed nor exercised.

Having this information let’s now explore how the Open Interest differs between the calls and puts on the SPY ETF, whether there is any significant imbalance.

I am going to look at the monthly options with an expiration in June and September (2022–06–17 & 2022–09–16). As of writing this post, 9 May 2022, SPY closed around $398.

I will look at the strike prices of puts and calls that are out of the money (OTM) 10% away from the current price. So roughly speaking, 10% of $398 is around $40, so I will examine $360 Put and $440 Call for each expiration date — both strikes being equidistant from the current price.

‘2022–06–17’ Expiration Date:

(this is done using yfinance package in Python)

option = SPY.option_chain('2022-06-17')march_calls = option.callsmarch_calls['Side'] = 'C'march_puts = option.putsmarch_puts['Side'] = 'P'march_put_calls = pd.concat([march_calls, march_puts])first_column = march_put_calls.pop('Side')march_put_calls.insert(0, 'Side', first_column)march_put_calls[(march_put_calls.strike == 360.0) & (march_put_calls.Side == 'P')]march_put_calls[(march_put_calls.strike == 440.0) & (march_put_calls.Side == 'C')]
$360 Put Option — 2022/06/17 Expiration Date
$440 Call Option — 2022/06/17 Expiration Date

As we can see, the ‘openInterest’ for $360 Put is 30,819 contracts while for $440 Call is 24,749. It appears that the sentiment is more on the bearish side which is reflective of a current slump in the market.

Now, let’s look at ‘2022–09–16’ Expiration Date:

option = SPY.option_chain('2022-09-16')march_calls = option.callsmarch_calls['Side'] = 'C'march_puts = option.putsmarch_puts['Side'] = 'P'march_put_calls = pd.concat([march_calls, march_puts])first_column = march_put_calls.pop('Side')march_put_calls.insert(0, 'Side', first_column)march_put_calls[(march_put_calls.strike == 360.0) & (march_put_calls.Side == 'P')]march_put_calls[(march_put_calls.strike == 440.0) & (march_put_calls.Side == 'C')]
$360 Put Option — 2022/09/16 Expiration Date
$440 Call Option — 2022/09/16 Expiration Date

Here we can see that the difference in Open Interest between the puts and the calls is less significant — the difference in the number of contracts is around 3,000. Also, the overall combined Open Interest is smaller from the June expiration.

Based on the last observation, does this mean that the investors are unsure of what to expect in a further future?

I leave it up to you to draw your own conclusion.

Disclaimer: The information contained in this blog is strictly for educational and entertainment purposes only. This is also not an investment advice. All views expressed in this blog are my own and do not represent the opinions of any entity whatsoever with which I have been, am now, or will be affiliated.