IBKR Host and Ports Documentation

Background: 

TWS connects to IBKR servers via port 4000 and 4001, if using SSL, and will not operate on any other port. If you are using a proxy server, it needs to be a transparent with both inbound and outbound ports open so that the TWS can function properly.

Below are listed all the gateways, along with the corresponding destination host that might be used by the TWS when you use our services, please allow access to those hosts.

The easiest way to test whether your connection needs any special setup or has been configured properly is to use IBKR's Dedicated Test page, which will provide a dynamic test of your network’s connection against our main trading and market data servers. If a “Success” response is returned, there is nothing more for you to do. If the response is “Failure”, we recommend adding an exception for the new hosts to your network’s configuration or review your changes.

Note: If your network uses a browser proxy, the test page can produce false positives. In this case, or if you are not sure what your network setup is, turn to your network administrators, who can perform ping and telnet tests to the hosts listed below to confirm compliance with the connectivity requirements.

Specs:

CLIENT PORTAL AND WEBSITE

REGION/PRODUCT

SERVER (HOST)

PORTS1

IBKR WEBSITE – AMERICA

www.interactivebrokers.com

443

IBKR WEBSITE – Canada

www.interactivebrokers.ca

443

IBKR WEBSITE – UK

www.interactivebrokers.co.uk

443

IBKR WEBSITE – INDIA2

www.interactivebrokers.co.in

443

IBKR WEBSITE – JAPAN2

www.interactivebrokers.co.jp

443

IBKR WEBSITE – HONG KONG2

www.interactivebrokers.com.hk 443

IBKR WEBSITE – CHINA2

www.ibkr.com.cn 443

IBKR WEBSITE - AUSTRALIA

www.interactivebrokers.com.au 443

CLIENT PORTAL – EAST

gdcdyn.interactivebrokers.com

443

CLIENT PORTAL – CENTRAL

cdcdyn.interactivebrokers.com

443

1: Standard Communication: TCP Port 80 | SSL Communication: TCP Port 443.

2: This IB Server host does not support ping request.

Important Note: If you are accessing Client Portal from a corporate network where the Internet access is provided through a load balancing equipment, you may receive error messages about expired/invalid session and/or missing web content upon or after the login phase. The load-balancer cycles your outbound connections over two or more network interfaces to equalize the network workload. Because of this mechanism, your HTTP requests reach our systems from different IP addresses, invalidating your Client Portal session. In this scenario, as a solution, please ask your network administrator or IT group to configure your machine/device for bypassing the load-balancer. This will allow your session to remain valid and alive.
 

 

DESKTOP TWS

REGION/TOOL

PRIMARY/BACKUP

SERVER (HOST)

PORTS


TWS AMERICA – EAST

PRIMARY

ndc1.ibllc.com


4000 / 4001

BACKUP

ndc1_hb1.ibllc.com


TWS AMERICA – CENTRAL

PRIMARY

cdc1.ibllc.com


4000 / 4001

BACKUP

cdc1_hb1.ibllc.com


TWS EUROPE

PRIMARY

zdc1.ibllc.com


4000 / 4001

BACKUP

zdc1_hb1.ibllc.com

TWS ASIA

PRIMARY

hdc1.ibllc.com

4000 / 4001

BACKUP

hdc1_hb1.ibllc.com

TWS ASIA - CHINA3

PRIMARY

mcgw1.ibllc.com.cn

4000 / 4001

BACKUP

mcgw1_hb1.ibllc.com.cn
TWS AUTO-UPDATE PRIMARY

download.interactivebrokers.com

443

download2.interactivebrokers.com

RISK NAVIGATOR

PRIMARY

risk.interactivebrokers.com

443

TWS CLOUD SETTINGS

PRIMARY

s3.amazonaws.com

443

IB CAM

PRIMARY

ndc1.ibllc.com

4000 / 4001

DIAGNOSTICS REPORTS

PRIMARY

https://wit1.interactivebrokers.com

443

3: Gateway dedicated to clients with accounts assigned to the Hong Kong server, but are physically connecting from Mainland China.

 

 

 

How to check and solve connectivity issues affecting the Trader Workstation (TWS)

Background: 

The Trader Workstation (TWS) software needs to connect to our gateways and market data servers in order to work properly. Connectivity issues affecting your local network or your Internet Service Provider network may negatively affect the TWS functionality. In this article we will indicate how to test your connectivity using an automated connectivity test web page.

 

How to test the connectivity using the automated "IB Connectivity Test" web page?

1) Launch the Firefox browser and open this link with that browser: http://www.interactivebrokers.com/cgi-bin/conn_test.pl 
Note: due to browser specific constraints, the above connectivity test link will only produce consistent results on the Mozilla Firefox browser. If you do not have Firefox, you can download and install it form here.

