In order to better evaluate different ATS platforms, I started a list of some of the features that I would need:
1) Automation through IB and other brokers.
2) Since I have multiple systems with a wide variety of time frames, I need to be able to manage not only intraday automation but also multi-day systems. Tradestation has a problem whenever there is a disconnect-it doesn't know what to do with open positions when it reconnects it also doesn't know what to do with existing open orders. This should be a feature that can be turned on and would automatically take care of this situation. Tradestation has a problem and must be closed and reopened once per day as does the IB TWS.
3) Trading multiple accounts from one instance of the automation software.
3) Trading multiple accounts from multiple instances of the automation software on one or more computers. Can the software have multiple instances running on the same computer? Does the license allow running the software on more than one computer at the same time? If so how many?
4) Trading multiple systems from one instance of software on one computer into one account. Software must tag positions so that it can identify which positions belong to which systems. Also with the tag in place, it could deal with disconnects, re-connects and be able to handle all automatically.
5) Tracking trades by system for historical performance review. It should retain all trades into a database for comparison to simulation and for further analysis.
6) Can it use one data feed for real time data, such as e-signal, but place trades at IB where the data subscription has been turned off?
7) For 24 hour Forex trading, does the software need to be restarted once per day? Can this process be automated?
8) Can software handle differences between strategy filled orders and real orders automatically? Or as with Tradestation, does this need to be done manually?
9) Is the syntax of the language the same as a standard programming language? This is an advantage to programmers.
10) Is the product new to the market and relatively untested? Version 1.x or higher than 2.x?
11) Should we look for backtesting features in an automation product? If yes, then there is a whole new list of desired features that we would need to consider, such as the ability to handle portfolio level testing. Tradestation does not support portfolio level testing.
12) For end of day systems, trades for next day market on open, limit on open, stop limit, etc. should be able to be placed before the market opens or at any time specified in the code. Tradestation cannot place market on open orders or even limit on open, only plain limit orders or stop orders via automated code (AFAIK). Can it handle OCO & OSO orders? Can it handle sending a new order if limit on open order not filled?
13) Can it manage GTC orders or at least continuously place new day orders each day for EOD systems.
14) Can it manage the option of trading during off hours with different order types than regular trading hours?
15) It should support basket trading. IB has special features for this.
16) Is the technology used to maintain the connection to the broker and the data feed reliable and able to automatically handle internet disconnects. Short term ones that last a few seconds should be handled automatically and long term disconnect should set off all kinds of alarms.
17) How good is the support for the product, hours available?
18) Can software take signals from Tradestation or other software and send them to IB or other brokers? This is a handy interim feature while re-coding exiting Tradestation system.
This is just a start and anyone that has had experience with automating strategies should please add to the list.