Imported from previous forum
We sometimes need to cancel trades, and do this by setting ExecType in execution reports and trade capture reports to TRADE_CANCEL.
However, we would also like to convey the reason for the cancellation, and I cannot find an appropriate FIX tag for that purpose. Is there one that I missed?
If not, what’s the recommended way to proceed? Just add one and keep the number and name local, or to try to add it to one of the 5/6/7/9nnn lists of custom tags?
Staffan
The standard option is always to use the Text (58) tag. This will work if you do not need to convey other information in the context of a trade cancel. Adding one “locally” only works for internal tags >10000, otherwise it needs to be one between 5000 and 9999 registered on the FPL website. I guess what you are looking for should be called TradeCxlReason and have a list of pre-defined values and Reserved100Plus datatype for user-defined values. The closest one I found is 6042 CxlReason which should apply for orders, quotes and trades (executions). I suggest to use that tag if you do not want to submit a gap analysis for an extension of the FIX standard.
Regards,
Hanno.
We sometimes need to cancel trades, and do this by setting ExecType in
execution reports and trade capture reports to TRADE_CANCEL.However, we would also like to convey the reason for the cancellation,
and I cannot find an appropriate FIX tag for that purpose. Is there one
that I missed?If not, what’s the recommended way to proceed? Just add one and keep the
number and name local, or to try to add it to one of the 5/6/7/9nnn
lists of custom tags?Staffan
The standard option is always to use the Text (58) tag. This will work
if you do not need to convey other information in the context of a trade
cancel.
Sure, but we want to have a more type safe way of doing this handling the canceled trades is an automated process.
Adding one “locally” only works for internal tags >10000,
otherwise it needs to be one between 5000 and 9999 registered on the FPL
website. I guess what you are looking for should be called
TradeCxlReason and have a list of pre-defined values and Reserved100Plus
datatype for user-defined values. The closest one I found is 6042
CxlReason which should apply for orders, quotes and trades (executions).
I suggest to use that tag if you do not want to submit a gap analysis
for an extension of the FIX standard.
Using 6042 seems just fine to me. Is there any other information apart from the tag name and number in the list on the web site, like what values are valid?
The standard option is always to use the Text (58) tag. This will work
if you do not need to convey other information in the context of a
trade cancel.Sure, but we want to have a more type safe way of doing this handling
the canceled trades is an automated process.Adding one “locally” only works for internal tags >10000, otherwise it
needs to be one between 5000 and 9999 registered on the FPL website. I
guess what you are looking for should be called TradeCxlReason and
have a list of pre-defined values and Reserved100Plus datatype for user-
defined values. The closest one I found is 6042 CxlReason which should
apply for orders, quotes and trades (executions). I suggest to use
that tag if you do not want to submit a gap analysis for an extension
of the FIX standard.Using 6042 seems just fine to me. Is there any other information apart
from the tag name and number in the list on the web site, like what
values are valid?
Not that I am aware of. It would be in the field description. Apparently it was introduced as part of a repeating group to cancel rebills but you would use it as a standalone field. I still think it is better to re-use that field and not introduce a new user-defined field.