2) Please wait until all the tests have been completed and results have been displayed. If you see "Success" as outcome for all tests, your connectivity to IB Servers is reliable at the present moment. No additional connectivity troubleshooting or configuration should be needed.

3) If you see "Fail" as outcome for one or more test/s, please click on the link "Fail" itself in order to display the "IB Network Troubleshooting Guide". That section will help you conduct some manual tests to identify the cause of the failure.

Note for Corporative environments and Proxy server users: the automated "Connectivity Test" page may return misleading results in case your machine is accessing the Internet through a Proxy server. This usually happens if you are connected to a company network. If this is your case, we kindly ask you to contact your Network Administrator or your IT Team and ask them to perform a manual connectivity tests towards the destination servers indicated in the table on the top of the IB automated "Connectivity Test" web page itself. The manual connectivity test should be conducted using destination TCP ports 4000 and 4001. Should they prefer to have the server list in another format or should they need to set up the firewall / IP Management rules, you can forward them this page.

 

Allocation of Partial Fills

Title:

How are executions allocated when an order receives a partial fill because an insufficient quantity is available to complete the allocation of shares/contracts to sub-accounts?

 

Overview:

From time-to-time, one may experience an allocation order which is partially executed and is canceled prior to being completed (i.e. market closes, contract expires, halts due to news, prices move in an unfavorable direction, etc.). In such cases, IB determines which customers (who were originally included in the order group and/or profile) will receive the executed shares/contracts. The methodology used by IB to impartially determine who receives the shares/contacts in the event of a partial fill is described in this article.

 

Background:

Before placing an order CTAs and FAs are given the ability to predetermine the method by which an execution is to be allocated amongst client accounts. They can do so by first creating a group (i.e. ratio/percentage) or profile (i.e. specific amount) wherein a distinct number of shares/contracts are specified per client account (i.e. pre-trade allocation). These amounts can be prearranged based on certain account values including the clients’ Net Liquidation Total, Available Equity, etc., or indicated prior to the order execution using Ratios, Percentages, etc. Each group and/or profile is generally created with the assumption that the order will be executed in full. However, as we will see, this is not always the case. Therefore, we are providing examples that describe and demonstrate the process used to allocate partial executions with pre-defined groups and/or profiles and how the allocations are determined.

Here is the list of allocation methods with brief descriptions about how they work.

·         AvailableEquity
Use sub account’ available equality value as ratio. 

·         NetLiq
Use subaccount’ net liquidation value as ratio

·         EqualQuantity
Same ratio for each account

·         PctChange1:Portion of the allocation logic is in Trader Workstation (the initial calculation of the desired quantities per account).

·         Profile

The ratio is prescribed by the user

·         Inline Profile

The ratio is prescribed by the user.

·         Model1:
Roughly speaking, we use each account NLV in the model as the desired ratio. It is possible to dynamically add (invest) or remove (divest) accounts to/from a model, which can change allocation of the existing orders.

 

 

 

Basic Examples:

Details:

CTA/FA has 3-clients with a predefined profile titled “XYZ commodities” for orders of 50 contracts which (upon execution) are allocated as follows:

Account (A) = 25 contracts

Account (B) = 15 contracts

Account (C) = 10 contracts

 

Example #1:

CTA/FA creates a DAY order to buy 50 Sept 2016 XYZ future contracts and specifies “XYZ commodities” as the predefined allocation profile. Upon transmission at 10 am (ET) the order begins to execute2but in very small portions and over a very long period of time. At 2 pm (ET) the order is canceled prior to being executed in full. As a result, only a portion of the order is filled (i.e., 7 of the 50 contracts are filled or 14%). For each account the system initially allocates by rounding fractional amounts down to whole numbers:

 

Account (A) = 14% of 25 = 3.5 rounded down to 3

Account (B) = 14% of 15 = 2.1 rounded down to 2

Account (C) = 14% of 10 = 1.4 rounded down to 1

 

To Summarize:

A: initially receives 3 contracts, which is 3/25 of desired (fill ratio = 0.12)

B: initially receives 2 contracts, which is 2/15 of desired (fill ratio = 0.134)

C: initially receives 1 contract, which is 1/10 of desired (fill ratio = 0.10)

 

The system then allocates the next (and final) contract to an account with the smallest ratio (i.e. Account C which currently has a ratio of 0.10).

A: final allocation of 3 contracts, which is 3/25 of desired (fill ratio = 0.12)

B: final allocation of 2 contracts, which is 2/15 of desired (fill ratio = 0.134)

C: final allocation of 2 contract, which is 2/10 of desired (fill ratio = 0.20)

The execution(s) received have now been allocated in full.

 

Example #2:

