Must be Christmas… a nice list of free quant trading tools

Happy Christmas, you quanties.  Source: Google Images.

Happy Christmas, you quanties. Source: Google Images.

Every once in a while a look through my LinkedIn feed unearths a juicy(?) nut.

Thanks to Mr Madan for posting this quite impressive list of open-source trading platforms.  

Perhaps a good time for a slight tangent: a few years ago, when I started developing quant strategies, I was pleasantly shocked to find out about open-source software, and particularly how deep these offerings were.  It’s frankly AMAZING that, for just about any software developing requirement I’ve ever heard of, there’s a free open-source solution.  Hence my love for languages such as Python and R, databases such as MySQL, and tools such as Spyder and Sequel Pro.  Oh, and stackoverflow: not only are the tools free, but the tech support is free and generally kind.  Oh, and Quandl for free data.

In sum: always look for the open-source alternative if you come across a software need.

A quant’s annoyance…continuous futures contracts

Data work.... ugh.  Source: Google images

Data work…. ugh. Source: Google images

Just a small vent today.  I’m deep in the middle of creating my own series of continuous futures contracts, which is both dull and so very important that there’s nothing for it.  I can understand why pre-made series (at least for intraday granularity) cost a fortune.

For those wondering what I’m talking about: futures contracts, like most derivatives, have a finite lifespan.  If I want to go long the S&P 500, I might buy a March 2015-expiry S&P 500 future.  So far, so good.  The issue comes in backtesting quant strategies: one needs to ‘stitch’ these contracts together to create one series for long-term testing purposes.

But wait.  It’s not quite that simple.  Due to various factors, one frequently comes across big price jumps between 2 futures contracts.  What to do?  Depending on the use-case, there are multiple different adjustments that might be appropriate for creating the series.  The most exotic sounding, to me, is the ‘Panama’ method…which is incidentally about the simplest adjustment out there.

Once I’m through downloading many millions of data rows, then back adjusting the futures contracts, I will finally have a time series with reasonable reliability.  Then I just need to remember to keep up the process as life continues.

Perhaps another reason to leave the futures trading to paid professionals.

Shortcut time!

I’ve spent a lot of time recently programming, i.e. hitting my head against the wall.  Every time I start working in my (very nice) Python IDE, it takes roughly 30 seconds before I run into the next problem to search Stack Overflow for a solution.  My skills are that bad.

There are times I just need to code a quick trading algorithm, and want ‘good enough’ out of a box.  In comes AmiBroker: a top-spec analysis program which has inbuilt interaction with my execution broker.  The usual technical indicators are built-in, and can be combined easily with the simplified programming language AFL.

Example: I just spent 3 days coding an algorithm in Python, which I just implemented in about 5 minutes using AmiBroker/AFL.  Ahhh…