Open Source Algorithmic Trading?

The Wall Street Journal reported today that investment firms invested heavily in algorithmic trading are realizing that the high costs involved in setting such systems up are not one-time, but recurring costs. The conventional logic assumes that it’s possible to automate the decision-making process in equities and other markets. The article tells the story of Daniel Clayden, an executive who spent much of his career developing these systems only to come to the realization that the impact costs to a fund on an automated system are not necessarily less than an ‘actively managed’ fund.

I don’t have much experience in financial systems at this level, but the programmer in me has always been fascinated with the idea of removing the element of human psychology from investment recommendations, and doing so in a way that can be automated over the long term. Theoretically, the return from such an engine should beat the market and (again, in the long term at least) come close to the low costs of index funds.

The problem appears to be the same problem that plagues human investors: random behavior. One reasonable definition of randomness is simply the volatility of behavior in a network with many (a relative term depending on the size of the system) nodes, or connection points to the ‘outside world.’ In the case of financial markets, that system is getting larger every day as more individual investors decide to manage their own money. The number of people in the market are not the only factor. We all know that markets are more erratic when the world itself is volatile. And so, the systems that were designed when the market was at a certain level of complexity are soon obselete simply because new stuff keeps happening.

But we don’t give up. The entire financial services industry seems to be founded on the idea that despite all odds, we will eventually be able to beat the market at a low enough cost to make net returns worth the while. This belief - some would call it delusion - causes companies to spend incredible amounts of money chasing historical returns.

I confess that I fall prey to this philosophy. Any system that can be represented so beautifully in all of those charts and datasets just has to have some predictable pattern. Algorithmic trading systems appeal to so many of us probably because the idea itself isn’t a bad one. There have to be enough meta-patterns out there that can be exploited to identify trends. Maybe the costs are high because companies keep their lessons learned proprietary.

None of these quant systems are open, either in terms of their databases, analytic techniques, or end user recommendation systems. This results in multi-million dollar cost silos that are essentially duplicates of every other system out there that has similar goals. Couldn’t we at least spread the mistakes and lessons learned out across the entire population by implementing the best algorithms into an open source algorithmic trading system? This sort of openness would spread the cost out much further and either validate or invalidate once and for all the entire field of Financial Engineering. My Google searches on the subject yield very little in the way of useful links. Maybe it’s an idea whose time has not yet come.

The only thing I could find was quantlib, an open source toolkit for developing these systems. Not a bad start, perhaps.

Leave a Reply