Pair trading is a low risk statistical arbitrage strategy, however it is not very popular in India as many think it involves complex logic to identify the pairs and trading them effectively. Also many feel that it is more suitable for institutional players due the resources at their disposal and avoid exploring it. Based on my analysis and limited live trading experience I see there is lot of potential and one can easily design systematic low risk strategies with some simple opensource libraries & basic coding experience.

I have created this thread so that people interested in this type of statistical arbitrage strategies can share their knowledge and experience and help each other develop good ideas and trading strategies. I have recently started trading this strategy and will be happy to share my experience and provide guidance by answering your queries and clarifying concepts which I am familiar (I am still learning). However please dont ask me to share my code here as I use complex algorithms and machine learning processes which are tightly integrated with Pair trading logic and other strategies and it would be difficult for me to separate and explain. Also I would prefer people to explore their own ideas and not just clone me, but I will share the logic wherever possible.

People who are new to pair trading, I would suggest them to go through this wonderful article written by Karthik Rangappa on zerodha varsity as I will not be able to beat that simplicity even if I try to explain it here. URL: https://zerodha.com/varsity/module/trading-systems/

Once you are familiar with the concepts there, you should be able to trade basic strategies, however if you want to explore complex concepts you may later refer to these following books:

Pairs Trading: Quantitative Methods and Analysis by Ganapathy Vidyamurthy

Algorithmic Trading: Winning Strategies and their rationale by Ernest P. Chan

In the varsity tutorial Karthik has used excel to analyze the pairs, those who are strong in excel can work & extend on it, however I am not comfortable in excel & prefer to use python for coding the logic and use Jupyter notebook as the IDE (Browser based python programming interface) which is open source and easy to learn, hence recommend other to do the same as it will give more flexibility to users.

I have created this thread so that people interested in this type of statistical arbitrage strategies can share their knowledge and experience and help each other develop good ideas and trading strategies. I have recently started trading this strategy and will be happy to share my experience and provide guidance by answering your queries and clarifying concepts which I am familiar (I am still learning). However please dont ask me to share my code here as I use complex algorithms and machine learning processes which are tightly integrated with Pair trading logic and other strategies and it would be difficult for me to separate and explain. Also I would prefer people to explore their own ideas and not just clone me, but I will share the logic wherever possible.

People who are new to pair trading, I would suggest them to go through this wonderful article written by Karthik Rangappa on zerodha varsity as I will not be able to beat that simplicity even if I try to explain it here. URL: https://zerodha.com/varsity/module/trading-systems/

Once you are familiar with the concepts there, you should be able to trade basic strategies, however if you want to explore complex concepts you may later refer to these following books:

Pairs Trading: Quantitative Methods and Analysis by Ganapathy Vidyamurthy

Algorithmic Trading: Winning Strategies and their rationale by Ernest P. Chan

In the varsity tutorial Karthik has used excel to analyze the pairs, those who are strong in excel can work & extend on it, however I am not comfortable in excel & prefer to use python for coding the logic and use Jupyter notebook as the IDE (Browser based python programming interface) which is open source and easy to learn, hence recommend other to do the same as it will give more flexibility to users.

Last edited: