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

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

  1. Select a server to add a new session configuration to
    Figure. Selecting the server from the list.

  2. 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

  3. Then the FIXICC H2 opens 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:

  1. Press Add
    1. Figure. The Server Sessions page.

  2. 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:

  1. Clicking Create Acceptor Session or Create Initiator Session in the context menu
  2. When you select a new session role, the FIXICC H2 opens the New session page

Create an acceptor session

To create a new acceptor session:

  1. 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.
  2. FIXICC H2 then opens the New session page for a new acceptor session

Figure. Acceptor session parameters.

Create an initiator session

To create a new initiator session:

  1. 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.

  1. The FIXICC H2 then 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 are 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: Configuring FIX sessions.


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 the FIXICC H2 displays the sessions table including the new session configuration.

    If the session name is not unique, the FIXICC H2 displays the error form with the message "Session <session-name> already exists".

    If the session SenderCompID and TargetCompID are not unique, the FIXICC H2 displays the error form with message "Session with <SenderCompID> and <TargetCompID> already exists"


    When you click the X button, the FIXICC H2 displays the New session page again to change the duplicated parameters.

    If mandatory parameters aren't specified, the FIXICC H2 displays the alert form:

    Figure. The alert form for empty session mandatory parameters.

    After the alert form is hidden, the FIXICC H2 displays the New session page again to fill in the mandatory parameters.

  • Cancel the operation by clicking Cancel. Then the FIXICC H2 displays the sessions table without changes

  • Leave the page. If you edited the session parameters, the FIXICC H2 displays the following warning form:

    Figure. The warning form. 

    The 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 the 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. The FIXICC H2 displays the sessions table without changes.
    • Stay on the New session by clicking Cancel
      The FIXICC H2 displays New session to continue the editing

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:

  1. To clone a session, select the session from the session list and click Clone.

Figure. The Clone button.

or

  1. Go to the Session Dynamic State page
  2. Click the Clone item from the additional menu:

Figure. The Clone item from the additional menu.

The FIXICC H2 copies the selected session parameters to a new session and displays the New session page 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 the FIXICC H2 displays the sessions table including the new session configuration.

    If the session name is not unique, the FIXICC H2 displays an error form with the message "Session <session-name> already exists".

    If the session SenderCompID and TargetCompID are not unique, the FIXICC H2 displays an error form with the message "Session with <SenderCompID> and <TargetCompID> already exists";


    When you click the X button, the FIXICC H2 displays the New session page again to change the duplicated parameters.

    If mandatory parameters aren't specified, the FIXICC H2 displays the following alert form:

    Figure. The alert form for empty session mandatory parameters.

    After the alert form is hidden, the FIXICC H2 displays the New session page again to fill in the mandatory parameters.


  • Cancel the operation by clicking Cancel. Then the FIXICC H2 displays the sessions table without changes.
  • Leave the page. If you edited the session parameters, the FIXICC H2 displays the following warning form:

    Figure. The warning form. 

    The 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 the 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. The FIXICC H2 displays the sessions table without changes.
    • Stay on the New session page by clicking Cancel.
      The FIXICC H2 displays the New session page to continue the editing.

Modifying an existing FIX session configuration

You have the ability to edit an existing session configuration.

  1. Select the session from the sessions list configured for the server.
    1. Figure. Edit session.
  2. 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

  1. Go to the Session Dynamic State page
  2. Click the Edit item from the additional menu:
    •  
    • Figure. The Edit item from the additional menu.
  3. The FIXICC H2 displays the Modify session page. You can change selected session static parameters.
    1. Figure. Modify session.
  4. After you finished the changes, follow the same flow as when a new session is created:
    • Save the changed session configuration by clicking OK.

      If the mandatory parameters aren't specified, the FIXICC H2 displays the following alert form:


      Figure. The alert form for empty session mandatory parameters.

      After the alert form is hidden, the 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, the FIXICC H2 displays the following warning form:


      Figure. The warning form. 

      The FIXICC H2 offers the following options:
      • Save the changes by clicking Save.
        The FIXICC H2 displays the sessions table. The selected session are modified.
      • Skip the changes by clicking Don't save.
        The FIXICC H2 displays the sessions table. The selected session is not changed.
      • Stay on the Modify session page by clicking Cancel.
        The FIXICC H2 displays the Modify session page to continue the editing.

