Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Overview

Reuters Bridge is the an adaptor which is used for communication between financial information exchange protocols - Thomson Reuters Ticket Output Feed (TOF) и Financial Information eXchange (FIX).

Thomson Reuters Ticket Output Feed (hereinafter TOF) - financial information exchange protocol which is distributed by the  Thomson Reuters. TOF provides possibility for subscription and receiving data related to deals.

Financial Information eXchange (hereinafter FIX) - an open procolol protocol which is a standard for exchanging financial data and making transactions in real time.

Reuters Bridge works as a service for receiving data by systems which support FIX protocol from systems which support TOF protocol, i.e. data is transmitted only in the direction from TOF server to FIX server. While working Reuters working, Reuters Bridge acts as a client for both FIX server and TOF server. 

Package structure description

The Reuters Bridge programm program module is distrubuted distributed as an archive. Reuters Bridge can work as a console application (ReutersBridge.exe --run console) or as a windows Windows service.

Package structure

Name of the file/directoryDescription
ReutersBridge.exeExecutable program file
log4cxx.dllLogging library
log4cxx.propertiesLogging configuration
config.cfgBasic Reuters Bridge configuration file
fix.engine.propertiesBasic FIX library configuration file
logsDirectory for FIX Antenna logs
 

backup
docSupporting documentation
 

Reuters Bridge Specification.pdfReuters Bridge specification in English
 

Reuters Bridge Specification.pdf (in Russian)Reuters Bridge specification in Russian
 

Reuters Bridge Mapping Table.pdfMapping table for converting fields from TOF format to FIX format
fixdic44.xmlFIX4.4 dictionary
rb-additional.xmlExtension of FIX4.4 dictionary with a set of custom tags

License information

License information is kept in in the ‘engine.license’ file which is provided separately from the installation package. Need to put the license file to the root Reuters Bridge directory ('./ReutersBridge/'). In order to update license, it is enough to replace the existing license file with new one.

Note: Reuters Bridge won't work without license or with an expired license. If your license has expired or was lost, contact sales@btobits.com to obtain the new one;.

Installation procedure

Installation of the Reuters Bridge can be performed by following step-by-step instruction described below:

  1. Create a directory on the local disk (e.g c:\b2bits);
  2. Unpack the downloaded archive with Reuters Bridge to the created directory;
  3. Adjust configuration files for your current business needs;
  4. Open the command line and go to the application directory (e.g., cd c:\b2bits\ReutersBridge);
  5. Use the following command to initiate application installation: ReutersBridge.exe --run install

Functionality description

The Reuters Bridge program module performs the following main functions:

  • supports FIX 4.4 protocol and TOF-protocol described in Reuters Bridge specification «Thomson Reuters Dealing - Datafeed TOF/IP & TOF/Serial User Guide» in version 4.7.10;
  • allows to set setting up and keep keeping a connection between TOF-protocol data source and FIX-protocol data source;
  • converts received TOF messages to FIX format;
  • sends converted messages from TOF server to FIX server;

Supported message types

Reuters Bridge supports the following message types:

FIX -> Reuters Bridge:

  • Session Level Messages (Heartbeat (0), Logon (A), Logout (5), Reject (3), Resend Request (2), Sequence Reset (4), Test Request (1))

...

  • Session Level Messages (Heartbeat (0), Logon (A), Logout (5), Reject (3), Resend Request (2), Sequence Reset (4), Test Request (1))
  • Trade Capture Report (MsgType = ‘AE’)

Supported deal types

Below is the list of deal types, for which Reuters Bridge supports their mapping to FIX format and transmitting to FIX server:

...

Below is the main Use Case scenario of the Reuters Bridge programm program module:

  1. Reuters Bridge establishes a session with FIX server;
  2. Reuters Bridge establishes a connection with TOF server;
  3. For each Dealing Server identifier specified in the configuration file Reuters Bridge sends a request to TOF server to receive deals;
  4. In case of successful processing, TOF server sends range of deals related to the requested Dealing Server identifier;
  5. Reuters Bridge constructs requests for deal data and related conversation for each deal from the range and sends them to TOF server;
  6. In case of successful requests processing, TOF server sends couple of messages which contain data about deal and related conversation;
  7. For each found pair "deal/conversation"  Reuters pair, Reuters Bridge checks the deal type;
  8. If the deal type is supported by Reuters Bridge, it performs conversion of linked TOF messages which contain "deal/conversation" data to FIX message Trade Capture Report (MsgType = ‘AE’) according to the mapping rules (see the Mapping rules section for details);
  9.  In case converting If the conversion is successful, Reuters Bridge sends FIX message Trade Capture Report (MsgType = ‘AE’) to FIX server.

Alternative scenarios:

Step 4, 6:

in In case a request processing failed, TOF server sends Status Response (407) message which is processed by Reuters Bridge in the following way:

  • If Status = 96 (Connection Restored), Reuters Bridge writes corresponding INFO record to the log;
  • If Status = 26 (Rejected, Try Again), Reuters Bridge writes corresponding WARNING record to the log and sends repeated request to TOF server;
  • else Reuters Bridge writes corresponding ERROR record to the log.

Step 8:

In case the defined deal type is not supported by Reuters Bridge, it writes the corresponding record to the log, "deal/conversation" pair conversion is considered as completed.

...

In case conversion failed, Reuters Bridge writes the corresponding record to the log, "deal/conversation" pair conversion is considered as completed.

...

Detailed mapping rules are described in the article  Reuters Bridge Mapping Table article.

Configuration

Common settings of the Reuters Bridge can be configured by means of the configuration file  config.cfgcfg configuration file. It allows you to configure common properties of the application, TOF server's parameters, FIX server's parameters and logging parameters.

