Hi Oren Miller put together a Python implementation of Quickfix - it is available via pip. I have been struggling to get it running with local compiler options (this is likely all operator error).
All code has bugs, the question is whether they inhibit actual usage. I know of plenty of places using the Java and .NET libraries and I would guess the C++ version is probably more heavily used. While there are outstanding issues the evidence suggests they are annoyances rather than showstoppers.
If the Python library has known critical bugs, many of them have probably been fixed in the other language versions and the change probably is merely a question of porting it in an appropriate fashion.
The FIX protocol is already quite complex to handle in a practical real world sense - re-writing the library will likely mean re-solving the issues QF has already mainly fixed. I’m skeptical this is a valuable endeavor.
I know it’s possible to call C++ from Python. I doubt the library is written with that in mind. Personally I mostly use the Java version so I don’t have that much familiarity with the C++ API. In general cross-language calls produces very ugly code that’s hard to debug so personally I’d start with the Python API and see if you can get that to do what you need without too much effort.
@philipwhiuk at this point we have the possibility to change the language of our API, however, we are not sure at this point if it’s better to change to another language or try the Python version of Quickfix. We will have to make a decision in these days.
@philipwhiuk hopefully Python will work out otherwise we will have to change to another language.
Is this forum the best place where we can get support in case of bugs? Or would you recommend us another website?
The python wrapper around quickfix/c++ is well-used by many in production, as are all versions of quickfix, and all versions of quickfix are still maintained. I would not say that any flavor of quickfix “has a lot of known bugs”.
To add on this, at least QuickFIX/J which is based on QuickFIX originally started by Oren Miller is used in a lot of productive environments, including some larger stock exchanges.
So I would consider the QuickFIX suite as a stable environment to use FIX.
I do not know whether the Python interface is just a wrapper around some other QuickFIX flavor or a pure Python implementation. But QuickFIX is a very good starting point for you, @openfinance00 and a great place to contribute if you find bugs or have improvements.
You are welcome!