The Interactive Brokers trading platform itself does not offer automated trading. However, several solutions are available for traders who wish to automate trading systems using the IB Trader Workstation (TSW) platform, including:

Third-Party APIs

Programming Consultants

IB APIs

Third-Party APIsAn Application Programming Interface (API) is a language format utilized by an application program to communicate with other system software. An API acts as an interface or "go-between" that allows code to communicate with the IB trading platform. Third-party vendors offer a variety of proprietary APIs that provide customizable, prebuilt algorithms and plug-and-play trading software applications designed to run in conjunction with IB's Trader Workstation (TWS) trading platform.

A list of third-part APIs is available on the IB Web site: from the home page click the "Education" heading and select "The Marketplace@IB." Read the disclaimer and if you agree to the terms, click "If You Agree to the Disclaimer, Please Click Here" to continue. Click on the "Software Tools" tab and the subheading "Order Management Software" to view providers and products (shown in Figure 1).

Programming ConsultantsIn addition to the commercially available APIs, The Marketplace@IB also has a link to Programming Consultants who can assist traders and investors with the development of custom indicators and strategies to be used in automated trading. The consultants provide coding in a variety of languages including Java, C++, Visual Basic, SQL, Perl, Matlab as well as other trading platforms' proprietary languages that can be interfaced with IB.

Keep in mind that programmers can only program absolute rules, and they typically do not offer suggestions for improving the profitability of a system - only the performance of the code. Before working with a programmer, it is important to be able to define all of the trading system's entry, exit and management logic. If it can be defined, it can probably be coded.

Programming with IB APIsA third solution is for traders with the skills (or desire to learn) to program their own APIs. Interactive Brokers provides several APIs that traders can use to connect through either the TWS or the IB Gateway. Connecting through the TWS requires the application to be running, but allows traders to test and confirm that the API orders are functioning correctly. Connecting through the IB Gateway, on the other hand, does not provide an interface for testing and confirmation, but does allow the API to run without a large GUI application running.

Where the third-party APIs provide customizable, prebuilt algorithms, the IB API programming environment is essentially raw material. IB provides the equipment and components, and the user does all of the programming. Users can program in a variety of languages, including C++, Java, ActiveX or DDE for Excel. There are a number of API-related settings in TWS that traders can configure, shown in Figure 2. The IB API Reference Guide (available on the Interactive Brokers Web site: search for "API Reference Guide") provides an overview as well as instructions specific to the various programming languages.

Figure 2 - Configuring the API settings in TWS.

ConclusionTraders who wish to implement automated trading systems via the Interactive Brokers platform have a variety of options. Non-programmers may wish to explore the third-party API vendors who offer a variety of customizable or plug-and-play options. Traders with unique ideas can work with a qualified programming consultant. Those with programming experience or the time and desire to learn a programming language can employ the IB APIs when developing automated trading systems.