In the chapter 10 of Future Trading module,I have briefly explained about calender spreads.. Calendar spreads have traditionally been dealt with using a price-based approach. This is how it works:
You can either sell the mid-month contracts and buy the current contract, or you can buy the current contract and sell it. This is an example for a Calendar Spread.
You can buy and sell futures of the same stock but contracts with different expiries, as shown above. This is where you can expect to make the difference in prices between the two contracts. Calendar spreads are very risky so the amount you can make from calendar spreads is small. This is something that you might like if you're a trader who is not afraid of risk.
This method of creating a calendar spread works well.
If you don't know what I'm talking about, I suggest that you read Chapter 10 of the Futures Trading module. This will give you a brief overview of the classic calendar spreads approach. It is a solid foundation upon which other types of calendar spreads can be built.
Let's get to work.
After you've read the chapters about pair trading, understanding the calendar spread logic should be easy. This simplified approach assumes the current price for futures is an indication of all market information. This information could include news about the stock, corporate actions, fair value and any other relevant information.
If the assumption above is true, then we could use the price as a trigger to find opportunities to setup a calendar spread trade. This simplifies the entire process. Calendar spreads are low-risk strategies so don't expect to make big bucks with this strategy. You can buy-sell the same asset simultaneously, so you eliminate the directional risk. Therefore, it makes sense to increase the leverage. Calendar spread trades are also very short term, and most trades close within one day. This is unlike pair trades. This will be explained by an example.
Start by downloading the daily closing stock prices for the near-month and next-month contracts.
Calculate the daily historical difference between the contracts to generate a time series. Calculate the standard deviation and the mean of the time series. The range of the difference can be calculated using the standard deviation and mean data. When the difference between two contracts moves to mean plus/minus 1 standard deviation, a trading signal is generated. The trade is closed when it falls to mean.
You get the idea.
To illustrate calendar spreads, I used the SBIN example.
Next, calculate the difference between these two contracts. It is recommended to subtract the near-month contract's price from the current month contract. Because the 'cost to carry' means that the futures price for Near month contracts is always higher than those of the current month. This is explained in detail in Chapter 10 of the futures module.
The difference is then calculated and time series data generated as shown below.
Now I'll calculate the standard deviation and mean for this time series. I will use the mean to estimate how much difference is acceptable on an 'every day' basis, while the standard deviation will provide me with an indication of variation in the difference. Here's the snapshot
Excel allows you to calculate the standard deviation and mean using the functions '=Average()' and ‘=stdev()’.
The mean of 1.227 means that the difference between the contracts should be at least 1.227. This means that there are no trade opportunities when the spread or difference between the contracts hovers around a similar value.
To calculate the spread, we now use the standard deviation and the mean values
Although I said that the spread could hover around 1.2227, I didn't calculate vicinity which is extremely important. It allows us to determine the range (vicinity), within the which the spread may fluctuate on daily basis.
Spreads that exceed the upper limit of 1.7205 indicate either an increase in the value of the next month contract or a decrease in the value the current month contract.
Arbitrage involves buying and selling assets in both the cheaper and more expensive markets. would therefore trade to to buy the next month's contract .
If the spread falls below 0.7335 (lower range value), it means that the current month is more expensive than the near month. The trade is to buy the next month contract and sell the current month.
Let's look at this logic and see if SBIN gave us any opportunities in the 200 trading days since then.
We can draw the following conclusion if we keep the above points in mind.
It may be difficult to decide which contract you should buy or which one to sell after a signal arrives. Instead, think of the near-month contract. Buy spread is to buy the next month, and sell spread is to sell the month.
I will now search the excel sheet for historical opportunities. First, I will look for the sell spread opportunities. To do this, I will simply apply a filter to remove all values above 1.7205. Here are the results.
You can see that the spread has increased beyond 1.7205 on six occasions. These occasions had a trigger to buy, which meant that the spread would return to the mean.
Here's how the spread actually behaved.
You will notice that signals are generated around the month's end, which is likely due to expiry dynamics. Every trade, even the small ones, has produced a profit and was closed the next day.
Let's see how the buy spread trades performed. Here are the results.
Nearly 28 trades are available here, and not all are successful. The losses are almost as small as the profits. Let me do the exact calculation as I did for the short trades.
This example should give you an idea of how to create a calendar spread. This is a much simpler and more intuitive approach than the traditional calendar spreads.
Here are my thoughts on Calendar spreads. This will double up as the key takeaways from this chapter.
Consider this: If you can backtest this across all futures contracts in equity and commodities, you will have at most a signal or two every day!
Please post your queries below..