I'm intersted in automated trading of securities (primarily stocks) for institutional traders. Both the first part of sending the buy, sell, or whatever instruction, and the second part of getting back (probably later rather than immediately) lots of detailed information on exactly how the instruction was executed - fills making up the order, timestamps, prices, etc.
So I went looking for file formats or other standards on this sort of thing. OASIS (Organization for the Advancement of Structured Information Standards) has links to a bunch of stuff. From the webopedia, and what little I've heard from people so far, FIX (Financial Information Exchange Protocol) and its FIXML XML markup language is probably the right thing.
The FIX spec. is large, 7 volumes each around 100 pages or so. At first impression it all sounds pretty heavy-weight to me, not simple, but I haven't really read any of the spec yet, nor played with any of the FIX implementations below.
Does anyone have any useful experience with or comment on FIX, FIXML, any other relevent financial protocols, or specific implementations of any of those? Whatever you know, I'd like to hear it. :)
SourceForge lists several Open Source FIX projects:
- QuickFIX is C++ (with C++, Java, .NET bindings), runs on Windows, Solaris, Linux.
- SlimFIX is Java, says it's only been tested on Windows.
- financelib and Open FIX Engine don't seem to have any code at all.
- The fixzilla FIX log analyzer (in Java) might be useful.
- FreeTrade is sort of related but not relevent here.
- The investment (stocks, bonds, options) part of OFX (Open Financial Exchange) might be sufficient for what I want to do, but is supposedly more retail oriented.
- IFX (Interactive Financial eXchange) sounds similar but I think doesn't include investments/trading.
- FpML seems to be just for Derivatives.
- There are links to a lot of other similar (STPML, FinXML, etc.) at the bottom of this FixML page.
fixprotocol.org lists a whole lot of FIX commercial vendors, but that web page makes it obnoxious to try and read about them (click on every single name).
Besides FIX, here are some other similar-sounding standards I've come across:
Request notifications