Echo Configuration Between FIXEdge and Simple Client (Fix Client Simulator)

  1. Add new Session to ( FIXEdge1\conf\ )
    Add a session TestEchoAcceptor to the list of sessions (multiple sessions should be separated by a comma):
    FixLayer.FixEngine.Sessions = TestEchoAcceptor

    And configure session parameters:
    FixLayer.FixEngine.Session.TestEchoAcceptor.Version = FIX44
    FixLayer.FixEngine.Session.TestEchoAcceptor.StorageType = persistentMM
    FixLayer.FixEngine.Session.TestEchoAcceptor.Role = Acceptor
    FixLayer.FixEngine.Session.TestEchoAcceptor.SenderCompID = FIXEDGE
    FixLayer.FixEngine.Session.TestEchoAcceptor.TargetCompID = FIXECHOCLIENT
    FixLayer.FixEngine.Session.TestEchoAcceptor.Description = FIX session for echo testing
    FixLayer.FixEngine.Session.TestEchoAcceptor.StartTime = 08:00
    FixLayer.FixEngine.Session.TestEchoAcceptor.TerminateTime = 23:59
    FixLayer.FixEngine.Session.TestEchoAcceptor.RecreateOnLogout = true
    FixLayer.FixEngine.Session.TestEchoAcceptor.IntradayLogoutTolerance = true
  2. Configure BL rules ( FIXEdge1\conf\BL_Config.xml )

    <?xml version="1.0" encoding="UTF-8"?>
    		<!-- Rule messages from Simple Client send back switching SenderCompID and TargetCompID --> 
    				<FixSession SenderCompID="FIXECHOCLIENT" TargetCompID="FIXEDGE"/>
    					<FixSession SenderCompID="FIXEDGE" TargetCompID="FIXECHOCLIENT"/>

  3.  Run FIXEdge.
    E.g. via run script:

    • Windows: <FIXEdge installation dir>\FIXEdge\bin\

    • Linux: <FIXEdge installation dir>/FIXEdge/bin/

  4.  Open FIX Client Simulator. (It can be found in the FIX Antenna .NET Wrapper package).
    And create a new session (select Session menu -> Create New ...) as Initiator with the following parameters:

    Session type: Initiator
    TargetCompID = FIXEDGE
    FIX Version = 4.4
    Remote Port = 8901ListenPort parameter in FIXEdge's )
    Remote Host = localhost (or IP address/hostname of the FIXEdge server)

    Please note that SenderCompID on the FIX Client Simulator side should have the same value as TargetCompId on the FIXEdge side
    And TargetCompId on the FCS side should be the same as SenderCompID on FIXEdge's side.

  5. Send message from FIX Client Simulator ( Pipe character is used to represent SOH character )

    New Order - Echo test.msg

     The file with FIX message example and SOH delimiters: NewOrderEchoTestMessage.txt

  6. Echo message from FIXEdge is received:

    Incoming message: 8=FIX.4.49=14935=D49=FIXEDGE56=FIXECHOCLIENT34=352=20140228-14:43:19.01811=Order#121=1100=155=TESTSMBL54=160=20131124-04:11:46.76838=2000040=244=34.710=074


  • FIXEdge should be up and running state after step 4.
  • There are [ERROR] or [FATAL] error records in FIXEdge logs FIXEdge1\log\FIXEdge.log.
  • The FCS and FIXEdge have up-to-date licenses.
  • If a session can't be established due to sequence number issues this can be resolved by cleaning logs on both sides.