Re: [Quickfix-users] Using NewOrderMultileg to send a two legged Order
Brought to you by:
orenmnero
From: Fix U. <fi...@ym...> - 2010-06-30 14:38:16
|
Btw, I noticed that I had missed the components for "Parties", "Instrument", "OrderQtyData" and "CommisionData", and I added those also as well. I'm still getting the build errors. Just to experiment, I tried to build fresh copy of the source without any modifications but after running the "configure_c++.bat" script. Build fails with the same errors, so I'm thinking errors I'm getting are not from my fix42.xml modifications. I was not able to find any info on how to rebuild after modifying the fix*.xmls. Could you pls help, or point me to some documents. Thanks much. joe ________________________________ From: Fix User <fi...@ym...> To: Grant Birchmeier <gbi...@co...>; qui...@li... Sent: Wed, June 30, 2010 8:24:35 AM Subject: Re: [Quickfix-users] Using NewOrderMultileg to send a two legged Order Dear Grant, Thank you. Yes, indeed, IB has a spec and I'm using it, but I think due to my inexperience with FIX things are not 100% clear what certain things mean. On New Order Multileg, the spec says "the message format is based on Multileg format of FIX 4.3". Anyway, I've tried to add "NewOrderMultileg" to FIX42.xml but I am getting some build errors. Here's what I did in detail. 1. Downloaded a fresh copy of quickfix (version 1.13.3) 2. Built it using build_vs9.bat (I'm on a windows 32 bit machine, using VS 9) -- built was successful. 3. Made the following changes to FIX42.xml a) Under <messages> Copied an entry for message "NewOrderMultileg" using the entry in FIX43.xml b) Under <components> Copied an entry for component "InstrumentLeg" using the entry in FIX43.xml c) Under field number = 35, added value "AB", similar to FIX43.xml. I'm attaching my modified FIX42.xml. 4. ran generate_c++.bat -- this script ran succesfully. 5. rebuilt the code, using build_vs9.bat -- build fails. I see lots of errors similar to the ones below. Full error log attached. Compiling... Acceptor.cpp c:\quickfix-1.13.3\quickfix\src\c++\Message.h(265) : error C2065: 'ApplVerID_FIX50SP1' : undeclared identifier c:\quickfix-1.13.3\quickfix\src\c++\Message.h(267) : error C2065: 'ApplVerID_FIX50SP2' : undeclared identifier c:\quickfix-1.13.3\quickfix\src\c++\Message.h(287) : error C2065: 'ApplVerID_FIX50SP1' : undeclared identifier c:\quickfix-1.13.3\quickfix\src\c++\Message.h(289) : error C2065: 'ApplVerID_FIX50SP2' : undeclared identifier Do you know what I'm doing wrong. I really appreciate any help. Thank you very much. joe ________________________________ From: Grant Birchmeier <gbi...@co...> To: qui...@li... Sent: Tue, June 29, 2010 4:30:09 PM Subject: Re: [Quickfix-users] Using NewOrderMultileg to send a two legged Order QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html QuickFIX Support: http://www.quickfixengine.org/services.html I myself have not worked too much with IB's interface, but I know we've done some IB projects in the past. IB should ideally have a spec that describes their FIX interface, and you should be able to use that as a guide to constructing your XML file. In your case, you should be using FIX4.2, with the FIX42.xml file customized to include that FIX 4.3 message (and any contained fields) that IB has decided to use. You should definitely familiarize yourself with the XML file format and generating the custom code, as nearly every broker has their own novel customizations and thinly-documented ways of messing up your day. -Grant |