CTA/FA creates a DAY order to buy 50 Sept 2016 XYZ future contracts and specifies “XYZ commodities” as the predefined allocation profile. Upon transmission at 11 am (ET) the order begins to be filled3 but in very small portions and over a very long period of time. At 1 pm (ET) the order is canceled prior being executed in full. As a result, only a portion of the order is executed (i.e., 5 of the 50 contracts are filled or 10%).For each account, the system initially allocates by rounding fractional amounts down to whole numbers:

 

Account (A) = 10% of 25 = 2.5 rounded down to 2

Account (B) = 10% of 15 = 1.5 rounded down to 1

Account (C) = 10% of 10 = 1 (no rounding necessary)

 

To Summarize:

A: initially receives 2 contracts, which is 2/25 of desired (fill ratio = 0.08)

B: initially receives 1 contract, which is 1/15 of desired (fill ratio = 0.067)

C: initially receives 1 contract, which is 1/10 of desired (fill ratio = 0.10)

The system then allocates the next (and final) contract to an account with the smallest ratio (i.e. to Account B which currently has a ratio of 0.067).

A: final allocation of 2 contracts, which is 2/25 of desired (fill ratio = 0.08)

B: final allocation of 2 contracts, which is 2/15 of desired (fill ratio = 0.134)

C: final allocation of 1 contract, which is 1/10 of desired (fill ratio = 0.10)

 

The execution(s) received have now been allocated in full.

Example #3:

CTA/FA creates a DAY order to buy 50 Sept 2016 XYZ future contracts and specifies “XYZ commodities” as the predefined allocation profile. Upon transmission at 11 am (ET) the order begins to be executed2  but in very small portions and over a very long period of time. At 12 pm (ET) the order is canceled prior to being executed in full. As a result, only a portion of the order is filled (i.e., 3 of the 50 contracts are filled or 6%). Normally the system initially allocates by rounding fractional amounts down to whole numbers, however for a fill size of less than 4 shares/contracts, IB first allocates based on the following random allocation methodology.

 

In this case, since the fill size is 3, we skip the rounding fractional amounts down.

 

For the first share/contract, all A, B and C have the same initial fill ratio and fill quantity, so we randomly pick an account and allocate this share/contract. The system randomly chose account A for allocation of the first share/contract.

 

To Summarize3:

A: initially receives 1 contract, which is 1/25 of desired (fill ratio = 0.04)

B: initially receives 0 contracts, which is 0/15 of desired (fill ratio = 0.00)

C: initially receives 0 contracts, which is 0/10 of desired (fill ratio = 0.00)

 

Next, the system will perform a random allocation amongst the remaining accounts (in this case accounts B & C, each with an equal probability) to determine who will receive the next share/contract.

 

The system randomly chose account B for allocation of the second share/contract.

A: 1 contract, which is 1/25 of desired (fill ratio = 0.04)

B: 1 contract, which is 1/15 of desired (fill ratio = 0.067)

C: 0 contracts, which is 0/10 of desired (fill ratio = 0.00)

 

The system then allocates the final [3] share/contract to an account(s) with the smallest ratio (i.e. Account C which currently has a ratio of 0.00).

A: final allocation of 1 contract, which is 1/25 of desired (fill ratio = 0.04)

B: final allocation of 1 contract, which is 1/15 of desired (fill ratio = 0.067)

C: final allocation of 1 contract, which is 1/10 of desired (fill ratio = 0.10)

 

The execution(s) received have now been allocated in full.

 

Available allocation Flags

Besides the allocation methods above, user can choose the following flags, which also influence the allocation:

·         Strict per-account allocation.
For the initially submitted order if one or more subaccounts are rejected by the credit checking, we reject the whole order.

·         “Close positions first”1.This is the default handling mode for all orders which close a position (whether or not they are also opening position on the other side or not). The calculation are slightly different and ensure that we do not start opening position for one account if another account still has a position to close, except in few more complex cases.


Other factor affects allocations:

1)      Mutual Fund: the allocation has two steps. The first execution report is received before market open. We allocate based onMonetaryValue for buy order and MonetaryValueShares for sell order. Later, when second execution report which has the NetAssetValue comes, we do the final allocation based on first allocation report.

2)      Allocate in Lot Size: if a user chooses (thru account config) to prefer whole-lot allocations for stocks, the calculations are more complex and will be described in the next version of this document.

3)      Combo allocation1: we allocate combo trades as a unit, resulting in slightly different calculations.

4)      Long/short split1: applied to orders for stocks, warrants or structured products. When allocating long sell orders, we only allocate to accounts which have long position: resulting in calculations being more complex.

5)      For non-guaranteed smart combo: we do allocation by each leg instead of combo.

6)      In case of trade bust or correction1: the allocations are adjusted using more complex logic.