Copy session to another server

To copy a selected session's configuration to the target server configuration:

  1. Select the session you want to copy
  2. 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 item from the additional menu.


  3. 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.

  4. 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

If the session name is not unique for the selected server, the FIXICC H2 displays an error form with the message "Session <session-name> already exists".

If the session SenderCompID and TargetCompID are not unique for the selected server, the FIXICC H2 displays an error form with the 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:

  1. 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

  1. Go to the Session Dynamic State page
  2. Click the Remove item from the additional menu:
    •  
    • Figure. The Remove item from the additional menu.
  3. The FIXICC H2 displays the following confirmation window:

    Figure. Confirmation window.
    You have two options:
    • Confirm the removal by clicking Yes.
      The FIXICC H2 displays the server details page with session configuration removed from the page

       A running session is disconnected and stopped first and then removed and unbound from the schedule.

    • Cancel removing the session configuration by clicking No.
      The FIXICC H2 displays the sessions list without changes.

Session and schedule binding

A session can be configured to start and stop with the server or according to a custom schedule.

You can choose a schedule either:

  • When you add a new session configuration in the New session page

Figure. The default Scheduler section.

  • Or while editing the session on the Modify session page

Figure. The Scheduler section.


You can configure all sessions to start and stop with the server.

You should comment FixLayer.FixEngine.Sessions.DefaultStartTime and FixLayer.FixEngine.Sessions.DefaultTerminateTime properties in the FIXEdge.properties file.

In this case, when no custom schedule was configured for the session then the session starts right after editing is finished.

In the Scheduler section, you have the ability to:

  • Select a schedule name from the drop-down list by clicking the  symbol (item 1 in the figure above). When you click the schedule name, the Schedule Name, Start Time, Terminate Time, Connect Time, Disconnect Time, Days Off, Time Zone fields are specified with the schedule parameters
  • Clear all fields by clicking the  symbol (item 3 in the figure above)
  • When the Schedule Name is specified, see the list of sessions bound with the current schedule by clicking View sessions (item 4 in the figure above). The Schedule Details page opens in a new tab.
  • Open the Server Schedules page in a popup window by clicking the  symbol (item 2 in the figure above).
    • When you select the schedule name and click Select (item 1 in the figure below) on the Server Schedules page, the Server Schedules page is closed and the initial page is shown. The schedule parameters are specified with the values from the selected schedule.
    • When you click Cancel (item 2 in the figure below), the Server Schedules page is closed and the initial page is shown without changes.
    • 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.


Figure. The "Server Schedules" in the popup window.

The schedules list can be filtered by using the Default Filter.

The Default Filter depends on the type of objects that are shown on the current page.

To use the Default Filter, type or select a value in the Default Filter fields.
To start a search, move the focus from the completed field or press Enter.
To reset the search results:

  • Click Clear (item 1 in the figure below)

    Figure. Default Filter.

  • Or click Clear in the context menu (as shown below)

    Figure. The Clear context menu item.

Then you can see a full list of rows.

You can also use the Extended Filter for searching server information.

The Extended Filter allows adding custom search conditions.

To add a new search condition:

  1. Click Add search condition (item 1 in the figure below)

    Figure. The Extended Filter.

  2. To specify the parameter you want to search for in the "Add condition" form, either:
    • Select it from the list
      or
    • Type the parameter name in the Filter field

      Figure. The "Add condition" form.
  3. To confirm your choice, click Select or to cancel the operation, click Cancel
  4. Select an operation type from the drop-down list according to the parameter type 

    Figure. The operations list.

To start a search:

Click Refresh (item 1 in the figure below)

Figure. The Refresh button.

To remove a filter condition:

Click to see the full list of objects

Figure. The removing condition symbol.

To reset search results:

  • Select the <Reset Filter> from the drop-down menu in the Refresh button

    Figure. Reset Filter operation.

  • Or click Clear in the context menu 

    Figure. The Clear context menu item.

