Advice for aspiring algo-traders

Correct. The cost of time is huge anyway to do anything properly.
I think the key with any large chunk of work is knowing what you're shooting for.

I've gotten bogged down in bug fixing, there are modules that do the brunt of the work but nothing that works as you want out-of-the-box. Then again I want a near-universal backtester with a GUI (but without complex position management).

Obviously something without a frontend is much easier and requires much less time.

True but better to take longer than finding nothing because one would be forced to test and analyze data the same way the original architect did. That can often greatly limit artistic freedom and understanding of details. Am not talking about writing a comprehensive algo trading platform but designing one's own profiling and test architecture to try out ideas. I find that incredibly important and valuable.

It is valuable absolutely. The option to implement any feature in days vs being tied to some commercial software which might get unsupported on a whim, there's no comparison.
Take Amibroker or MultiCharts, if there's ownership change and say you're relying on CQG data and IB for trading - they can modify their APIs, software authors decide to discontinue support (has happened before) and that's really the end of line. You're out of options.
But a simple backtester and a comprehensive one are two radically different sized projects.
 
Disagree with point 2. Writing one's own analysis and testing platform (using existing code of course) is beneficial in forcing oneself to fully understand what is going on. Off the shelf platforms rarely provide all the features needed. And using others' approaches forces one to adopt to someone else's limitations in thought. Even when profiling ideas with python I highly recommend to write your own testing harness.


Me too. We used existing platform NinjaTrader and wrote our own backtesting engine.
 
Curious to know how many here against rule 2 built their own platform while holding down a full time day job (rule 1).
 
I guess it depends on how complex such architecture is. I specifically am referring to a simple test/profile harness, for example a python setup to profile and test some ideas before applying such ideas to a full fledged portfolio level backtest with complex oms.

Curious to know how many here against rule 2 built their own platform while holding down a full time day job (rule 1).
 
I guess it depends on how complex such architecture is. I specifically am referring to a simple test/profile harness, for example a python setup to profile and test some ideas before applying such ideas to a full fledged portfolio level backtest with complex oms.
But in this case you can find python frameworks on github to accomplish the task. Really, the goal should be to first find something already built that satisfies your requirements. And if something does not fully satisfy your requirements, can you build an integration with it to get you over the finish line. Rolling your own solution should be a last resort. I have seen plenty of would be algo traders spend years attempting to build their own platform resulting in them never doing any algo trading.
 
But in this case you can find python frameworks on github to accomplish the task. Really, the goal should be to first find something already built that satisfies your requirements. And if something does not fully satisfy your requirements, can you build an integration with it to get you over the finish line. Rolling your own solution should be a last resort. I have seen plenty of would be algo traders spend years attempting to build their own platform resulting in them never doing any algo trading.

trading and back testing platforms are 2 different animals. But I agree, try to utilise as much as possible of things that already exist, no need to reinvent the wheel.
 
They don't have to be. One of the tricks is to make things "pluggable" so that strategies are not aware of what context they are running in.
That is how we did it initially. Then had to make backtest engine more robust.
 
Back
Top