Trading Hardware

Following the publication of my book, Programming for Betfair, I have had a few emails asking about my hardware set-up. My set-up is quite simple due to the fact that I am not an in-play trader. I have just two monitor screens. There is no live feed on a monitor or television screen as I am out of the markets before they go-in-play. The second monitor is only used when the first screen is full and I need the extra space on which to spread my work out. The second screen also permits me to monitor bots trading on one screen and do research and development on the other

An algorithmic trader using bots could easily make do with a single screen. The item hiding under the plastic bag on the right of the picture is a laser printer. The bag keeps the dust off.

The rest of my hardware is kept in a rackmount system. I like rackmount as I can hide everything in a cabinet and keep it reasonably dust free. I am rather prone to dust; pollen in the summer and dust in the winter has me reaching for the antihistamines. The cabinet is a short style 19-inch rackmount cabinet, the type used for telecomms equipment rather than servers, which tend to be in much deeper cabinets that take up too much floor space.

The shorter telecomms cabinets are ideal for installing short ITX cases. The particular rack case that I use is a 1.5U case. I did have a 1U case but that required a blower to keep the CPU cool rather than a fan. Blowers are very noisy and I don't recommend them for home offices. They are better suited to data centres. The 1.5U case will only take one 3.5 inch or two 2.5 inch hard drives so I use external drives on a shelf above for additional storage.

I will probably put another machine in the rack in the near future. I am not keen on upgrading to Windows 10 although it looks as though Microsoft will soon change Windows 10 from an optional upgrade to a required upgrade. If I don't like what I see then I will probably go back to Linux. Now that Betfair uses JSON rather than SOAP through which to provide data I shouldn't have any problems with coding a price server and bot platform for Linux. When I last used Betfair's old API-6 on Linux the task was not a pleasant one. I like things that work out of the box. With Linux there is so much gluing to do.

The processor on my ITX motherboard is an Intel i7-3770K with four cores running at 3.5 Ghz and is still quite high up on the CPU benchmark website. There are some six core Intels now on the market, which are only a little more expensive than the price I paid for my processor two years ago that are a little more capable than my machine. Still, I am happy with my system as it can grab data for all the day's races and process it in under a second, which is good enough for the trading algorithms that I use.

As mentioned, I have used the Linux operating system in the past but I ended up dumping it. I don't like bolting things on and then tweaking them to get them running perfectly, which was what I always seem to be doing on Linux. For all its faults Windows is very much plug and play. That goes for Microsoft's Visual Studio programming environment too where I can create applications without having to worry about incompatibilities. And so I am caught in a quandry, preferring Microsoft for programming but not wanting to get caught up in whatever Microsoft has planned for the future.

I use the the 64-bit version of Windows 7. The Windows 10 upgrade icon sits on my taskbar but I have not been tempted to click it. It would appear that Microsoft is following other operating system vendors in monetising all aspects of an operating system with micro-payments here and there for everything. I regard micro-payments as another tax on stupidity, along with the lottery and mobile phone contracts. I am not a youngster who has been brainwashed into accepting micro-payments for everything. I believe in applying money management principles to all aspects of my daily life. I have a pay as you go phone but never call out with it. Email and free VoIP (voice over IP) are my preferred methods of communication. I have no television, no satellite receiver and no license fee compelling me to be brainwashed with BBC propaganda.

Currently, I program with Visual Studio Community Edition 2015, which allows me to code applications in BASIC, C++, C#, Python and F#. If I move over to Linux again then I will port my code to the Mono environment. As I have already said, that shouldn't be too problematic with API-NG's JSON based system. I will probably build another machine to run alongside the Windows 7 (assuming it has not been shutdown by Microsoft) machine rather than dual booting. There is plenty of room in the rack for more cases. I use PlusNet as my ISP and then only the slowest broadband option. This is fine for my needs as there is no other activity during trading. No downloads or media consumption to slow things down or risk being throttled by my ISP.

On my desk you can see lots of scrap paper, pens and pencils. This is for writing down ideas, which I can then research, test and implement. Whilst monitoring markets I watch for anomalies to exploit, novice bots being tested and more professional concerns to see what they are up to. The markets are constantly in flux and you have to be alert to new openings as once profitable areas dry up in liquidity.