Here's my take on a scriptable backtester. Very much at an alpha stage for a long time, GUI parts take much longer to get right for me than the actual backend (which also took much too long). All timeframes in all possible permutations, AND/OR conditions but single position only as of now due to using Pandas exclusively for speed. Working concept was easy and took only a month or so, a practical tool - not easy to create from scratch at all.
Nice work! Agreed...building a robust solution from scratch is not trivial. Best to do it in small phases where each phase needs to prove the concept and add value.
I am working on Strategy Builder V2 now. My goal is for any new strategies for myself or clients will be built via the Strategy Builder. I have already told my clients my days of "hand coding" strategies are over....it is really dreadful work. Right now the builder can have indicator based entries and exits configured but then order handling is hard coded in the strategy template code file (native to AlgoTerminal). My goal is to be able to have orders and their behaviors defined in C# code but their configurations can be injected into the strategy via the Strategy Builder / config file. The good news is I have several production strategies with multiple order configurations that I can use for use cases when building this out.
I'm interested. I've seen these rule-based systems before. Can I test it? Do you have it on github? I'm an algo/quant trader with a computer science/mathematics background.
It is not commercially available at this time. I will update this thread when I have something commercially available.
Wanting to get into algorithmic trading without writing code would seem to me like wanting to swim without getting wet.
Very good point....in fact I tell most people who are interested in algo trading that it is likely not a good idea for them. My intent with the Strategy Builder is to be able to create re-usable strategy components that can be glued together in a strategy in any sort of fashion. So the consumer of the builder can create their own components which is not difficult but does require the ability to code. The result is I can build strategies for myself super fast, and the few clients I have just need me to code new indicators and order components and they can glue them together however they like.
Those that want to dive into the deep sea but do not know how to can get a submarine if they have the means. If someone has a trading system but doesn't know how to automate it, he can hire a programmer and experience the hands-off profits.
The submarine is a good analogy because then you have to learn to pilot a submarine. It would just be easier to learn to swim. It just seems like whatever GUI you could come up with for this there would be an easier version of that GUI as a scripting language.
Yes operating the submarine is just like learning how to use the GUI. Of course the best solution is to learn to code but not everyone has the capacity to pick up a new specialized skill.