Table The table below represents all available configurable properties:

Name

Type

Description

Application section

App.Storage

Path

Path and name of the file where Reuters Bridge keeps the current state for the recovery procedure.

App.DayStartTime

HH:mm

Start time of the day. Defines the time of session establishment and start of data transferring.

App.DayEndTime

HH:mm

End time of the day. Defines the time of completion of data transferring and session closure until the next day.

TOF protocol section

TOF.SID

String

Identifier of the TOF-server's client.

TOF.Server.Host

Host

IP-address or DNS-name of the TOF-server's host.

TOF.Server.Port

[1..65535]

TOF-server's port.

 5003 – value by default.

TOF.Client.Port  

[0..65535]

TOF-client's port.

 – any free port;

 5004 – value by default, for servers with a high level of security.

TOF.DealingServers

String

Dealing Server Identifier.

Supports multiple values delimited by semicolon.

TOF.MaxSimultaneousRequests                   

Amount

Number of concurrent requests sent to the server.

0 – unlimited;

1 – value by default.

TOF.Session.Reconnect.MinTimeout

Seconds

The minimum value of the timeout between attempts to reconnect to the server.

5 – value by default.

TOF.Session.Reconnect.MaxTimeout

Seconds

The maximum value of the timeout between attempts to reconnect to the server.

60 – value by default.

TOF.Session.Reconnect.TimeoutIncrement

Seconds

Value on which timeout increases after each failed connection attempt (until reaches the value TOF.Session.Reconnect.MaxTimeout).

5 – value by default.

TOF.Message.Tickets.MinNumber

Int, > 0

Minimum number of the deal message used by server.

1 – value by default.

Note: 

please

see TOF protocol documentation for rules of messages numbering.

TOF.Message.Tickets.MaxNumber

Int, > 0

Maximum number of the deal message used by server.

999999 – value by default.

Note: 

please

see TOF protocol documentation for rules of messages numbering.

TOF.Debug.MessagesLog.Enable

[true|false]

Enables/disables saving incoming TOF messages to separate file on the disk.

TOF.Debug.MessagesLog.Dir

Path

Path to the directory for saving incoming TOF messages.

FIX protocol section

FIX.Properties.File

Path

Path and name of the FIX library configuration file (fix.engine.properties).

FIX.Sender.ID

String

Identifier of the FIX-server's client.

FIX.Target.ID

String

FIX-server identifier.

FIX.Version

[4.0, 4.1, 4.2, 4.3, 4.4, 5.0]

Used FIX protocol version.

4.4 – recommended value.

FIX.Target.Host

Host

IP-address or DNS-name of the FIX-server's host.

FIX.Target.Port

[1..65535]

FIX server port.

9106 – value by default.

FIX.HeartBeatInterval

Seconds

Heartbeat interval for FIX protocol.

30 – value by default.

FIX.Session.Reconnect.MinTimeout

Seconds

The minimum value of the timeout between attempts to reconnect to the server.

5 – value by default.

FIX.Session.Reconnect.MaxTimeout

Seconds

The maximum value of the timeout between attempts to reconnect to the server.

60 – value by default.

FIX.Session.Reconnect.TimeoutIncrement

Seconds

Value on which timeout increases after each failed connection attempt (until reaches the value FIX.Session.Reconnect.MaxTimeout).

5 – value by default.

FIX.Session.StatusCheckTimeout

Seconds

Interval for checking status of the FIX session.

30 – value by default.

Logging section

RBLog.log4cxx.Config

Path

Path to the logging configuration file.

FIX level setting can be configured by means of of the fix.engine.properties file.

Reuters Bridge as a Windows

...

service 

Generally, for work with windows Windows services, the following commands are used:

rem Service Installation

ReutersBridge --name <Service name> --config <path to cfg file> --run install

 


rem Service Uninstallation

ReutersBridge --name <Service name> --run uninstall

If If the --name parameter is not specified,  «ReutersBridge» "ReutersBridge" will be used.

If If the --config parameter is not specified, «<path "<path to the executable file>/config.cfg» will cfg" will be used.

Note: If the application works as a service, paths in configuration files must be absolute.

...

All incoming and outgoing messages can be logged for furher further analysis and troubleshooting.

...

Logging is configured by means of the configuration files the config.cfg   and log4cxx.propertiesproperties configuration files. Refer to article the How to configure logging and logs rotation in Reuters Bridge for  article for detailed instructions.

Error diagnosis by means of command line

Generally, error diagnosis is performed by means of application logs. However, sometimes (e.g. for the cases which can take place before logging subsystem initialization is done) it can be useful to run the application in command in the command line mode.

To run the application in command line mode, you need to:

  1. Open the Windows command line and go to the application directory (e.g., cd c:\b2bits\ReutersBridge);
  2. Run the application using the following command: ReutersBridge.exe --run console

Below is the list of console parameters:

Parameter

Arguments

Description

--run

console

Application launch in command line mode.

install

Application service installation.

uninstall

Application service uninstallation.

--config

Path

Allows to use specified configuration file.

--xml-storage

Path

Allows to use specified state file.

--dbg-no-fix

 


Debug parameter - disables transmitting messages to FIX server.

--dbg-tof-file

Path

Allows to replay messages from the log file (see TOF.Debug.MessagesLog.Enable and TOF.Debug.MessagesLog.Dir configuration properties). Connection to TOF server is not established.

--dbg-tof-rate

Number of messages in second

Defines the number of messages to be replayed in one second. Is used together with dbg-tof-file parameter. Default value 1.

--dbg-tof-cyclic

 


Defines the mode of cyclic logs replay. Is used with dbg-tof-file parameter. Default valuedisabled.