7)      Account exclusion1: Some subaccounts could be excluded from allocation for the following reasons, no trading permission, employee restriction, broker restriction, RejectIfOpening, prop account restrictions, dynamic size violation, MoneyMarketRules restriction for mutual fund. We do not allocate to excluded accountsand we cancel the order after other accounts are filled. In case of partial restriction (e.g. account is permitted to close but not to open, or account has enough excess liquidity only for a portion of the desired position).

 

 

Footnotes:

1.        Details of these calculations will be included in the next revision of this document.

2.        To continue observing margin in each account on a real-time basis, IB allocates each trade immediately (behind the scenes) however from the CTA and/or FA (or client’s) point of view, the final distribution of the execution at an average price typically occurs when the trade is executed in full, is canceled or at the end of day (whichever happens first).

3.       If no account has a ratio greater than 1.0 or multiple accounts are tied in the final step (i.e. ratio = 0.00), the first step is skipped and allocation of the first share/contract is decided via step two (i.e. random allocation).

 

SEC Tick Size Pilot Program FAQs

Tick Size Pilot ("TSP" or "Pilot") Program:

Under the TSP Program,  if IBKR receives any order in a Pilot Security that does not conform to the designated pricing increment (e.g., a limit price in a $0.01 increment for a security designated as trading $0.05 increments), IBKR will REJECT that order, subject to limited exceptions. IBKR strongly encourages a thorough review of your software or your vendor’s software to understand the criteria for what causes an order in a Pilot Security to be rejected to permit you or your vendor to make changes to correctly handle orders in Test Group Pilot Securities.
 

FREQUENTLY ASKED QUESTIONS:

 

Q: Is the Tick Size Pilot program still ongoing?
A: On March 29, 2019 the data collection requirements under the National Market System (NMS) plan to implement a Tick Size Pilot Program (Tick Size Pilot) ended. As a result, the Pilot Security File and Change File will no longer be produced on a daily basis. At the conclusion of the pilot, a blank Tick Size Pilot Securities file will be produced and the Change File will be updated to show the deletion of securities from the Tick Pilot Size list.

 

Q: What is the Tick Size Pilot?
A: On May 6, 2015, the SEC approved an amended TSP NMS Plan. The Pilot will be two years in length. Data collection for the Pilot began on April 4, 2016, 6 months prior to the implementation of the trading and quoting rules for the Pilot. Implementation of the trading and quoting rules for the Pilot will begin on October 3, 2016.

The Pilot will be conducted using a Control Group and three Test Groups where variations in quoting and trading rules exist between each group. Please see the TSP NMS Plan for additional information.

 

Q: Will the Pilot quoting and trading rules apply during regular market hours, pre-market hours and post market hours?
A: The Pilot rules apply during all operational hours (pre-market, regular hours, and post market hours trading).

 

Q: Will the Pilot quoting and trading rules apply to odd-lot and mixed-lot sizes?
A: Yes, the Pilot rules to all order sizes.

 

Q: Will orders in Control Group Securities be accepted in price increments of less than $0.05?
A: Yes, orders submitted in price increments of less than $0.05 will continue to be accepted in Control Group securities.

 

Q: Will orders in a Test Group 1, 2 or 3 Pilot Securities be accepted in price increments of less than $0.05?
A: No, unless covered by an exception, orders submitted in price increments of less than $0.05 will be rejected.

 

Q: Which Pilot Security Orders in Test Groups will Interactive Brokers accept at other than $0.05 increments?
        Midpoint orders with no explicitly stated limit price or impermissible offsets will be accepted
        VWAP orders that do not have an explicitly stated limit price or impermissible offsets will be accepted.
        Interactive Brokers will accept Exchange operated Retail Price Improvement orders as follows:
                  Test Group 1 in $0.001 price increments
                  Test Groups 2 and 3 in $0.005 price increments.

 

Q: Will there be any changes to the Opening / Closing processes on Exchanges?
A: Please refer to each of the exchange rules for details but in general, there will be no changes to the Opening / Closing process. All orders entered and eligible to participate in Exchange Opening / Closing Cross will be accepted in increments of $0.05. The Exchanges will begin publishing all quotes in increments of $0.05; however, Net Order Imbalance Indicator prices may be published in increments of $0.025.

 

Q: What will happen to my GTC order that was placed prior to October 3rd in a Pilot Stock that was priced in impermissible tick increments?
A: Interactive Brokers will adjust outstanding limit and stop GTC orders in Pilot stocks in Test Groups that are not in permissible tick increments (e.g., a buy limit order at $5.01 will be adjusted to $5.00 and a sell limit at $5.01 adjusted to $5.05).

 

