- Install FIXEdge (Simple Installation)
Add new Session to FIXEdge.properties ( c:\B2BITS\FIXEdge\v.5.7.0.62818\FixEdge1\conf\FIXEdge.properties )
FIXEdge.propertiesFixLayer.FixEngine.Sessions = TestEchoAcceptor 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.EncryptMethod = 0 FixLayer.FixEngine.Session.TestEchoAcceptor.InSeqNum = 0 FixLayer.FixEngine.Session.TestEchoAcceptor.OutSeqNum = 0 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 FixLayer.FixEngine.Session.TestEchoAcceptor.ForceSeqNumReset = false FixLayer.FixEngine.Session.TestEchoAcceptor.SocketPriority = EVEN FixLayer.FixEngine.Session.TestEchoAcceptor.HandleSeqNumAtLogon = false
Configure BL rules ( c:\B2BITS\FIXEdge\v.5.7.0.62818\FixEdge1\conf\BL_Config.xml )
BL_Config.xml<?xml version="1.0" encoding="UTF-8"?> <FIXEdge> <BusinessLayer> <!-- Rule messages from Simple Client send back switching SenderCompID and TargetCompID --> <Rule> <Source> <FixSession SenderCompID="FIXECHOCLIENT" TargetCompID="FIXEDGE"/> </Source> <Action> <Send> <FixSession SenderCompID="FIXEDGE" TargetCompID="FIXECHOCLIENT"/> </Send> </Action> </Rule> <DefaultRule> <Action> <DoNothing/> </Action> </DefaultRule> </BusinessLayer> </FIXEdge>
Run FixEdge.
E.g. via run script:Windows: c:\B2BITS\FIXEdge\bin\FixEdge1.run.cmd
Linux: /home/user/B2BITS/FIXEdge/bin/./FixEdge1.run.sh
Open SimpleClient. (It can be found in Fix Antenna package). And create a new session as Initiator:
Session -> Create New ...
SenderCompID = FIXECHOCLIENT
TargetCompID = FIXEDGE
FIX Version = 4.4
Remote Port = 8901 (ListenPort parameter in FE engine.properties -> FIXEdge\FixEdge1\conf\engine.properties )
Remote Host = localhost (or IP address/hostname of the FIXEdge server)Send message from SimpleClient ( Pipe character is used to represent SOH character )
New Order - Echo test.msg8=FIX.4.4|9=175|35=D|49=FIXECHOCLIENT|56=FIXEDGE|34=2|52=20131125-09:37:09.680|11=Order#1|21=1|100=1|55=TESTSMBL|54=1|60=20131124-04:11:46.768|38=20000|40=2|44=34.7|10=203|
File contained SOH symbols: NewOrderEchoTestMessage.txt
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
Troubleshooting:
FixEdge should be checked for running state after step 4. File c:\B2BITS\FIXEdge\v.5.7.0.62818\FixEdge1\log\FIXEdge.log should have no [ERROR] or [FATAL] messages.
FE and SimpleClient are using same license.
SeqNum problems can be resolved by cleaning logs on both sides.