To save a filter:

  1. When you add a list of conditions, click the   button and select the save option
  2. Add the mandatory information to save the filter
  3. Click OK to confirm the changes or click Cancel to cancel the operation


To finish the binding, click OK (see Figure. The Scheduler section, or Figure. The default Scheduler section).

The FIXICC H2 binds the current session with the selected schedule if one was specified.

To cancel all changes, click Cancel (see Figure. The "Scheduler" section, or Figure. The default "Scheduler" section).

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

To monitor the dynamic state of the configured sessions for a given server:

  • 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
      Figure. The Servers page.

Now you can see the session monitoring layout.

In the table, you can see the actual set of sessions received from the FIXEdge C++.

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:

IndicatorStatusSession status

Initialthe session has been added to the FIXICC H2 database but is absent in the FIXEdge configuration

Plannedthe session is planned to be added to the session configuration (messages can't be sent to the session in the planned state)

Connecting/ Reconnecting/Listeningthe initiator session is connecting/ acceptor session is waiting for logon message

Runningthe session is running (initiator and acceptor sessions are connected)

Runningthe initiator session is running (initiator session is connected to the backup acceptor session)

Disconnectedthe 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 parameters and session state just by staying on the page.

The dynamic and static session parameters are changed as a response to session events during the connection.

The frequency of the metrics values updating can be configured. The default value is 1 second.

Note: If the session name starts with the * symbol, this session configuration is added on the FIXEdge side and is absent in the FIXICC H2 database. This session configuration can't be edited, cloned, or removed. See below.

If the session state is Initial, this session configuration is absent in the FIXEdge configuration, so the Start, Stop, Restart, Reset/Change Seq Num, Send arbitrary message operations are not applicable. See below.

Figure. The Server Sessions page with the session is absent in the FIXICC H2 database.

Figure. The Server Sessions page with the session is absent in the FIXEdge configuration.

Filtering

You have the ability to filter the sessions list by using the Default Filter.

You can filter sessions by Name, SenderCompID, TargetCompID, or a combination of them.

The Default Filter depends on the type of objects that are shown on the current page.

To use the Default Filter, type or select a value in the Default Filter fields.
To start a search, move the focus from the completed field or press Enter.
To reset the search results:

  • Click Clear (item 1 in the figure below)

    Figure. Default Filter.

  • Or click Clear in the context menu (as shown below)

    Figure. The Clear context menu item.

Then you can see a full list of rows.

You can also use the Extended Filter for searching session information.

The Extended Filter allows adding custom search conditions.

To add a new search condition:

  1. Click Add search condition (item 1 in the figure below)

    Figure. The Extended Filter.

  2. To specify the parameter you want to search for in the "Add condition" form, either:
    • Select it from the list
      or
    • Type the parameter name in the Filter field

      Figure. The "Add condition" form.
  3. To confirm your choice, click Select or to cancel the operation, click Cancel
  4. Select an operation type from the drop-down list according to the parameter type 

    Figure. The operations list.

To start a search:

Click Refresh (item 1 in the figure below)

Figure. The Refresh button.

To remove a filter condition:

Click to see the full list of objects

Figure. The removing condition symbol.

To reset search results:

  • Select the <Reset Filter> from the drop-down menu in the Refresh button

    Figure. Reset Filter operation.

  • Or click Clear in the context menu 

    Figure. The Clear context menu item.

To save a filter:

  1. When you add a list of conditions, click the   button and select the save option
  2. Add the mandatory information to save the filter
  3. Click OK to confirm the changes or click Cancel to cancel the operation

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 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.

The 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
  • 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.

Note: If the session name starts with the * symbol, this session configuration is added on the FIXEdge side and is absent in the FIXICC H2 database. This session configuration can't be edited, cloned, or removed. See below.

If the session state is Initial, this session configuration is absent in the FIXEdge configuration, so the Start, Stop, Restart, Reset/Change Seq Num, Send arbitrary message operations are not applicable. See below.

Figure. The Session Dynamic State page for the session is absent in the FIXEdge configuration.

Figure. The Session Dynamic State page for the session is absent in the FIXICC H2 database.

  • No labels