Comments (10)
An alternative would be to have two concepts in FIX 4.4 named PartialFill and Fill that happen to have the same encoding 150=F (Trade). The downside of this approach is that it requires planning across FIX versions to arrive at the concepts.
I am currently going through that exercise guided by FIX 4.4 Appendix 6-F "Replaced Features and Supported Approach". I will add the concepts to fix-vocabulary.
from fix-orchestra.
It is inevitable that a concept name will have multiple meanings in different contexts. For example, in the current FIX vocabulary, "Investor ID" has two definitions, one for CIV and another for equities. @philipwhiuk, I agree that lookup should not be ambiguous, but either names have to altered to make them unique, or they need to be qualified by context. That would be analogous to using "scenario" as a qualifier for multiple definitions of the same MsgType.
from fix-orchestra.
How would the tool then decide which value to use when sending to a FIX.4.2 session in this scenario? You're adding the ambiguity back in which has to be resolved somewhere.
from fix-orchestra.
It's worth trying to avoid non-unique concept names as much as possible - qualifying is probably better - but yeah if it's either unavoidable or trivially obvious which is right it's probably okay :)
from fix-orchestra.
The concept(s) do(es) not need to change with the FIX version. They may be represented differently by legacy FIX version compared to FIX legacy. The top concept here is that of an execution or trade (FIX does not really make a clear distinction, i.e. it was called executions until FIX 4.3 came along with the TradeCaptureReport. Then it became blurry). There are two sub-concepts of an execution if you will, i.e. a partial fill and a fill. FIX 4.2 represented these sub-concepts in different ways, i.e. two values of ExecType whereas FIX 4.4 decided to use only only value of ExecType for both, requiring OrdStatus to be included to distinguish the two concepts.
from fix-orchestra.
Sorry, "...by legacy FIX version compared to FIX Latest."
from fix-orchestra.
What is the difference between a CIV investor and an equities investor from a conceptual point of view? I only see one entry for "Investor ID" in the vocabulary which is too limiting by the way (only allows numeric entries, i.e. clashes with data type of PartyID(448) and PartyRole(452)=5 (Investor ID)).
from fix-orchestra.
Let me illustrate with an example from another financial industry vocabulary: "Principal" can mean either a party role for proprietary trading, the amount of a loan, or the face value of a bond, depending on context. "Option" is another word that has multiple meanings.
FIBO vocabulary has more than one definition of some terms. They distinguish them by domain/subdomain and other properties.
from fix-orchestra.
@donmendelson agree about different meaning of terms. I would prefer if "concept" is not identical to a "term", allowing us to say that names of terms may be non-unique but names of concepts are unique. A concept would then be larger than a term. But I am not familiar enough with vocabularies such as FIBO to know whether such a distinction is a good idea.
from fix-orchestra.
Withdrawing this request. I am now persuaded that we should keep the current unique key constraint. If necessary, we can append a suffix to a name for uniqueness if it applies within a certain context such as asset class.
from fix-orchestra.
Related Issues (20)
- [repository schema] Field type attribute does not distinguish between datatype and code set reference HOT 1
- [Score DSL] add binary condition syntax
- [repository schema] Names of codesetRefKey and codesetKeyref HOT 3
- [repository schema] Does use of fixr:oidGrp for complex type "codeType" imply support of scenarios for individual codes? HOT 2
- [repository schema] Typo in annotation of messageIdKey HOT 1
- [repository schema] Change year included in repository location of v1.1 from 2022 to 2023 HOT 1
- [repository schema] Change version attribute to include RC1 status HOT 1
- [repository schema] Missing AppInfo FIXML schema (for EP272 and higher Orchestra XMLs) HOT 1
- [repository schema] Simple type Edition_t does not seem to be used HOT 1
- [interfaces schema] Typo in field type "userIntefaceType" should be "userInterfaceType" HOT 4
- [repository schema] Add repository attribute for application extension ID HOT 1
- [repository schema] Allow names in correlation and assignment references
- [repository schema] Typo in documentation of optional name reference? HOT 3
- [repository schema] Attribute group messageAttribGrp seems to be unused
- [repository schema] Consider moving "Datatype" from repository.xsd's root level to repositoryType.xsd
- [repository schema] Some categoryType's attributes should be required.
- messageAttribGrp is not used. HOT 1
- [repository schema] Some protocols's message names are not supported by Name_t restrictions. HOT 1
- [repository schema] New attribute to identify fields sharing characteristics HOT 3
- [repository schema] Some simple types are not used.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fix-orchestra.