For index funds, currency pairs, futures or commodities, it tends to be a specialized program designed with that security in mind since each has their own behaviors.
Automated trading systems can be designed to trade many stocks at a time, but keep in mind that the complexity of such systems increases dramatically because money/risk management change. Normally there is a filtering mechanism for the strategy and then a money management technique based on the timeframe (daytrade, swing trade, long term).
The short of it: You can define a rule for anything you can get a reliable data feed on.
I recommend to join or visit this site as it contains a wealth of information (got to sort through people's opinions though, use your own judgement; it has a list of brokers with reviews also): http://www.elitetrader.com/
Often, proprietary brokers will put hard limits to protect from programming errors, for example: limit the dollar amount of all assets long or short to $100000. This can help when the system first goes live, especially if high margin is used. I recommend avoiding proprietary firms unless you have experience with them, as they can be risky if you don't know what you're getting into; I will not be listing any here.
If you are programming the system, then it's useful to have an API available. I personally use Visual Basic 6 and the broker's API for simplicity. Some brokers have their own scripting languages or interfaces.
These are some brokers that I've seen, but I haven't dont live trading in awhile so I cannot guarantee any specific results:
TradeStation (when you want all the bells and whistles, must have $30000, but well-supported scripting language and good interface) - http://www.tradestation.com/automated_trading/howitworks.shtm
Interactive Brokers (simpler platform, similar rates, splits forex spread and commission which makes it more transparent; API for Visual Basic 6; has lots of user-created 3rd party automation or assisted trading tools) -
http://individuals.interactivebrokers.com/en/p.php?f=programInterface&ib_entity=llc
MB Trading - heard it was a decent broker, don't know much about it. http://www.mbtrading.com/
Good rates for trading are $0.01/share (low volume) and $0.005/share (mid-high volume). Most use smart routing to ECNs and market makers (whoever has best price), for liquid instruments execution isn't really a deciding factor. Just make sure your automated trading strategy has a failsafe in case of a market crash (good money management strategy should mitigate the risks).