Q: What will happen to my GTC order placed after October 3rd that was placed and accepted in a nickel tick increment but the Pilot Stock moves from a Test Group to the Control Group that permits non-nickel increments?
A: The GTC order will automatically be able to be revised by the user in non-nickel increments on the date the Pilot stock moves from the Test Group to the Control Group. Similarly, if a stock is added to Test Group due to a corporate action, IBKR will cancel the GTC order if it is priced in impermissible increments.

 

Q: Where can I find out more information?

A: See KB2752 or the FINRA website for additional details regarding the Pilot Program: http://www.finra.org/industry/tick-size-pilot-program

Locating Portfolio Page

The portfolio page allows you to view and montor your current portfolio at the individual position level, including psoition quantity, market value, current bid-ask and profit/loss. Instructions for locating the page vary by trading platform and are outlined below:

TWS Classic - First check to see if you have detached the page from the main window (an option provided by right clicking on the tab). If this is the case, the page will be open but hidden behind the main window. Minimize the main window by clicking on the minimize icon located in the upper-right hand corner of the screen. If you are able to then view the portfolio page and wish to reattach it, simply right click on the tab to open the menu and select the "Attach Page" option.

If the page is not detached, select the "Account Window" option from the top menu bar and then "Portfolio Window" menu option.

 

Mosiac - from the Montor window, click on the small + sign located to the right of any existing monitor tabs. Then select "Portfolio" and this page will reappear.

 

 

Additional Information Regarding the Use of Stop Orders

U.S. equity markets occasionally experience periods of extraordinary volatility and price dislocation. Sometimes these occurrences are prolonged and at other times they are of very short duration. Stop orders may play a role in contributing to downward price pressure and market volatility and may result in executions at prices very far from the trigger price. 

Investors may use stop sell orders to help protect a profit position in the event the price of a stock declines or to limit a loss. In addition, investors with a short position may use stop buy orders to help limit losses in the event of price increases. However, because stop orders, once triggered, become market orders, investors immediately face the same risks inherent with market orders – particularly during volatile market conditions when orders may be executed at prices materially above or below expected prices.
 
While stop orders may be a useful tool for investors to help monitor the price of their positions, stop orders are not without potential risks.  If you choose to trade using stop orders, please keep the following information in mind:
 
·         Stop prices are not guaranteed execution prices. A “stop order” becomes a “market order” when the “stop price” is reached and the resulting order is required to be executed fully and promptly at the current market price. Therefore, the price at which a stop order ultimately is executed may be very different from the investor’s “stop price.” Accordingly, while a customer may receive a prompt execution of a stop order that becomes a market order, during volatile market conditions, the execution price may be significantly different from the stop price, if the market is moving rapidly.
 
·         Stop orders may be triggered by a short-lived, dramatic price change. During periods of volatile market conditions, the price of a stock can move significantly in a short period of time and trigger an execution of a stop order (and the stock may later resume trading at its prior price level). Investors should understand that if their stop order is triggered under these circumstances, their order may be filled at an undesirable price, and the price may subsequently stabilize during the same trading day.
 
·         Sell stop orders may exacerbate price declines during times of extreme volatility. The activation of sell stop orders may add downward price pressure on a security. If triggered during a precipitous price decline, a sell stop order also is more likely to result in an execution well below the stop price.
 
·         Placing a “limit price” on a stop order may help manage some of these risks. A stop order with a “limit price” (a “stop limit” order) becomes a “limit order” when the stock reaches or exceeds the “stop price.” A “limit order” is an order to buy or sell a security for an amount no worse than a specific price (i.e., the “limit price”). By using a stop limit order instead of a regular stop order, a customer will receive additional certainty with respect to the price the customer receives for the stock. However, investors also should be aware that, because a sell order cannot be filled at a price that is lower (or a buy order for a price that is higher) than the limit price selected, there is the possibility that the order will not be filled at all. Customers should consider using limit orders in cases where they prioritize achieving a desired target price more than receiving an immediate execution irrespective of price.
 
·         The risks inherent in stop orders may be higher during illiquid market hours or around the open and close when markets may be more volatile. This may be of heightened importance for illiquid stocks, which may become even harder to sell at the then current price level and may experience added price dislocation during times of extraordinary market volatility. Customers should consider restricting the time of day during which a stop order may be triggered to prevent stop orders from activating during illiquid market hours or around the open and close when markets may be more volatile, and consider using other order types during these periods.
 
·         In light of the risks inherent in using stop orders, customers should carefully consider using other order types that may also be consistent with their trading needs.

How to start multiple TWS sessions on a Mac

Background: 

By default macOS does not allow the user to run multiple sessions of the same application. The following workaround can overcome this limitation in case you need to run the Trader Workstation for more than one user.

 

  • In case running different versions of the TWS is suitable to your needs, please follow the instructions on Procedure 1

  • In case you need multiple sessions of the same TWS version, please follow the instructions on Procedure 2

 

