FIX protocol implementation for cryptocurrency exchange

Customer

One of the largest and longest standing digital currency exchanges in the world (the Exchange), providing reliable easy to use service for companies and individuals to exchange bitcoins. The Exchange allows trading between USD currency and bitcoin cryptocurrency and also USD, EUR, bitcoin, litecoin, ethereum, ripple or bitcoin cash deposits and withdrawals.

Challenge 

The Exchange used native APIs for order flow and market data services. The Exchange wanted to build a FIX-compliant client interface to enable banks, brokers, and investment companies to conduct trades on the exchange using the FIX Protocol.

 Solution 

FIX Gateway is a FIX-compliant client gateway performing translation and routing of FIX messages from Clients to appropriate calls to  Exchange's REST or Websockets APIs, as well as translation and routing of replies from the Exchange's REST and Websockets APIs to the appropriate FIX messages.

  • FIX Gateway supports Market Data and Trading message flows combining the use of REST and Websockets APIs
  • FIX Gateway is able to process hundreds of messages per second in each FIX session
  • Mapping between FIX messages and JSON API messages and vise versa is scripted
  • Supported protocols: FIX 4.4

 Technologies and Tools 

  • FIXEdge®
  • FIXICC®
  • Programming languages: C++, Java, Java Script, XML, FIX
  • Java technologies: REST API, WebSockets API, Spring, JSON
  • Boost
  • STL
  • Multithreading 
  • FIX 
  • Linux API

Results 

Working with EPAM Systems the Exchange built and released new client interface - FIX Gateway, which has been successfully working in production since November 2016 attracting new clients.