Saturday, July 10, 2021

How to fix Common FIX Session Connection Issues? Solutions

FIX Protocol Session Connectivity
Hi guys, in this post I would like to share my experience with financial information exchange (FIX) Connections which is essential to set up FIX connectivity for trading purposes. Financial information exchange (FIX) Connections are used in both Client Connectivity and Exchange connectivity space (in case exchange supports financial information exchange (FIX) Protocol or you are connecting to any broker via FIX  Protocol).

So whenever a new client comes onboard a new Fix Session will be needed for him who will be identified by the host, port, and comp ids like SenderCompID and TargetCompID.

Before you set up a new financial information exchange (FIX) session in your fix engine you will need to require network connectivity between the client's network and your network, this is usually done by the network team, and for security reasons, some firewall rules also need to be setup.

While working on this part you may face several network connectivity issues based on what are you choosing e.g. Radianz, VPN or internet.


Once the network connection gets established you are ready to connect to the client. Now client will send logon request (MessagType=A) with sequence no 1, 1 (At start of day) and with SenderCompID and TargetCompID agreed upon. 

On the TCP layer, first of all, socket connection gets established in the client IP and your IP and your Fix Engine listens on the port specified. once your Fix Engine gets logon request its validates the content and authenticity of the client and if all is OK it replies with another logon request message. 





Now your financial information exchange (FIX) session is established and you are ready to send orders via this connection.

Some important points to remember while troubleshooting FIX  connectivity issues:

1.Which FIX  Protocol versions are you using for connectivity? Both counterparties must use the same version of the FIX Protocol to establish FIX Connectivity.


2. Are you sending Correct SenderCompID (FIX Tag 49) and TargetCompID (FIX tag 50)? CompIDs must be configured on FIX Acceptor side.


3. Are you using the correct IP and Port?


4. Does your FIX Engine is sending the correct sequence number which brokers FIX Engine is expecting?


5.  Are you handling Resend requests correctly?



 If you like this article, You may also enjoy my other posts on FIX Protocol and Electronic trading:

7 comments :

MLM software said...

Hi! I am a web based business man. And as we all know, Web video is an advantageous tool for marketing, advertising, product information, presentations, training or promoting key messages. This site is offering a comprehensive video on the web service. And this site is providing with the best created web videos. These guys are really great.

Anonymous said...

I am currently writing a paper on security concerns when it comes to FIX and FIX engines. IN the world of many hacks , how do secure and lock down the servers enough that it wont slow processing and maximum security..

thanks
D

Anonymous said...

Hi,
I am trying quickfix, but i don't know, Where Can i open a Fix trading account to replace fixdemo.fxcorporate.com?

Regards,

Kato

Unknown said...

We had a very strange issue where we were able to connect through ssh / telnet but not through FIX. we scratched our heads and it took a long time to figure out. We were using a VIP for HA. and unfortunately the VIP had another DNS entry which was not allowing the connection on FIX. After removing the offending DNS entry we were able to fix the FIX connection.

DAY-TRADER said...

Hi Jeetender, that nice that you shared your solution with all.

We have also problem with connection to QuickFixJ.
We don`t know how to verify that connection is established.

And the question 2: Do you use Azure servies to this ?

Unknown said...

TargetCompID (FIX tag 50) is incorrent
TargetCompID (FIX tag 56)

Anonymous said...

Hi,I am requesting on PSE FIXT1.1 for new order request,but i don't know what exact parameters have to send on FIX.
Please suggest me

Post a Comment