Procedure 1

1) Open the web page ibkr.com

2) Navigate to the menu Technology TWS Software.

3) First download and install one of the auto-updating TWS versions (TWS LATEST or TWS according to your preference).

4) Once you have completed the installation, download and install one of the offline versions (OFFLINE TWS LATEST or OFFLINE TWS according to your preference).

5) You will then see on your Desktop two different Trader Workstation icons. You can use the first shortcut to start the first TWS session and the second one to start the additional one (see Figure 1.). Note: the link containing the version number in the name is the OFFLINE version. This will be a version that needs periodical manual updates.

Figure 1.

 

 

 

 

Procedure 2

1) Launch the first session of the Trader Workstation using the TWS icon present on your Desktop. If you still do not have any Trader Workstation icon, please go to the web page ibkr.com and click on the menu Technology > TWS Software. Then download and install one of the TWS versions displayed.

2) Open the Finder and click on Applications on the left side menu. Then select Utilities and then launch Terminal (see Figure 2.).

Figure 2.

3) The Terminal will appear on the screen and will point to the home folder of your current macOS user. Then enter the commands listed below (see Figure 3.) on your Terminal. After each one, press ENTER on your keyboard.

cd Applications

cd Trader\ Workstation

open -n Trader\ Workstation.app

Figure 3.

4) The login window for your second TWS session will then appear on your Desktop. You can now close the Terminal.

 

Note: the procedure above presumes that the TWS executable is located in the following path: users/yourusername/home/Applications/Trader Workstation/Trader Workstation.app

If at the time you installed the TWS, you selected to install it for all the users of your system, then the TWS executable will be located here:

/Applications/Trader Workstation/Trader Workstation.app

and therefore you would need to issue the following commands in the Terminal:

cd /Applications

open -n Trader\ Workstation.app

 

How to overcome the warning message "The signature of the file is corrupt or invalid"

概観: 

This article describes how to overcome the warning message which you might receive when you download the Trader Workstation or IB Gateway installation packages.

Background: 

Since a Microsoft update has modified the signature validation mechanisms, the Trader Workstation and IB Gateway installation packages might be reported as having an invalid or corrupt signature, although their signature is indeed intact and absolutely valid.

If you are using Microsoft Edge as browser please follow all the steps below. If you are using any other browser start directly from point 3.

 

1. As soon as the installation package has been completely downloaded, you will notice on the bar at the bottom of your browser frame the warning message "The signature of the file tws-... is corrupt or invalid". Please click on the button View Downloads to open the DOWNLOADS panel. 

 

2. Right click on the filename and select Run anyway.

 

 

3. Once the installer has been launched, the SmartScreen filter will display an additional warning message. Click on the link More Info.

 

4. Now click the button Run Anyway to allow the file execution. The installation will then start.

How to install Java on a Linux computer

概観: 
This article will walk you through the process of installing the official Oracle Java platform on your Linux machine.
 
Background: 
There are many Linux distributions available and many of them come with one or more Java platform/s pre-installed. In the vast majority of the cases the Java platform which comes pre-installed on a Linux machine is not the official Oracle Java, but another one such as OpenJKD or IBM Java. 
The Trader Workstation has been developed on the official Oracle Java platform and shows the most stable behavior and the best performances when run by the official Oracle Java process. Therefore we recommend to all the Linux users, who want to run the Trader Workstation, to install the official Oracle Java platform and set it as the preferred Java environment to be used by the operating system.
 

For the purpose of this guide, we will divide the Linux distributions nowadays available into three big families:

  1. APT based Linux distributions (Ubuntu, Mint) - those distributions use the Advanced Packaging Tool to fetch and install software packages in a semi-automatic way, resolving and taking care of dependencies. 
  2. RPM based Linux distributions (Suse, OpenSUSE, Red Hat, CentOS, Fedora, Oracle Linux) - those distributions allow the installation of software packages (.rpm files), which contain the binary files to be installed on the system and an integrated dependency checker script. The .rpm packages allow a simplified and smooth installation of software without requiring a deep knowledge of the system.
  3. Other Linux distributions  - those distributions may or may not use a specific package manager but all of them allow the installation of software using the source code package (.tar.gz) through a series of command to be issued on the Terminal.

 

How to install the official Oracle Java on APT based Linux distributions

The most simple way to install Java on Ubuntu or Mint is using the webupd8 repository. This method will install the latest version of JDK 8 and the JRE 8 browser plugin. The supported versions are: Ubuntu 15.04, 14.10, 14.04, 12.04 - Linux Mint 17.1, 17, 13

For details, please refer to: http://www.webupd8.org/2012/09/install-oracle-java-8-in-ubuntu-via-ppa.html

