FIX session configuration
FIX session attributes can be divided into three groups:
- Static configuration
- Dynamic state
- Dynamic attributes
To create a new session configuration, define the static attributes such as:
- Identification parameters
- Specific parameters of the initiator and acceptor sessions
- Others
Parameters of static configuration define the initial parameters for the dynamic parameters. The static configuration can be changed when the current FIX session is not connected. The parameters of the static configuration can be modified at any time. If the session is connected, the changes are stored in the database and only the latest changes are applied when the session becomes disconnected.
Dynamic state exists only when the session is connected. FIXICC H2 handles the events which are happened during the endpoint's life cycle. These events come from the FIXEdge server. For the dynamic state, the sequence of events is important for tracking.
Dynamic attributes also exist only when the session is connected. FIXICC H2 checks the state of these attributes in a configured time interval. The set of metrics depends on the type of FIXEdge server. For the dynamic attributes, the snapshot at the moment is important.
Static FIX session configuration
- Select a server to add a new session configuration to
Figure. Selecting the server from the list. - Go from the Servers page to the Server Sessions page by:
- Clicking FIX in the View drop-down menu on the top panel (item 1 in the figure above)
- Clicking the server name item in the menu on the left-side and FIX under the server name (items 2 & 3 in the figure above)
- Double-clicking the selected server configuration
- Then FIXICC H2 open the page with the sessions list configured for the selected server
Figure. The server sessions list.
Adding a new FIX session configuration from scratch
To add a new session from scratch:
- Press Add
- Figure. Add a session from scratch.
- Figure. Add a session from scratch.
- Choose the new session role from the Add drop-down menu:
- The initiator is responsible for establishing the connection (TCP/IP) and sends the first Logon message to the Acceptor. There is a set of parameters for initiator sessions.
- The acceptor performs authentication and replies with the confirming Logon message to the Initiator as a declaration that the FIX session has been established. In case of a connection failure, the Acceptor waits until the Initiator initiates reconnection. There is a set of parameters for acceptor sessions.
You can also create a new session configuration by:
- Clicking Create Acceptor Session or Create Initiator Session in the context menu
- When you select a new session role, FIXICC H2 opens the New session page
Create an acceptor session
To create a new acceptor session:
- Select Acceptor from either:
- The Add drop-down button (item 1 in the figure below)
- The context menu (item 2 in the figure below)
- Figure. The Add Acceptor Session option.
- FIXICC H2 opens the New session for a new acceptor session
Figure. Acceptor session parameters.
The acceptor session allows setting the Reset Threshold parameter.
Create an initiator session
To create a new initiator session:
- Select Initiator from either:
- The Add drop-down button (item 1 in the figure below)
- The context menu (item 2 in the figure below)
- Figure. Add an initiator session.
- FIXICC H2 opens the New session page for a new initiator session.
The initiator session has a specific, mandatory set of parameters to establish a connection:
- Host - Defines the network IP address of the computer to which the connection is established
- Port - Defines the port network number on the computer to which the connection is established
- HeartbeatInterval - Defines the heartbeat interval (seconds) – a time interval between Heartbeat messages. The recommended value is 10 seconds for dedicated connections or private networks. Trading connections via the internet requires calibration. '0' means that no Heartbeat messages will be sent.
You can see the parameters in the figure below.
Figure. Initiator session parameters.
Complete adding a new session configuration
After you've defined the mandatory connection parameters (Host, Heartbeart Interval, and Port), define the mandatory identification parameters that are highlighted in red in the figure above:
- Name - unique session identifier
- SenderCompID - the key parameter for purposes of session identification. Sets value of SenderCompID (49) tag in outgoing FIX messages.
- TargetCompID - the key parameter for purposes of session identification. Sets value of TargetCompID (56) tag in outgoing FIX messages.
- FIX Version - identifies the beginning of a message and the protocol version (Tag = 8)
You can find the full list of session parameters and descriptions here: FIX session configuration for FIXEdge Java.
After specifying all the details, you have the following options:
- Save the new session configuration by clicking OK.
If all mandatory parameters are specified and the Name, SenderCompID, TargetCompID are unique, then a new session is added to the selected server and FIXICC H2 displays the sessions table including the new session configuration.
If the session name is not unique, FIXICC H2 displays the error form with the message "Session <session-name> already exists".
If the session SenderCompID and TargetCompID are not unique, FIXICC H2 displays the error form with message "Session with <SenderCompID> and <TargetCompID> already exists"
When you click the X button, FIXICC H2 displays the New session page again to change the duplicated parameters.
If mandatory parameters aren't specified, FIXICC H2 displays the alert form:
Figure. The alert form for empty session mandatory parameters.
After the alert form is hidden, FIXICC H2 displays the New session page again to fill in the mandatory parameters.
- Cancel the operation by clicking Cancel. Then FIXICC H2 displays the sessions table without changes
- Leave the page. If you edited the session parameters, FIXICC H2 displays the following warning form:
Figure. The warning form.
FIXICC H2 offers the following options:- Save the entered values as a new session configuration
Then a new session is added to the selected server and FIXICC H2 displays the sessions table, including the new session configuration - Skip the changes by clicking Don't save
The new session configuration won't be added. FIXICC H2 displays the sessions table without changes. - Stay on the New session by clicking Cancel
FIXICC H2 displays New session to continue the editing
- Save the entered values as a new session configuration
Cloning an existing FIX session configuration
You have the ability to create a new session by cloning an existing one and changing the unique parameters.
- To clone a session, select the session from the session list and click Clone.
Figure. The Clone button.
or
- Go to the Session Dynamic State page
- Click the Clone item from the additional menu:
Figure. The Clone item from the additional menu.
FIXICC H2 copies the selected session parameters to a new session and displays the New session with the fields filled with the values from the selected session.
Figure. Cloned session.
A cloned session is added with the same identification parameters as the original session
You have the same options as you'd see when a new session is created from scratch:
Save a new session configuration by clicking OK.
If all mandatory parameters are specified and the Name, SenderCompID, TargetCompID are unique, then a new session is added to the selected server and FIXICC H2 displays the sessions table including the new session configuration.If the session name is not unique, FIXICC H2 displays an error form with the message "Session <session-name> already exists".
If the session SenderCompID and TargetCompID are not unique, FIXICC H2 displays an error form with the message "Session with <SenderCompID> and <TargetCompID> already exists";
When you click the X button, FIXICC H2 displays the New session page again to change the duplicated parameters.
If mandatory parameters aren't specified, FIXICC H2 displays the following alert form:
Figure. The alert form for empty session mandatory parameters.
After the alert form is hidden, FIXICC H2 displays the New session page again to fill in the mandatory parameters.
- Cancel the operation by clicking Cancel. Then FIXICC H2 displays the sessions table without changes.
- Leave the page. If you edited the session parameters, FIXICC H2 displays the following warning form:
Figure. The warning form.
FIXICC H2 offers the following options:- Save the entered values as a new session configuration.
A new session is added to the selected server and FIXICC H2 displays the sessions table, including the new session configuration. - Skip the changes by clicking the Don't save.
The new session configuration won't be added. FIXICC H2 displays the sessions table without changes. - Stay on the New session page by clicking Cancel.
FIXICC H2 displays the New session page to continue the editing.
- Save the entered values as a new session configuration.
Modifying an existing FIX session configuration
You have the ability to edit an existing session configuration.
- Select the session from the sessions list configured for the server.
- Figure. Edit session.
- Figure. Edit session.
- Select one of the following options to edit the session:
- Click Edit on the top panel (item 1 in the figure above)
- Select Edit in the context menu (item 2 in the figure above)
- Start editing the session by pressing Ctrl+E on your keyboard
or
- Go to the Session Dynamic State page
- Click the Edit item from the additional menu:
- Figure. The Edit item from the additional menu.
- FIXICC H2 displays the Modify session page. You can change selected session static parameters.
Figure. Modify session.
- After you finished the changes, follow the same flow as when a new session is created:
To save the changed session configuration, click OK
If all mandatory parameters are specified and the SenderCompID and TargetCompID are unique, then the session is modified and FIXICC H2 displays the sessions table including the modified session configuration.If the SenderCompID and TargetCompID are not unique, FIXICC H2 displays an error form with the message "Session with <SenderCompID> and <TargetCompID> already exists" (example below)
When you click the X button, FIXICC H2 displays the Modify session page again to change the duplicated parameters.
If the mandatory parameters aren't specified, FIXICC H2 displays the following alert form:
Figure. The alert form for empty session mandatory parameters.After the alert form is hidden, FIXICC H2 displays the Modify session page again to fill in the mandatory parameters.
Cancel the operation by clicking Cancel.
Then FIXICC H2 displays the sessions table. The selected session is not changed.Leave the page. If you edited the session parameters, FIXICC H2 displays the following warning form:
Figure. The warning form.
FIXICC H2 offers the following options:- Save the changes by clicking Save.
FIXICC H2 displays the sessions table. The selected session is modified. - Skip the changes by clicking Don't save.
FIXICC H2 displays the sessions table. The selected session is not changed. - Stay on the Modify session page by clicking Cancel.
FIXICC H2 displays the Modify session page to continue the editing.
- Save the changes by clicking Save.
Copy session to another server
To copy a selected session's configuration to the target server configuration:
- Select the session you want to copy
- Choose Copy to server from either:
- The top panel of the Server Sessions page (item 1 in the figure below)
- Figure. The Copy to server button
or - The additional menu in the Session Dynamic State page (item 2 in the figure below)
- Figure. The Copy to server option.
FIXICC H2 shows a list of configured servers, where you can choose the target server configuration:
Note: The schedule configuration bond with the copied session won't be copied to the target server. The session configuration on the target server starts and stops with the server. You can bind a copied session with a new schedule if it is needed.
Figure. The "Select Server" form.
- You can:
- Select a server from the list and click Select
- Then FIXICC H2 copies the session configuration to the selected server and open the Session Dynamic State page for a new session
- Click Cancel to cancel the operation
- Select a server from the list and click Select
If the session name is not unique, FIXICC H2 displays the error form with the message "Session <session-name> already exists".
If the session SenderCompID and TargetCompID are not unique, FIXICC H2 displays the error form with message "Session with <SenderCompID> and <TargetCompID> already exists"
If for some reason FIXICC H2 can't complete this operation, it displays an error form.
In this case, the session configuration won't be copied to the selected server.
Removing an existing FIX session configuration
You have the ability to remove an existing session configuration.
Figure. Remove session.
To remove a session:
- Choose one of the following options:
- Click Remove in the top panel (item 1 in the figure above)
- Select Remove in the context menu (item 2 in the figure above)
- Press Ctrl+Backspace on your keyboard
or
- Go to the Session Dynamic State page
- Click the Remove item from the additional menu:
- Figure. The Remove item from the additional menu.
- FIXICC H2 displays the following confirmation window:
Figure. Confirmation window.
You have two options:
Confirm the removal by clicking Yes.
FIXICC H2 displays the server details page with session configuration removed from the pageA running session is disconnected and stopped first and then removed and unbound from the schedule.
- Cancel removing the session configuration by clicking No.
FIXICC H2 displays the sessions list without changes.
Session and schedule binding
A session can start and stop with the server or according to a custom schedule.
You can choose a schedule when you add a new session configuration on the New session page:
Figure. The default Scheduler section.
You can also configure the sequence numbers of a new session to reset on start by checking the Reset sequence numbers on start checkbox or while editing a session on the Modify session page.
Figure. The Scheduler section.
By default, the Session starts/stops with the server option is activated and the session starts and stops with the server (item 1 in the figure above).
When Session starts/stops with the server is selected, the session starts right after editing is finished.
When you select Session starts/stops according to the schedule (item 2 in the figure above), you have the ability to:
- Select a schedule name from the drop-down list by clicking the symbol (item in the figure above). When you click the schedule name, the Schedule Name, Start Time, Terminate Time, Time Zone fields are filled with the schedule parameters
- Clear the Schedule Name, Start Time, Terminate Time, Time Zone fields by clicking the symbol (item 5 in the figure above)
- See the list of sessions bound with the current schedule by clicking the View sessions button (item 6 in the figure above)
- Open the Server Schedules page in the popup window by clicking the symbol
- When you select the schedule name and click Select (item 1 in the figure below) in the Server Schedules, the Server Schedules page close and the Schedule Name, Start Time, Terminate Time, Time Zone fields are filled with the schedule parameters
- When you click Cancel (item 2 in the figure below), the Server Schedules page is closed and the initial page is shown without changes
(item 4 in the figure above)
Figure. The "Server Schedules" in the popup window.
You can also Create (item 3 in the figure above), Edit (item 4 in the figure above), and Remove (item 5 in the figure above) the schedule configuration in the Server Schedules popup window.
The schedules list can be filtered by using the Default Filter.
You can also use the Extended Filter for searching server information.
When you specify the custom schedule for the current session, the View sessions button (item 6 in the "The Scheduler section" figure) is enabled and you can open the Schedule Details page in a new tab by clicking it.
To finish the binding, click OK.
FIXICC H2 binds the current session with the selected work mode:
- If Session starts/stops with the server is selected
- If Session starts/stops according to the schedule is selected and Schedule Name is specified
If the binding operation failed, an error form and the following notification are shown.
Figure. The binding error form.
Dynamic FIX session configuration
Server Sessions
You can monitor the dynamic state of the configured sessions for a given server.
Figure. The Servers page.
Go from the Servers page to the server you choose by using one of the following options:
- Click FIX in the View drop-down menu on the top panel (item 1 in the figure above)
- Click a server name in the left-side menu > FIX (items 2 and 3 in the figure above)
- Double-click the selected server configuration
Now you can see the session monitoring layout.
Figure. The Server Sessions page.
The first column of the table contains the session status indicator. This parameter shows the dynamic status of each session configured for the selected server.
You can easily detect the session status according to the following list:
Indicator | Status | Session status |
---|---|---|
Initial | the session has been added to the FIXICC H2 database but is absent in the FIXEdge configuration | |
Connecting/ Reconnecting/Listening | the initiator session is connecting/ acceptor session is waiting for logon message | |
Running | the session is running (initiator and acceptor sessions are connected) | |
Running | the initiator session is running (initiator session is connected to the backup acceptor session) | |
Disconnected | the session is disconnected |
You can also see the Status column so you can filter the displaying list of the sessions by dynamic status.
You can monitor the changing of the session metrics and sessions state just by staying at the layout.
The dynamic session parameters are changed as a response to the session events during the connection.
The frequency with which the metrics values are updated can be configured. The default value is 1 second.
Filtering
You have the ability to filter the sessions list by using the Default Filter.
You can filter sessions by Status, Name, SenderCompID, TargetCompID, or a combination of them.
You can also use the Extended Filter for searching server information.
Session Dynamic State
To see the dynamic state and metrics of the selected session, click on the selected session in the Server Sessions page in the sessions table in the Table view layout part.
FIXICC H2 displays the Session Dynamic State page in the Object info layout part.
You can also open the Session Dynamic State page in a new tab:
- By clicking View (item in the figure below)
- By clicking View in the tab in the Object info layout part (item 2 in the figure below)
- By clicking View (Enter) context menu item (item 3 in the figure below)
- By double-clicking on the selected session
- Or by pressing Enter on your keyboard
Figure. The Server Sessions page.
Or you can go to the Session Dynamic State page from the Notifications page by clicking the name of the selected session.
Figure. The Notifications page with the name of the selected session.
Or you can go to the Session Dynamic State from the Notification Details page by clicking the Event Source the notification refers to.
Figure. The Notification Details page.
Or you can go to the Session Dynamic State from the Schedule Details page by clicking the View in tab item in the context menu of the sessions table:
Figure. The View in tab item on the Schedule Details page.
FIXICC H2 opens the Session Dynamic State page in a new tab:
Figure. Session Dynamic State.
The Session Dynamic State page contains:
- the session dynamic parameters
- parameters of static configuration
- schedule (when the session starts/stops with the server, the Schedule name field is specified with the Server line, and schedule parameters are hidden except Reset Sequence Numbers on start)
- metrics
- drop-down menus with operations
All information is updated in real-time.
Detailed information about the menus with session operations is in the Session operations section.