Have you looked at Equities Lab? In my (biased) opinion, it's a very good choice. It has fundamental and technical indicators, a powerful expression language, and beautiful analytics that make the results more useful. It also backtests and simulates portfolios.
Metastock and Amibroker both focus on the technical (open, high, low, Close, Volume) above all else. Amibroker lets you program in a very fast scripting language. MetaStock, I believe has its own language. These also allow you to backtest each security, one at a time, and see how they did. But they don't allow you to simulate a portfolio of stocks.
Finviz is odd: Their stock screener lets you filter fundamentals with a few pull down menus, while their backtester does not have any fundamentals, and does not run to the current time (unless they fixed that -- I'm not going to sign up again to find out).
StockCharts has wonderful charts. It does not screen stocks, and it does not care about fundamentals. But its charts are gorgeous. Well worth having.
- Chartmill (web-based) -- Seems to screen stocks, and has pulldowns for the UI, and very limited fundamentals.
- StockFetcher (web-based) -- A very cool UI allows one to use a zoo of technical indicators to screen stocks. I didn't see any backtesting or portfolio building.
- Tiingo (provides data to Amibroker and other softwares). This is a really nice looking data product. As we use Morningstar, this is like comparing Apples and bicycles. Both have quality, and some are better than others, but good luck comparing vs to the other.
- MarketInOut (web-based) -- This lets you backtest technicals, and limited fundamentals. The complexity of the systems you can use is limited, but they do allow formulas.
- Swingtradebot (web-based) -- I saw technicals, and some screening. And Trader Mike's notes.
- Equities Lab -- Very deep fundamentals (hundreds of base fields, more ratios than you want) conspire with overpowered formula editing and a very good autocomplete to create a mildly brutal learning curve. Once you get over the hump, you can do things in Equities Lab that can't be done anywhere else. It's used in finance courses in many universities.