Thread: [Quickfix-users] Using BATS specifications
Brought to you by:
orenmnero
From: Techno13 <jto...@ve...> - 2012-01-11 12:39:11
|
Hello guys, can you give me few tips how i can make initiator application that use this specifications? http://batstrading.com/resources/membership/BATS_FIX_Specification.pdf I`m asking here because i`m total noob so my question is how exactly do i use this specifications. Do i have to chanage the data inside the FIX42.xml file or all of this have ot be checked on reaciving the message form the application? Or do i have to do both? Because if it is just to change the file it would made more sense to have a ready xml then the pdf. Sorry if the quastion is dumb but i`m lost and totally new here. -- View this message in context: http://old.nabble.com/Using-BATS-specifications-tp33118671p33118671.html Sent from the QuickFIX - User mailing list archive at Nabble.com. |
From: Joachim W. <joa...@ia...> - 2012-01-11 13:51:32
|
Am 11.01.2012 13:39, schrieb Techno13: > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > > Hello guys, > can you give me few tips how i can make initiator application that use this > specifications? > http://batstrading.com/resources/membership/BATS_FIX_Specification.pdf > > I`m asking here because i`m total noob so my question is how exactly do i > use this specifications. Do i have to chanage the data inside the FIX42.xml > file or all of this have ot be checked on reaciving the message form the > application? Or do i have to do both? > > Because if it is just to change the file it would made more sense to have a > ready xml then the pdf. Sorry if the quastion is dumb but i`m lost and > totally new here. Yes, BATS could provide a quickfix-compatile XML. But they leave this up to you. You can use the FIX 4.2 XML for BATS for all the parts of the BATS spec that comply to 4.2. Only to support the BATS features that are non-compliant with 4.2 (trade breaks), you need to extend the 4.2 XML accordingly to generate something like a BATS-4.2 XML. Joachim |
From: Sev Z. <se...@gm...> - 2012-01-11 16:01:37
|
Change your FIX42.xml as follows: 1. add the BATS UCC message, like Joachim instructed below <message name="CancelCorrect" msgtype="UCC" msgcat="app"> <field name="ExecTransType" required="Y"/> <field name="ExecID" required="Y"/> <field name="ExecRefID" required="Y"/> <field name="OrderID" required="Y"/> <field name="ClOrdID" required="N"/> <field name="Symbol" required="Y"/> <field name="SymbolSfx" required="N"/> <field name="OpenClose" required="N"/> <field name="MaturityMonthYear" required="N"/> <field name="MaturityDay" required="N"/> <field name="PutOrCall" required="N"/> <field name="StrikePrice" required="N"/> <field name="Side" required="Y"/> <!-- TradeLiquidityIndicator is a BATS custom field 9730 --> <field name="ClearingFirm" required="N"/> <field name="ClearingAccount" required="N"/> <!-- Corrected Price is a BATS custom field 9620 --> <field name="LastShares" required="N"/> <field name="LastPx" required="N"/> <field name="OrigTime" required="N"/> <field name="TransactTime" required="N"/> </message> 2. BATS uses a totally different set of codes for ExecInst than the fix spec. Instead of entering the codes from BATS spec, I decided to open it up to any single char so comment out the original: <!-- <field number="18" name="ExecInst" type="MULTIPLEVALUESTRING"> <value enum="1" description="NOT_HELD"/> <value enum="2" description="WORK"/> <value enum="3" description="GO_ALONG"/> <value enum="4" description="OVER_THE_DAY"/> <value enum="5" description="HELD"/> <value enum="6" description="PARTICIPATE_DONT_INITIATE"/> <value enum="7" description="STRICT_SCALE"/> <value enum="8" description="TRY_TO_SCALE"/> <value enum="9" description="STAY_ON_BIDSIDE"/> <value enum="0" description="STAY_ON_OFFERSIDE"/> <value enum="A" description="NO_CROSS"/> <value enum="B" description="OK_TO_CROSS"/> <value enum="C" description="CALL_FIRST"/> <value enum="D" description="PERCENT_OF_VOLUME"/> <value enum="E" description="DO_NOT_INCREASE_DNI"/> <value enum="F" description="DO_NOT_REDUCE_DNR"/> <value enum="G" description="ALL_OR_NONE_AON"/> <value enum="I" description="INSTITUTIONS_ONLY"/> <value enum="L" description="LAST_PEG"/> <value enum="M" description="MIDPRICE_PEG"/> <value enum="N" description="NONNEGOTIABLE"/> <value enum="O" description="OPENING_PEG"/> <value enum="P" description="MARKET_PEG"/> <value enum="R" description="PRIMARY_PEG"/> <value enum="S" description="SUSPEND"/> <value enum="T" description="FIXED_PEG"/> <value enum="U" description="CUSTOMER_DISPLAY_INSTRUCTION"/> <value enum="V" description="NETTING"/> <value enum="W" description="PEG_TO_VWAP"/> </field> --> and replace with this so it can accept any CHAR <field number="18" name="ExecInst" type="CHAR"/> Also, make sure that you instruct QuickFix *NOT* to validate custom fields. I have these settings [DEFAULT] ConnectionType=initiator BeginString=FIX.4.2 CheckCompID=N CheckLatency=N StartTime=00:00:00 EndTime=00:00:00 HeartBtInt=5 MaxLatency=120 ReconnectInterval=1 UseDataDictionary=Y ValidateFieldsHaveValues=N ValidateFieldsOutOfOrder=N ValidateUserDefinedFields=N SocketNodelay=Y PersistMessages=Y LogonTimeout=60 On 1/11/2012 8:21 AM, Joachim Worringen wrote: > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > Am 11.01.2012 13:39, schrieb Techno13: >> QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html >> QuickFIX Support: http://www.quickfixengine.org/services.html >> >> >> Hello guys, >> can you give me few tips how i can make initiator application that use this >> specifications? >> http://batstrading.com/resources/membership/BATS_FIX_Specification.pdf >> >> I`m asking here because i`m total noob so my question is how exactly do i >> use this specifications. Do i have to chanage the data inside the FIX42.xml >> file or all of this have ot be checked on reaciving the message form the >> application? Or do i have to do both? >> >> Because if it is just to change the file it would made more sense to have a >> ready xml then the pdf. Sorry if the quastion is dumb but i`m lost and >> totally new here. > Yes, BATS could provide a quickfix-compatile XML. But they leave this > up to you. > > You can use the FIX 4.2 XML for BATS for all the parts of the BATS spec > that comply to 4.2. Only to support the BATS features that are > non-compliant with 4.2 (trade breaks), you need to extend the 4.2 XML > accordingly to generate something like a BATS-4.2 XML. > > Joachim > > > ------------------------------------------------------------------------------ > Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex > infrastructure or vast IT resources to deliver seamless, secure access to > virtual desktops. With this all-in-one solution, easily deploy virtual > desktops for less than the cost of PCs and save 60% on VDI infrastructure > costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox > _______________________________________________ > Quickfix-users mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-users |