[Algo Trading] Arbitrage Trading for retail traders BSE/NSE. Part 3. The finer points

I wrote last two posts about arbitrage trading, the first one about spotting arbitrage trading opportunities using last traded price (which is wrong in strict sense, mentioned there). But it made sense to get the idea.  Here I’ll goo deeper into the topic to really find out is it really possible at all? The first post made us believe we have sufficient opportunity, and in second post we were convinced of very good returns.

Great, first of all lets discard last traded price in calculation for sake of accuracy. Lets define trade criteria more clearly,

arbitrage profit criteria

Profitability Criteria:

This is more accurate picture, to make profit from arbitrage trading (intraday) the following criteria (or vice versa) must hold,

arbitrage_criteria_1

Our job is to find out all t1,t2 (two time say 10:05 and 10:08 to take a trade in a day) pair satisfying the condition. When B means bid price, O means offer price. Now the point is, what the hell does that mean in plain English? This means say Reliance is bid price in BSE is 1004, and offer price in NSE is 1000. And at this point I bought in NSE and sold in BSE. When I cover this position neither BSE offer price and NSE bid price should be between 1000-1004 and the difference between these two i.e. BSE offer price and NSE bid price should be less that 4 (i.e. 1004-1000). Or vice versa.

Lets write some code,

With the above condition in place and the minimum margin to hit break-even, mentioned in last post. Lets write some code. The goal is simple,

  1. Take Bharti Airtel for example
  2. Let’s see how many times in a day (BSE bid price - NSE offer price) > 0.5 and (BSE offer price - NSE bid price)<0.05 We will plot the points where these criteria holds true.
  3. We’ll also check when (NSE bid price - BSE offer price) > 0.5 and (NSE offer price - BSE bid price)<0.05 Because this situation will also make profit (the vice versa scenario of above condition)

So I’ve written some code to do the same for 21st of June, 2017,


This will plot all the points satisfying above criteria. And here are the two plots,

arbitrage opportunity

(BSE bid price – NSE offer price) > 0.5 and (BSE offer price – NSE bid price) < 0.05

And here is the other situation,

(NSE bid price - BSE offer price) > 0.5 and (NSE offer price - BSE bid price)<0.05

(NSE bid price – BSE offer price) > 0.5 and (NSE offer price – BSE bid price)<0.05

The result is not very exciting, indeed. In the first there is only one arbitrage opportunity and that two is not practically tradable because of latency over internet. The second graph is worse, it has no opportunity. 🙁

So it seems when we consider finer points intraday arbitrage trading for retail traders is really not possible over internet. Even if some opportunities are there, those are not worthy of taking after considering cost of trade.

 

Leave a Reply

Your email address will not be published.