High Frequency Trading and Pricing Regulations

It all began with a tweet, moments ago. Degree Raju, a train travel attempter (I don’t know how often he manages to actually travel since he never seems to get tickets) tweeted this:

It is an apt analogy. The reason high frequency trading exists is that there is regulation on what the minimum bid-ask spread needs to be – it needs be at least 1 cent in the US, and at least 5 paise in India (if I’m not wrong). If the best bid (quote to purchase a stock) is at 49.95 and the best ask (quote to sell a stock) is at 50.00, there is nothing you can do to get ahead of the guy who has bid 49.95 – for regulations mean that you cannot bid 49.96!

The consequence of this is that if you want to offer the best bid, at a price close to 49.95, there is no option but for you to be the first person to have bid that amount! And so there is a race among all possible bidders, and in order to win the race you need to be fast, and so you co-locate your servers with the exchange, and so you (and your co-runners) indulge in what is called High Frequency Trading (this is a  rather simplified explanation, and it works).

Tatkal ticket booking has a similar pricing anomaly – the cancellation charges on Indian railways are fixed, and really low. Moreover, fares are static, and are not set according to demand and supply. More moreover, the Indian Railways suffers from chronic under-capacity. The result of all this together is that if you need to get a railway ticket, you should be the first person to put a bid (at a fixed price, of course) for that ticket, and so there is a race among all ticket-buyers!

In case the pricing of railway tickets was more flexible – either dynamic pricing according to demand, or higher cancellation charges (as I’ve noted here), this mad race (pun intended) to buy tatkal tickets would not be there. The way things are going I wouldn’t be surprised if agents want to get servers co-located with IRCTC servers so that they can procure tickets the fastest.

With HFT in stock prices, if only there were no limit on the minimum tick size – let’s say that a bid or an ask could just be any real number within a reasonable (say 6-digits?) precision, then in order to have the best bid, you need not be the fastest – you can compete on price!

Thus, HFT in stock markets and tatkal ticket booking are two good examples of situations where onerous regulations have led to a race to be the fastest.

And all this ties in with this old theory I have which says that the underlying reason for most financial innovation is stupid regulations. Swaps were invented because the World Bank could not borrow with floating (or was it fixed?) interest rates. CDOs became popular because AAA rated instruments required lower capital provisioning than home loans. Such examples are plentiful..

Rail track utilization, per Railway Minister

Now I guess you know how I work. I come across a data set and then torture it to extract as much information as I can before I let go of it. So continuing with the railway data put out by the EPW, in this post we will look at the track utilization. The metric is simple – how many passenger trains go over a piece of railway track each day?

We have numbers for the total route length and the total number of passenger train kilometers. Dividing the latter by the former gives us the number of trains that pass over the average piece of track in a year. Divide that by365 and you get the number of trains that go over the track per day. In 1992, this number was 16. An average piece of track was run over by 16 trains each day. By 2009, this number had gone to 25!

Data source: Economic and Political Weekly May 18, 2013 vol xlviII no 20
Data source: Economic and Political Weekly May 18, 2013 vol xlviII no 20

Note that these are average numbers. They hide the fact that there might be tracks on which no trains run, and other tracks on which maybe 100 trains run each day (even higher if you think of something like the Mumbai local train tracks). Yet, they give us a good indication of how the railways have utilized the infrastructure that is most scarce (tracks are the hardest thing to add, given the complexities involved in laying additional track – taking into account land acquisition, etc.).

Notice that though this is a largely linear growth, there have been times when growth has been faster than in other times. Next, let us look at how much utilization has been added each year. And let us look at it in terms of who the railway minister was in that financial year!

Data source: Economic and Political Weekly May 18, 2013 vol xlviII no 20
Data source: Economic and Political Weekly May 18, 2013 vol xlviII no 20

Notice that the outlier years are the first two years of Nitish Kumar’s occupation of the Ministry. During his unbroken 5 year tenure, Lalu Prasad Yadav also consistently added significantly in terms of track utilization. Unfortunately the data for passenger train kilometers ends with 2009, so here we are not able to see how Mamata Banerjee performed in her second stint in the ministry.

 

Strain on Indian Railways

In my last post I looked at some railways data that was put out by the Economic and Political Weekly to show that the total addition in route length over the last 20 years is not much to talk about. The same data set also gives data on “passenger kilometers” and “passenger train kilometers” for each year. The latter gives the  total distance all passenger trains in India have run, while the former gives the total distance traveled by (ticketed) train passengers in India each year.

Now, the ratio of these two numbers gives us the number of passengers per train. It is interesting to note how this has moved in the last 20 years.

Data source: Economic and Political Weekly May 18, 2013 vol xlviII no 20
Data source: Economic and Political Weekly May 18, 2013 vol xlviII no 20

In 1990 the average train used to carry about 800 passengers. That number has almost doubled to 1400 in 2009 (data on passenger train kilometers not available after that).

While some people might see this as a measure of higher efficiency by the railways, I see it more as an inability by the railway infrastructure to keep up with passenger demand. With little track length having been added, there is no surprise in that.

Rail length growth in India, or why you should not trust visualizations at face value

My colleague Nitin Pai extracted some data from the latest issue of EPW that shows the growth in total route length of Indian railways in the last 20 years. To get a better understanding of how the rail length has grown, I draw a simple graph. This is what I found:

Data source: Economic and Political Weekly May 18, 2013 vol xlviII no 20
Data source: Economic and Political Weekly May 18, 2013 vol xlviII no 20

From this graph, it looks like the growth in Indian Railways route length has been pretty impressive. You will also notice that the graph is not monotonically increasing – there are years where the route length is lower than that of the previous years. I would suspect that is due to conversion of metre gauge to broad gauge tracks.

But then if you take a closer look at the graph, you might notice that the y axis doesn’t start at zero. So you might want to see what the growth looks like if you were to start the y axis at zero. Here is what you get:

Data source: Economic and Political Weekly May 18, 2013 vol xlviII no 20
Data source: Economic and Political Weekly May 18, 2013 vol xlviII no 20

Now that the axis has been plotted starting from zero, you notice that the growth in rail length by the Indian railways is not all that impressive.

Moral of the story: If you are a user of a visualization, make sure you check things like axes, scales, etc. before jumping to conclusions. You never know what tricks the person who made the visualization might have been up to. If you are making a visualization, however, keep in mind that a lot of your consumers are not going to look at the visualization too carefully, so make use of axes, scales, etc. in a way that embellishes your story.