Pragmatic Automated Trading – Part 1
This article is part of a series dedicated to explaining a no-nonsense approach to the development of automated trading agents. This series is aimed towards people with a computer science background with or without trading experience.
The development of automated trading agents is one of the most challenging and rewarding applications of artificial intelligence to date. It is rewarding because success generally translates into an account padded with profits and it is challenging because it pits your creations against the combined intelligence of millions of other agents around the globe.
I will be honest with you, the road to profits is full of misleading signs and dangerous detours. Many of you will fail not because you are not smart or talented enough but because you might decide that the personal cost of such venture might just be too high for you.
The market is a formidable foe and to beat it you will have to immerse yourself into it and crack the code from the inside. To create truly intelligent agents you will have to learn many things that will change the way you perceive the world around you.
If you are threading down this path just for the money I can save you a lot of trouble by telling you to go spend your time with something else. There are easier ways to make money out there that do not require the Herculean amount of work and research that is necessary to consistently beat the markets.
What do you need to get started:
- A good computer. Something reliable and reasonably fast. You might need more processing power later on but you should not worry about it right now. Do not spend money on a computer just to get started – it is not worth it.
- A broker that provides API access to market data and execution. Ideally the broker should also provide a live “paper trading” environment that you could place trades against to test your execution code. I recommend Interactive Brokers as a good starter brokerage firm.
- Solid programming skills with the language you decide to use. This is not optional and it isn’t the kind of thing you can “learn as you go”. If you don’t have prior programming experience I recommend that you dedicate enough time to learn as much as you can before you get started. It isn’t enough to be able to write code that works – you need to be able to write efficient code that is both maintainable and reliable.
A passion for Math – or at least the ability to force yourself to like it. There is no way around it as math will be the main weapon in your arsenal. Don’t think you can make do by simply using formulas you don’t quite understand – you would not stand a chance. It is crucial that you master all the mathematical concepts you decide to use in your trading systems.- An unshakeable and obsessive desire to succeed.
Next on Part 2:
The Scientific-Minimalist-Economic (SME) approach to Automated Trading









Nicely written, just spent the last two years of my life dedicated to building something sustainable and you have a lot of good points. Math however in my opinion is not the only way to create alpha. Good architecture with the ability to monitor a large segment of the market as well as creative web crawling goes a long way. Also clever frameworks for taking like you say complexity in the universe and boiling it down to something simple is where the innovation happens. Will stop by more often, like your points. – Duncan Krebs