a. On your Linux machine, open the "Terminal". If you need help with accessing and using the Terminal, please refer to: https://help.ubuntu.com/community/UsingTheTerminal

b. Become root, by typing su on the Terminal and entering the super user password. Instead of becoming root, you can choose to use the sudo feature (which gives your user the root privileges for a single command). If you want to use sudo, just add sudo before each one of the commands you will enter in the Terminal. You will be requested to enter the sudo password.

c. Add the webupd8 repository by tiping add-apt-repository ppa:webupd8team/java Follow the instructions on the screen. You should be asked to press [ENTER] to continue. Once done, the repository will be added.

d. Type the command apt-get update

e. Enter the command: apt-get install oracle-java8-installer The process will download and install automatically the required packages along with their dependencies. Once the command has completed, the Oracle Java platform will be ready to be used.

Should you prefer to have control of all the phases of the installation, instead of relying on the APT facility, please refer to the instructions on this page: http://www.wikihow.com/Install-Oracle-Java-JRE-on-Ubuntu-Linux

 

How to install the official Oracle Java on RPM based Linux distributions

a. On your Linux machine, open the "Terminal". If you need help with accessing and using the Terminal, please refer to: https://help.ubuntu.com/community/UsingTheTerminal

b. Become root, by typing su on the Terminal and entering the super user password. Instead of becoming root, you can choose to use the sudo feature (which gives your user the root privileges for single commands). If you want to use sudo, just add sudo before each one of the commands you will enter in the Terminal. You will be requested to enter the sudo password.

c. Create the folder /usr/java by issuing the command mkdir /usr/java. If the directory already exists you will see a message indicating that. In this case you can proceed directly to point d.

d. Go to the page https://www.java.com/en/download/linux_manual.jsp

e. If you have a 32 bit system, download the file "Linux RPM" . If you have a 64 bit system, download the file "Linux64 RPM". In either case, please instruct your browser to save the file in the folder /usr/java or move the file to that foder once it has been downloaded.

f. Go back to the Terminal and move to the /usr/java folder by typing cd /usr/java

g. List the content of the folder by typing the command ls -la You should see the file you downloaded. It will be called jre-XuYY-linux-ARCH.rpm (where X is the Java family, YY the update number and ARCH will be i586 for 32 bit installer and x64 for 64 bit installer)

h.  Launch this command to perform the installation: rpm -ivh jre-XuYY-linux-ARCH.rpm  Obviously you need to use the real file name, for example jre-8u65-linux-x64.rpm

Once the installation has been performed, the Oracle Java should be ready to be used. Usually a system restart is not required on Linux machines. In case you see warning or error message/s during the installation, please check their content and search the Internet for possible solutions. Most of the time the warning/error messages maight refer to missing dependencies (this means that another package needs to be installed before you can install Java) or to unsufficient privileges (this means that you are launching the command with a regular user instead of "root"). If you cannot find the proper course of actions to overcome the issue, please refer to the support documentation or forums for your current Linux distribution.

 

How to install the official Oracle Java on other Linux distributions

If your Linux distribution does not support RPM or APT package managers, the installation of Oracle Java can be performed manually in this way:

a. On your Linux machine, open the "Terminal".

b. Become root, by typing su on the Terminal and entering the super user password. Instead of becoming root, you can choose to use the sudo feature (which gives your user the root privileges for single commands). If you want to use sudo, just add sudo before each one of the commands you will enter in the Terminal. You will be then required to enter the sudo password.

c. Create the folder /usr/java by issuing the command mkdir /usr/java. If the directory already exists you will see a message indicating that. In this case you can proceed directly to point d.

d. Go to the page https://www.java.com/en/download/linux_manual.jsp

e. If you have a 32 bit system, download the file "Linux" . If you have a 64 bit system, download the file "Linux x64". In either case, please instruct your browser to save the file in the folder /usr/java or move the file to that foder once it has been downloaded.

f. Go back to the Terminal and move to the /usr/java folder by typing cd /usr/java

g. List the content of the folder by typing the command ls -la You should see the file you downloaded. It will be called jre-XuYY-linux-ARCH.tar.gz (where X is the Java family, YY the update number and ARCH will be i586 for 32 bit installer and x64 for 64 bit installer)

h.  Launch this command to perform the installation: tar zxvf jre-XuYY-linux-ARCH.tar.gz  Obviously you need to use the real file name, for example jre-8u65-linux-x64.tar.gz

i. Once done, enter command ls -la You will see the folder /usr/java/jre1.X.0_YY (where X is the Java family, YY the update number)

l.  The Java executables are now present in the folder /usr/java/jre1.X.0_YY/bin 

m. Now check which is the symbolic link used by the system to access the java executables by entering the commands:

