Automated Systems Methods
Just as there are many names that refer to automated trading, there are many means by which to automate the executions.
Though many options are available, the most common methods of automating trading systems are:
Writing directly to the API of the order routing engine in order to allow for the most advanced and customizable order entry, modification and reporting. This method is the most difficult to implement requiring advanced knowledge of various programming languages including C++ and C#. Typically reserved for more experienced system developers, this method usually provides the lowest latency while allowing for complex order handling and order types.
Systems writing directly to the API are eligible to have their systems hosted in the data center allowing for greater reliability and speed when milliseconds matter most.
- Building the system using NinjaTrader’s strategy builder templates or C# programming environment When running a system natively in NinjaTrader, the system communicates directly with the API of the order routing engine and can accommodate more advanced order handling while decreasing latency and errors.
Writing directly to the order routing engine utilizing custom built computers running either the Linux or UNIX operating system. Possibly the most difficult means of implementing automation, though often the fastest and most reliable means of automating the execution of advanced algorithms and trading strategies.
DLLs can be used to communicate directly with the order routing software allowing for more advanced order handling options though requiring more experience with coding.
SMTP automation uses an existing 3rd party software package to pull in data and calculate signals that are then sent to an order routing engine via the SMTP protocol. Quick and easy to setup and test, the use of SMTP has been the choice of system traders for years.
The speed of the system is only as fast as the 3rd party software that is generating the signals but a great solution for systems that do not rely on millisecond fills or advanced order entry types. No advanced programming knowledge or experience is required when using the ATI features built into the NinjaTrader platform.
- TradeStation Integration Using the SMTP function to communicate between TradeStation and NinjaTrader, strategies built in Easylanguage can be setup and tested in minutes. Some initial setup is required to customize synchronization and other options to help keep the system in line with actual fills. Writing directly to the order routing engine utilizing custom built computers running either the Linux or UNIX operating system. Possibly the most difficult means of implementing automation, though often the fastest and most reliable means of automating the execution of advanced algorithms and trading strategies.
OIF (Order Instruction Files)
Similar to SMTP using 3rd party applications to generate the buy or sell signals, OIF’s facilitate automation by instantly creating instruction files on the hard drive of the computer automating the execution.