Ninja Trader Integration with TWS - FAQs

 

Q: Is Ninja Trader Compatible with the Trader Workstation (TWS) / IB Gateway*?
A: TWS / IB Gateway Application Program Interface (API) accommodates connection to a variety of third-party vendors, including Ninja Trader, who offer complementary order entry, charting, back-testing and analytics software programs designed to expand the functionality of TWS. Please refer to the following Ninja Trader website link for details: http://www.ninjatrader.com/ConnectionGuides/Interactive-Brokers-Connection-Guide

* IB Gateway support is available with Ninja Trader 8+
 
 
Q: Can Ninja Trader be tested with the TWS platform demo* which IBKR makes available to prospective clients?
A: Yes, but only on a limited basis as the platform demo is solely intended to demonstrate the functionality of the TWS and its API. As background, the TWS demo provides only delayed market data and does not offer the historical data necessary to populate Ninja Trader charts requiring a combination of streaming and historical data.  Once your live IBKR account is approved and funded a paper trading account may be requested, the market data subscriptions to which will accommodate full testing of the Ninja Trader application.
 
*Demo can be accessed from the login screen of TWS (No Username? Try the Demo or during the opening process of an Account.
 
 
Q: Is Ninja Trader compatible with all versions of TWS?
A: No. There is an inherent lag between the time IBKR releases a TWS update and that at which any third-party vendor can reasonably respond with a corresponding software upgrade. In the case of Ninja Trader, its application is compatible solely with the Offline TWS platform (not the automatic update) and to determine the particular version currently supported, please refer to the following Ninja Trader website link: http://www.ninjatrader.com/ConnectionGuides/Interactive-Brokers-Connection-Guide 
 
 
Q: Can the free delayed market data feed from IBKR be used with Ninja Trader?
A: No. Though delayed market data is generally available through the API, some third-party vendors does not utilize these functions. Account holders seeking to use IBKR as a data source must subscribe to a real-time data feed through the Client Portal.
 
 
Q: Is there any distinction between the rate at which Ninja Trader seeks to load chart data and that which the IBKR market data feed supports?
A: As queries which request the same historical data within a short period of time may result in excessive back end server load, IBKR imposes pacing restrictions which, if violated, will generate error codes. In certain circumstances, the pacing of data requests through IBKR may delay the loading of the data through Ninja Trader, particularly when multiple charts and or symbols are loaded simultaneously. For details regarding the limitations IBKR imposes with respect to historical data queries, please refer to the following IB API guide link: https://interactivebrokers.github.io/tws-api/historical_limitations.html
 
 
Q: Does IBKR support the market data required to populate Ninja Trader Range Bar charts?
A: Range Bar charts generally depict the movement of price for a particular instrument over a defined time period (e.g. month, day, 5-minute, 3-minute, etc.) or tick increment. At this time many software vendors has not made the necessary updates to offer the tick-data provided by Interactive Brokers. Ninja Trader Bar charts require an alternate data source to eliminate data gaps.
Please refer to the following Ninja Trader website link for a list of supported connectivity providers as well as the historical and real-time data provided by each: http://www.ninjatrader.com/support/helpGuides/nt7/index.html?historical_data.htm
 
 
Q: It is possible to use different data source vendor between TWS and Ninja Trader interface?
A: Yes. It should be noted that Ninja Trader does not operate as a vendor of market data and use of this application requires provision of data by a third-party connectivity provider. While IBKR can serve as this provider for real time prices, these prices are not provided on an unfiltered tick-by-tick basis, a prerequisite for fully populating Ninja Trader charts.  A common setup therefore, is to use Ninja Trader as a front-end order entry platform, routing orders to the TWS for execution and clearing by IBKR and bridge to a third-party vendor for market data.
  
 
Q: Is Ninja Trader compatible with IBKR’s paper trading (simulation) account?
A: Yes Ninja Trader connects to the paper trading account in the same manner as to the live account. To familiarize oneself with the configuration and operation of these applications, IBKR strongly recommends conducting test trades through the paper trading account prior to submitting orders through the live account.
 
 
Q: How can orders submitted through Ninja Trader for execution through TWS monitored with TWS?
A: Classic TWS contains a quote monitor page denoted by a tab marked “API” within the main window through which open orders submitted via Ninja Trader or any third party software application may be monitored. 
  
 
Q:  Is Ninja Trader compatible with IBKR’s Financial Advisor and Friends & Family account type?
A:  Yes, although not with the full order allocation functionality provided directly through the TWS. While Ninja Trader can be used to submit orders for a client sub-account through the Advisor master account, it does not allow for a single order to be allocated to more than one sub-account: http://www.ninjatrader.com/support/helpGuides/nt7/account_groups.htm. This is in contrast to the TWS user interface which provides for multi-client trade allocations from a single order (through the Account Group or Allocation Profile options).
 
 
Q: How does one determine the cause of orders which have been submitted via Ninja Trader and subsequently canceled or rejected?
A: An order which has been canceled or rejected will be accompanied by an error message generated by Ninja Trader and/or TWS depending upon the source of the action. Order cancellations/rejections may be attributable to a variety of factors including IBKR credit policies, exchange restrictions or an invalid user request. In situations where the error message is not self explanatory, the user will need to contact the technical support teams of IBKR and Ninja Trader to diagnose and troubleshoot the problem.

 

Considerations for Optimizing Order Efficiency

Account holders are encouraged to routinely monitor their order submissions with the objective of optimizing efficiency and minimizing 'wasted' or non-executed orders.  As inefficient orders have the potential to consume a disproportionate amount of system resources. IB measures the effectiveness of client orders through the Order Efficiency Ratio (OER).  This ratio compares aggregate daily order activity relative to that portion of activity which results in an execution and is determined as follows:

 

OER = (Order Submissions + Order Revisions + Order Cancellations) / (Executed Orders + 1)

Outlined below is a list of considerations which can assist with optimizing (reducing) one's OER:

 

1. Cancellation of Day Orders - strategies which use 'Day' as the Time in Force setting and are restricted to Regular Trading Hours should not initiate order cancellations after 16:00 ET, but rather rely upon IB processes which automatically act to cancel such orders. While the client initiated cancellation request which serve to increase the OER, IB's cancellation will not.

2. Modification vs. Cancellation - logic which acts to cancel and subsequently replace orders should be substituted with logic which simply modifies the existing orders. This will serve to reduce the process from two order actions to a single order action, thereby improving the OER.

3. Conditional Orders - when utilizing strategies which involve the pricing of one product relative to another, consideration should be given to minimizing unnecessary price and quantity order modifications. As an example, an order modification based upon a price change should only be triggered if the prior price is no longer competitive and the new suggested price is competitive.

4. Meaningful Revisions – logic which serves to modify existing orders without substantially increasing the likelihood of the modified order interacting with the NBBO should be avoided. An example of this would be the modification of a buy order from $30.50 to $30.55 on a stock having a bid-ask of $31.25 - $31.26.

5. RTH Orders – logic which modifies orders set to execute solely during Regular Trading Hours based upon price changes taking place outside those hours should be optimized to only make such modifications during or just prior to the time at which the orders are activated.

6. Order Stacking - Any strategy that incorporates and transmits the stacking of orders on the same side of a particular underlying should minimize transmitting those that are not immediately marketable until the orders which have a greater likelihood of interacting with the NBBO have executed.

7. Use of IB Order Types - as the revision logic embedded within IB-supported order types is not considered an order action for the purposes of the OER, consideration should be given to using IB order types, whenever practical, as opposed to replicating such logic within the client order management logic. Logic which is commonly initiated by clients and whose behavior can be readily replicated by IB order types include: the dynamic management of orders expressed in terms of an options implied volatility (Volatility Orders), orders to set a stop price at a fixed amount relative to the market price (Trailing Stop Orders), and orders designed to automatically maintain a limit price relative to the NBBO (Pegged-to-Market Orders).

The above is not intended to be an exhaustive list of steps for optimizing one's orders but rather those which address the most frequently observed inefficiencies in client order management logic, are relatively simple to implement and which provide the opportunity for substantive and enduring improvements. For further information or questions, please contact the Customer Service Technical Assistance Center.

 

Order Management Overview

BACKGROUND

IBKR’s order management and routing systems are negatively impacted when the volume of orders submitted by clients is significant relative to those which are actually executed. Left unchecked, unproductive orders have the potential to slow system performance, adversely impact other clients and increase capacity requirements and costs. To minimize the load of such orders on internal systems and to comply with exchange policies, certain of which impose a surcharge for excessive messages, IBKR  monitors order activity and may place restrictions upon clients who routinely submit a disproportionate number of unproductive orders.
 
MEASUREMENT & REPORTING
The Order Efficiency Ratio (OER) allows IBKR to evaluate order productivity by comparing aggregate daily order activity relative to that portion of activity which results in an execution. This ratio is as follows:
 
OER   =   (Order Submissions + Order Revisions + Order Cancellations) / (Executed Orders + 1)
 
An OER above 20 is generally considered excessive and indicative of inefficient order management logic. Clients who routinely report an OER above 20 will receive notification of their ratio and are advised to review and optimize their logic and those who fail to take action or who report a particularly egregious ratio may be subject to trade restrictions.1
 
TAKING CORRECTIVE ACTION
Clients submitting orders through an API can often realize significant declines in their OER through slight modifications to their order logic.  Please review KB1765 for a list of the most common techniques for optimizing this ratio.  
 
 
 
1 It should be noted that these actions are not aimed at the client who submits 200 orders and receives 10 executions but rather those using automated systems to submit thousands of orders with negligible interaction with the NBBO.

 

OPTION SYMBOLOGY INITIATIVE

INTRODUCTION

Beginning in 2006, working groups comprised of brokers, exchanges, clearing houses and vendors were formed in order to represent each of the U.S. and Canadian securities industries in a multi-year effort to develop a revised data format for representing listed option symbols. These efforts, referred to as the Option Symbology Initiatives (OSIs), are intended to provide the following benefits:
 
-         Decrease the number of errors in the front, middle and back office processes.
-         Represent the vast majority of listed option contracts using the same symbol as the
           underlying security to reduce investor confusion.
-         Reduce corporate action symbol conversions.
-         Eliminate wrap symbols.
-         Eliminate the need for LEAP rollover process.
-         Reduce the frequency of coordination among exchanges for symbol elections.
-         Support the growth in product listings through additional expiration events and more
           flexible strike price designations.
 
The following article provides background information regarding the products impacted by the OSI, the revised data format, project timeline and client impact as well as external links where additional information may be found.
 
PRODUCTS IMPACTED
The table below lists the product classifications of the US and Canadian exchange listed options which are impacted by the OSIs.  Note that while the mandated conversion date for Canadian options is identical to that of the US (i.e., February 12, 2010), the conversion of Canadian options was accelerated and completed by IB in September 2009.
 
US
Canadian
Equity
Equity (short cycle, regular full cycle and long term)
Index
Index
Yield Based
Foreign Currency
Short Dated
 
Flex
 
 
OSI DATA FORMAT
Each OSI will replace the 5-character code with a 21-character OSI identifier to be used in the transmission of listed option contracts between exchanges, the clearinghouses and their constituents. The 21-character OSI identifier comprises six data elements arranged in logical order, each with a minimum field size. An example is provided in the table below.  

 

5-character Code
21-character OSI Identifier*
OSI Data Elements (minimum field size)
Option Root
Symbol
[6]*
Yr
[2]
Mo
[2]
Day
[2]
C/P
[1]
Dollar
Strike
[5]
Decimal
Strike
[3]
SZVXI
SPX    111216P01900000
SPX
11
12
16
P
01900
000
WMFAW
MSFT  100116C00047500
MSFT
10
01
16
C
00047
500
*If the Option Root Symbol is less than 6 characters, spaces are added to equal the six character minimum.
 
 
OSI TIMELINE & CLIENT IMPACT
The industry effort has been organized into two phases:
 
1. The Conversion Phase in which the OPRA code format will be dropped and the 21-character record layout employed to include the expiration day and decimal strike price. This phase was completed on February 12, 2010; and
 
2. The Consolidation Phase during which LEAPS, wrap, FLEX, short-dated and non-standard delivery contracts will have their symbols consolidated to that of the underlying (e.g. MSQ to MSFT).  This phase will take place over the 5 weekends starting March 12, 2010 and ending May 14, 2010. Note that there are certain contracts, referred to by OCC Class Consolidation Exceptions, which will not be consolidated.  These contracts include binary and CDO options, options having a 5 character underlying as well as  options having unique settlement terms (e.g., settle on open).  In addition, adjusted symbols which are the result of a prior corporate action will be consolidated to the new OSI corporate action format at the time the underlying class consolidates.
 
Outlined in the table below are the key milestone and effective dates for this consolidation phase and the products impacted.
 
Milestone Date Action Issues/Series Impacted Effective Date
Friday, March 12, 2010 Initial group of options representing array of product scenarios to be consolidated (approx 12 classes) Options associated with a strategic group of underlyings including adjusted and non-standard symbols Monday, March 15, 2010
Saturday, March 20, 2010 Standard Expiration    
Wednesday, March 31, 2010 Quarterly Expiration    
Friday, April 9, 2010 Consolidation of options whose primary underlying starts with the letters A-C (approx 503 classes) All options associated with 'A-C' underlyings including adjusted and non-standard symbols Monday, April 12, 2010
Saturday, April 17, 2010 Standard Expiration    
Friday, April 23, 2010 Consolidation of options whose primary underlying starts with the letters D-I (approx 486 classes) All options associated with 'D-I' underlyings including adjusted and non-standard symbols Monday, April 26, 2010
Friday, May 7, 2010 Consolidation of options whose primary underlying starts with the letters J-IR(approx 575 classes) All options associated with 'J-R' underlyings including adjusted and non-standard symbols Monday, May 10, 2010
Friday, May 14, 2010 Consolidation of options whose primary underlying starts with the letters S-Z (approx 503 classes) All options associated with 'S-Z' underlyings including adjusted and non-standard symbols Monday, May 17, 2010
 
IMPORTANT NOTE:
During this consolidation phase Good-till-Canceled (GTC) and Good-till-Date (GTD) orders will need to be canceled for all the option classes which are scheduled to consolidate. To accommodate this exchange mandate, IB will cancel all customer GTC and GTD orders on the Sunday of each milestone cycle.  Confirmation of these cancellations (outs) will be provided prior to effective date open (Monday) at which point customers may re-enter these orders utilizing the post consolidation symbol.
 
EXTERNAL LINKS
For additional information, please visit the symbology initiative sections of the OCC and Montreal Exchange websites.  

 

Syndicate content