About 10 years ago, I used to use MetaStock Trader which was a very sound tool, with a large number of indicators, but it has been a number of years since I have used it, so my comments on it will be out of date. At the time it relied upon me purchasing trading data myself, which is why I switched to Incredible Charts.
I currently use Incredible Charts which I have done for a number of years, initially on the free adware service, now on the $10/year for EOD data access. There are quicker levels of data access, which might suit you, but I can't comment on these. It is web-based which is key for me. The data quality is very good and the number of inbuilt indicators is excellent. You can build search routines on the basis of specific indicators which is very effective.
I'm looking at VectorVest, as a replacement for (or in addition to) Incredible Charts, as it has very powerful backtesting routines and the ability to run test portfolios with specific buy/sell criteria that can simulate and backtest a number of trading scenarios at the same time.
The advantage of all of these is they are not tied to a particular broker.