which java  - you will receive an output similar to this: /usr/bin/java  From now on we will refer to this path as javasympath.

which javac  - you will receive an output similar to this: /usr/bin/java  From now on we will refer to this path as javacsympath.

which javaws  - you will receive an output similar to this: /usr/bin/java  From now on we will refer to this path as javawssympath.

Unless your are launching the java applications using the full path (for example /usr/java/jre1.X.0_YY/bin/java ...), you would need to tell your system which java executables should be used when a generic java command is issued. In order to to this, you can either update your alternatives files (if your system supports them) or the symbolic links. Here below you can see the instructions, according to your system:

- If your system uses the alternatives files:

n.  Issue the following commands, paying attention to make the necessary substitutions .

update-alternatives --install javasympath java /usr/java/jre1.X.0_YY/bin/java 1

update-alternatives --install javacsympath javac /usr/java/jre1.X.0_YY/bin/javac 1

update-alternatives --install javawssympath javaws /usr/java/jre1.X.0_YY/bin/javaws 1

- If your system does not use the alternatives files:

n. Issue the following commands, paying attention to make the necessary substitutions .

ln -sf  /usr/java/jre1.X.0_YY/bin/java javasympath

ln -sf /usr/java/jre1.X.0_YY/bin/javac javacsympath

ln -sf /usr/java/jre1.X.0_YY/bin/javaws javawssympath

 

Market Data Non-Professional Questionnaire

概観: 

Insight into completing the new Non-Professional Questionnaire.

Background: 

The NYSE and most US exchanges require vendors to positively confirm the market data status of each customer before allowing them to receive market data. Going forward, the Non-Professional Questionnaire will be used to identify and positively confirm the market data status of all customer subscribers. As per exchange requirements, without positively identifying customers as non-professional, the default market data status will be professional. The process will protect and maintain the correct market data status for all new subscribers. For a short guide on non-professional definitions, please see https://ibkr.info/article/2369.

Each question on the questionnaire must be answered in order to have a non-professional designation. As exchanges require positive confirmations of proof for non-professional designations, an incomplete or unclear Non-Professional Questionnaire will result in a Professional designation until the status can be confirmed. 

If the status should change, please contact the helpdesk.

Explanation of questions:

1)    Commercial & Business purposes

a)    Do you receive financial information (including news or price data concerning securities, commodities and other financial instruments) for your business or any other commercial entity?

Explanation: Are you receiving and using the market data for use on behalf of a company or other organization aside from using the data on this account for personal use?

b)    Are you conducting trading of any securities, commodities or forex for the benefit of a corporation, partnership, professional trust, professional investment club or other entity?

Explanation: Are you trading for yourself only or are you trading on behalf of an organization (Ltd, LLC, GmbH, Co., LLP, Corp.)?

c)    Have you entered into any agreement to (a) share the profit of your trading activities or (b) receive compensation for your trading activities?

Explanation: Are you being compensated to trade or are you sharing profits from your trading activities with a third party entity or individual?

d)    Are you receiving office space, and equipment or other benefits in exchange for your trading or work as a financial consultant to any person, firm or business entity?

Explanation: Are you being compensated in any way for your trading activity by a third party, not necessarily by being paid in currency.

2)    Act in a capacity

a)    Are you currently acting in any capacity as an investment adviser or broker dealer?

Explanation: Are you being compensated to manage third party assets or compensated to advise others on how to manage their assets?

b)    Are you engaged as an asset manager for securities, commodities or forex?         
 

Explanation: Are you being compensated to manage securities, commodities, or forex?

c)     Are you currently using this financial information in a business capacity or for managing your employer’s or company’s assets?

Explanation: Are you using data at all for a commercial purposes specifically to manage your employer and/or company assets?

d)    Are you using the capital of any other individual or entity in the conduct of your trading?

Explanation: Are there assets of any other entity in your account other than your own?

3)    Distribute, republish or provide data to any other party

a)    Are you distributing, redistributing, publishing, making available or otherwise providing any financial information from the service to any third party in any manner?

Explanation: Are you sending any data you receive from us to another party in any way, shape, or form?

4)    Qualified professional securities / futures trader

a)    Are you currently registered or qualified as a professional securities trader with any security agency, or with any commodities or futures contract market or investment adviser with any national or state exchange, regulatory authority, professional association or recognized professional body? i, ii
YES☐             NO☐

i) Examples of Regulatory bodies include, but are not limited to,

  • US Securities and Exchange Commission (SEC)
  • US Commodities Futures Trading Commission (CFTC)
  • UK Financial Service Authority (FSA)
  • Japanese Financial Service Agency (JFSA)

ii) Examples of Self-Regulatory Organization (SROs) include, but are not limited to:

  • US NYSE
  • US FINRA
  • Swiss VQF 
Syndicate content