Origin of FIX data dictionaries
Asked Answered
K

2

5

The QuickFix website provides data dictionaries for various versions of FIX (note: I am talking about FIX rather than FIXML). I have not seen any mention of such data dictionaries in the FIX specification, so my assumption is that an independent person (perhaps a QuickFix developer) invented them and they became a de facto standard used across multiple FIX implementations. Does anyone know who invented them? I ask because I want to briefly discuss FIX data dictionaries in a book I am writing, and I would like to credit the inventor.

In addition, I have not been able to find a schema (e.g, DTD or XML Schema) for a FIX data dictionary (again, I am talking about FIX rather than FIXML). Do such things exist?

Kex answered 28/10, 2020 at 9:57 Comment(1)
I can help you reach Oren if you aren't able to.Selfpronouncing
T
9

Confirming, it was me.

When I originally created it, there was no structured version of the FIX specification. The spec was distributed as a Microsoft Word document.

Word would allow you to export a document as HTML. So I did that manually, then created a parser for the resulting HTML documents for each version.

Since the Word documents seemed to be edited by hand, they were quite inconsistent, and the parser needed to handle all sorts of edge cases. But eventually it was able to produce usable structured data.

Since then the FIX repository has been released, which is how the QuickFIX xml document is currently generated (though surprisingly, there is still data cleaning that needs to be done before a good QuickFIX document is generated).

I think there are a few reasons that the QuickFIX version of the spec became popular over the FIX repository.

  1. It is a single document for each version of the spec.

  2. It is more human readable. Tags are referenced only in field definitions. Messages are constructed with the relatively more human readable field names.

  3. There is no barriers to download. Originally if I recall correctly the FIX repository was only available to members. I don't think that's still the case, but you do still need to have an account and be logged in to download the repository.

  4. It's served a function for a large user base. Since the spec can be plugged into QuickFIX and used to generate QuickFIX messages, there was a large installed user base that can plug it and connect to your platform more easily. I believe this led to the adoption by other FIX engines to piggy back on this advantage, which I think is great.

Tenishatenn answered 28/10, 2020 at 17:5 Comment(0)
T
4

There is no schema for the dictionaries.

Oren Miller created QuickFIX. I assume he or someone from his team invented the format: https://en.wikipedia.org/wiki/QuickFIX

Initial commit from Oren Miller which also contains initial version of DataDictionary:

https://github.com/quickfix/quickfix/commit/3b4df170aa518dd92cb05dc7c3bdbc83779516de#diff-bd791d8e47e80c1bbefe35e7a16453eb6e918c2d76bd26c38a139fc7c5ccc3ca

Thatcher answered 28/10, 2020 at 13:43 Comment(1)
I also believe this to be true. I did not work at Connamara when Oren did, but a colleague who did told me that he created the initial DDs. (I know Oren, but never asked him about it.)Selfpronouncing

© 2022 - 2024 — McMap. All rights reserved.