Program in C# with the entire .Net Library available with top notch Customer Service
My first package was TradeStation which I bought in 1995, so I have seen and tried just about everything. I have been using NInjaTrader everyday to trade full time since the V7 release. V7 added a critical element... a local database to collect and store tick data. This allows me to use whatever tick data source I want or care to switch to, then build bar types from the locally managed and stored tick data. No more paying eSignal's exorbitant fees! This does require some labor to manage and update the database, but my data is now free... If you dont want the chore of managing your own database, as you will now be loading historical data from your own database, you are free to pay eSignal or a host of other data suppliers and let them do the managing of the historical backfill data. , Its your choice.
I love programming in C# and having the entire .Net library at my disposal. C# is wonderfully documented. You can simply Google any question you have and instantly have tutorials, forum answers and documentation on just about anything you will ever encounter. Just think about how much larger the user base of C# and .Net is compared to the user base for some scripting language in another package. Chances are someone in the world has tried to do what you want to do, and has written a Tutorial on it, or asked StackOverflow about it already.
Think about how vast the third party library for .Net is. If you want to do something non-trivial and don't want to reinvent the wheel... there's a library for that. Want to build a Neural Network and have NinjaTrader code interact with it.... try Encog... its free and well documented. Dream of something you would never attempt from scratch... and its in a C# library somewhere. NinjaTrader uses C# and .Net in a clever way that makes it a seamless experience... and you can debug in VisualStudio!
The support forum is outstanding and friendly, and has a great code respository. The customer service of NinjaTrader is second to none...
Oh yeah.... it does all the nuts and bolt stuff you'd expect too... Best of all it is wisely marketed by allowing you to install, hook up to data, chart, design systems, backtest and optimize in a FREE demo that never expires and is fully functioning except you can't place actual orders with a broker through the software. You can submit orders through a simulated broker to test to your hearts desire. This is the smartest marketing ploy mankind has ever seen. Simply use the product as much as you want for as long as you want until it convinces you that it is worth paying for.