I believe I can help you with the FIX adapter. I reside in IL USA.
I can work only ~20hr a week.
I have implemented multiple FIX adapters: CME/ICE/Currenex/Ducascopy, CQG FIX, ARCA, BATS, and others.
I was using C++ with cross platform libraries like QuickFIX, ACE, boost, STL, SQLAPI etc.. (they are cross-platform, but I've built them mostly for windows)
The main question, which will help us to estimate the time for the job - what do you call a FIX Adapter.
The basic task which is possible to implement(get more less working version) in several weeks:
a) You have a trading system connecting somewhere (e.g. CQG) via FIX or custom non-FIX protocol, and would like to be able to connect to another provider via FIX. Your architecture has some interface(s) for Adapter(s), which allows to substitute existing CQG Adapter with another one(s?) in such a manner so other parts of your system doesn't notice the difference(so we don't have to change other parts of the system).
You need basic operations for order management (new/cancel/replace and execution reports + FIX connectivity). You have test fix session to the new provider.
What can make it (much?) harder to do? If you:
- Don't have a trading system(implying FIX Adapter will be this trading system)
- Need market data/instrument definitions/risk info/custom messages support
- Poor Trading System Architecture + legacy code
- Need extra functionality (e.g. support of exotic order types/instruments, risk control etc.)