Do you want to learn how to build a professional environment for trading simulations without paying an arm and a leg?
Building a proper environment for developing and testing trading strategies can be very expensive. It doesn’t have to be though, as long as you’re willing to put in some work. I work with both cheap and expensive tools and if need be, I could make due with just the cheap ones.
The most common question I’m asked is how a retail trader or a semi pro can get started with strategy modeling. In this guide, I’m going to go ahead and assume that you’re comfortable with technology but lack budget to buy expensive software and data. If you’re not comfortable with the tech side, you really should learn it. This is one thing you just can’t get around. In this business, you do need to have a solid understanding of computers.
Getting the Data
The first thing you need to do is get hold of the data you need. I use multiple vendors, but in the lower cost segment I prefer CSI Data. In fact, when it comes to futures data, I prefer them over the more expensive ones as well. I’ve been using Reuters terminals for as long as I can remember, but despite the steep price of those I would rather use CSI for futures data.
CSI has all the data coverage you’ll need in the futures space and their software will adjust the time series to your specifications. Adjusting the data is crucial, as I’ve discussed in previous articles.
I’m using the World Futures Gold Package for about 700 USD per year. That’s about as cheap as you can get for quality futures data. Oh wait, you can get slightly cheaper… If you enter coupon code Tradersplace, you’ll get a 15% discount. Yes, I get a commission on that too. I’ve been recommending, and using, CSI Data since long before I had that discount deal in place though and I like to think that making some pocket money on referrals does not violate my integrity. They’re simply good and I like them.
I set the CSI software to dump daily flat files on disk. In the interface, I’ve selected all the fields I want, such as date, open, high, low, close, volume, open interest, current delivery, unadjusted close and a few other things. The program will fetch this data daily and just dump the files on disk.
CSI also have equity data, which I’m told is of good quality but I can’t speak for it myself. I haven’t used their equity data yet, though I plan to give it a try. On equity strategies, I tend to look at broader geographical universes, and they seem quite focused on the US markets.
Storing the Data
I’m not a fan of working directly against flat files. It’s possible, but I like to have a little stronger data environment than that. It’s just much more convenient to work against real databases. My preference here is the completely free MySql Server. Set up the tables as you like them and as it makes sense to you.
I suggest to make a meta table and a history table. The meta table would be a lookup table, containing things like name, currency, point value, sector and any other metadata you might need. The history table would, well, contain the historical data you get from CSI.
My own solution for getting the data into the MySql is to have a little C# program I made myself do the job. This little program autostarts once a day and simply reads data from the CSI flat files and pushes them into the DB. To make sure the database is always in complete sync with the flat files, I simply flush the old data from the MySql daily and re-populate with the CSI Data.
And how do you set up the database and build a program to push the data from text files to db-tables? That you’ll have to do on your own. It’s very basic stuff and there’s plenty of guides on the internet on how to learn these kind of tasks. Database skills can be quite useful for quantitative traders.
I find it almost comical that I’ve been using so many platforms with extremely varying price points, and in the end my favorite one is also the cheapest. My strategy development is concentrated on one single platform which costs around 500 USD, once off. Yes, that’s right. No yearly subscription fees. In the light of this, I’m amazed that people pay thousands of dollars for competing retail level platforms.
The platform that I use is RightEdge. It’s a CLR based software capable of massive portfolio simulations and it can be customized without limits. That last part is very important to me. Almost all simulation platforms I’ve used hit a wall sooner or later. You reach a point where you want to do something that they just can’t do. For retail level platforms, you hit that wall one day one but even the more advanced platforms tend to have serious flaws.
RightEdge can do pretty much anything you’ll ever need to do. Sure, you might have to rebuild it and extend the functionality if you’re looking to do something exotic, but that’s part of the job. Even out of the box, it can do considerably more than most competing, and much more expensive, software packages.
You can write your simulations in C#, VB.Net or any other CLR language. The environment of RightEdge is very similar to Visual Studio, so if you’re comfortable with a compiler you should feel right at home. You can even write your strategies directly in Visual Studio if you so prefer.
If you’d like RightEdge to do something over the usual, just build it yourself. You can make your own DLLs in VS and change or extend the functionality as you like. My version is heavily modified.
Oh, and you get another discount here as well, by using the same coupon code: Tradersplace. That’ll lower the price by 10%, saving you $50. Again, I’ve been using and recommending this platform for years and any referral fee I might get is no where near enough for me to recommend something I don’t use and like.
Now there is one downside with RightEdge that you should be aware of. This is a product for those who understand at least rudimentary programming or are willing to learn it. While RightEdge has a so called ‘drag-and-drop-system-building’, I wouldn’t recommend using it. Never use such a thing, in any environment. Anyone who tells you that you can build great trading systems that way is lying to you or doesn’t understand any better.
Getting the Data into RigthEdge
RightEdge, like most similar platforms, comes with a set of data adapters for various common sources. If you’re using a my recommended solution above however, you’ll need to make a data provider for it. Fear not, that’s not a terribly difficult task. If of course, you’re familiar with programming or willing to learn it. If you’re not, you’re probably better off investing with a good trader than doing it yourself anyhow. Programming is an essential skill for a quantitative trader.
The product comes with examples of how to build an adapter, and it’s quite straight forward. All you need to do is to make a little dll which implements some RightEdge interfaces, fetches data from your MySql database when asked to and returns it in the format that RightEdge expects. Dump this dll in the RightEdge folder, and you’re ready to start building your systems.
Your New Professional Simulation Environment
If you already understand basic programming and databases, you can have this setup up and running in under a day. If you’re not familiar with C#, I strongly recommend you to learn it. This book is a great place to start.
The environment shown here would make a strong, professional setup. It will allow you to construct serious model simulations without the limitations of retail level software. Best of all, it’s dirt cheap.
The downside is that it requires hard work. Very few things worth while can be done without hard work.
This article of course just brushes the surface how what do to and how to do it. It’s the first of this type of article I’ve published, and it’s in a way a test. If this kind of topic generates interest, I’ll go deeper and describe how the details work and how to more practically go about implementing this type of environment. Let me know if you want to see more how-to articles.
A month ago I started making my weekly futures research paper available for subscription. This report is designed to be a guiding tool for both systematic and discretionary futures traders, helping you to find opportunities and to identify risks. If you’re tired of sell side, broker style newsletters, this one is made by professionals for professionals. Sign up for a free month trial here.