Hello All, I'm professional software developer starting to trade on a stock market. At the beginning I get an IB account. Soon I understand that I need some software for automated testing of my strategies and even for automated trading. I read about multicharts .net, ninjatrader, ptmc, visualchart and sierra chart. For all of them except the last you need to program C# or C++. Because most of the time I program Java I'm searching for some good Java based software. The other option would be to spend time to restore my C++ or C# knowledge and select one of the software from that list. Also I consider to write my own system in Java and need your advice.
You should start by reading Ernie Chan's book. It'll give you a good foundation, specially if you end up building your own system from scratch.
I used to program C# professionally a decade ago and ended up doing java. Coming to trading I have been able to use MultiCharts.NET with C# and it really isn't much different from Java coding. If you're looking for a 'pure' Java solution then look at MotiveWave.
Thank you for your advice. Currently I consider to test this 5 tools: multicharts .net, ptmc, ninjatrader, sierra chart and motivewave. What would be the best choose for a long term perspective? Or maybe I forgot some interesting tools that is available on the market. The right system should be broker independent, with a strong back testing capability and it should be possible to create a complex strategies. @Jarym looks very nice, is MotiveWave an automated trading platform?
Obviously do whatever you're most comfortable with unless you want to pick up a new language in the process- IB has a great java API. You can use it to download quotes, execute trades - do backtesting - there's a ton of technical indicator libraries like http://ta-lib.org/. I do most of my stuff in java - lately I've been switching to python - not cause java wasn't good enough - mainly just cause I wanted to learn python and figured that was a good way to get started. It takes me at least twice as long cause I'm much more efficient in java - so that gives you a datapoint whether you should look at the C#/C++ based options or whether you should stick with what you know well.
You mean that you made a backtester of your own? I just thought that maybe there are existing tools that can help to save time. Do you have a chart in you program? If yes what framework are you using? jfreechart?
Yes to both - I have many strategies backtested (most of them didn't work out) and for that I use my own backtesting framework. Many use specific entry patterns or indicators and no charts at all - only a few use charts and for those I use jfreecharts. The idea in most of my backtesting is that I want to avoid looking at charts to begin with and backtest on a broad set of stocks across several years time
for now i've tried to program strategy using sierra chart - it's seem a very powerfull tool, but there is not a lot of documentations, it's not really object oriented, really old school then I did the same strategy, backtesting and optimizing using multicharts.net - it easy to understand, there is a lot of documentation, but it's not really transparent. There are some complicated rules, how your orders from strategy are translated to real order send to the broker. does anyone tested motivewave? what you think about this tool?