Table of Contents |
---|
...
The network configuration details can be found here: ICE_Multicast_Connectivity_Guide.pdf. Before starting the work with ICE iMpact Handler, make sure that the tunnel application from ICE_iMpactMulticastFeed_GettingStarted is configured to the required feed and running.
The configuration consists of three sections: TCP connection information, multicast groups, and market types definitions.
An application can work with multiple environments, (for example, UAT and Production). Each one has its own destination and source addresses.
Note |
---|
ICE may change the endpoint address or port. For the most recent data related to connections, the user should reach out to ICE. |
...
Legend:
Structure breakdown:
Structure | Description | Example | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
<multicastClientConfig> | ||||||||||
<environment> | An entry with the name of the deployment environment. | |||||||||
name | Name of the environment | APITest | ||||||||
<tcp> | TCP connection attributes | |||||||||
ip | The IP address of the TCP Recovery connection | 63.247.113.77 | ||||||||
port | The port of TCP Recovery connection | 3000 | ||||||||
userName | Username | |||||||||
password | Password | |||||||||
<multicast> | Multicast groups information containing the list of group definitions | |||||||||
<group> | Individual group entry | |||||||||
name | Name of the multicast group | ICE Endex Spot | ||||||||
<fullOrderDepth> | Full Order Depth | |||||||||
<live> | ||||||||||
ip | The IP address for live connections for the Full Order Depth feed | 233.156.208.157 | ||||||||
port | Port for live connections for the Full Order Depth feed | 20157 | ||||||||
<snapshot> | ||||||||||
ip | The IP address for snapshot connections for the Full Order Depth feed | 233.156.208.156 | ||||||||
port | Port for snapshot connections for the Full Order Depth feed | 20156 | ||||||||
<priceLevel> | Top 5 Price Level | |||||||||
<live> | ||||||||||
ip | The IP address for live connections for the Top 5 Price Level feed | 233.156.208.155 | ||||||||
port | Port for live connections for the Top 5 Price Level feed | 20155 | ||||||||
<snapshot | ||||||||||
ip | The IP address for snapshot connections in the Price Level feed | 233.156.208.154 | ||||||||
port | Port for snapshot connections in the Price Level feed | 20154 | ||||||||
includeEnvironment | ||||||||||
envionment | ||||||||||
name | ||||||||||
<multicastGroups> | List of all the enabled multicast groups | |||||||||
<multicastGroup | Entry in the list | |||||||||
name | Name of the multicast group | name="Digital Assets" | ||||||||
isOptions | Indicates whether a group is an Options group. Options only support price level books. There is no Full Order Depth for predefined options markets. | isOptions="false" | ||||||||
isFullyImplied |
| |||||||||
<allMarketTypes> | List of all the market types with their corresponding multicast groups. | |||||||||
<marketType> | An entry of a market type with market type definition according to ICE | |||||||||
code | The value in the ID column from the ICE supported market type spec | code="0" | ||||||||
name | Market type name | name="Financial Gas" | ||||||||
<multicastGroup> | Reference to the multicast group used for getting data | |||||||||
name | Multicast group name from <multicastGroups> definition | name="ICE OTC" |
TCP Connection Information
...
All TCP messages including requests and responses are defined in ICE iMpact Multicast Feed Message Specification.
The static data can be received from ICE or loaded from a file configured with IceImpact::InstrumentLoadParams::filename. Acquiring static data occurs before processing multicast Market Data messages.
Multicast Groups
Multicast groups are for defining multicast feed channels for different markets.
...
Market types that ICE currently supports can be found at the URL below. They can be used in Product Definition and Market Data Requests.
https://www.theice.com/publicdocs/technology/Supported_Market_Types_on_ICE_API.pdf
Configuration Example
Troubleshooting
ICE is dropping non-secure TCP connections / ICE iMpact Market Data handler doesn't receive data from port 3000
Root Cause
ICE requires TLS connections to their market data feeds and drops non-secure connections.
By default, port 443 is used for secure TLS connections and port 3000 is used for non-secure connections.
Solution
Encrypt connection with other proxy applications (e.g. STunnel) and forward a non-secure connection from localhost:3000
to <ice TCP feed>:443.
For example, the first configuration should be changed to the second one, also using the given STunnel configuration.
Old configuration:
Code Block | ||
---|---|---|
| ||
<tcp ip="63.247.112.185" port="3000"
userName="Username"
password="Password"/> |
New configuration:
Code Block | ||
---|---|---|
| ||
<tcp ip="localhost" port="3000"
userName="Username"
password="Password"/> |
STunnel configuration:
Code Block | ||
---|---|---|
| ||
[ICE_MD]
protocol = proxy
client = yes
accept = 127.0.0.1:3000
connect = 63.247.112.185:443 |