Re: [Quickfix-users] QuickFIX adaptor for B2BITS FIX Engine C++ (...the last call...)
Brought to you by:
orenmnero
From: <or...@qu...> - 2011-01-21 17:34:38
|
Sorry. I didn't carefully read the request the first time. I see you are reimplementing the interface without using our code. That is certainly fine as well and doesn't change our stance. Best of luck. > -------- Original Message -------- > Subject: QuickFIX adaptor for B2BITS FIX Engine C++ (...the last > call...) > From: Dmitri Latushko <Dmi...@ep...> > Date: Thu, January 20, 2011 7:19 am > To: "'qui...@li...'" > <qui...@li...>, Jim Downs > <jc...@co...>, 'Oren Miller' <or...@qu...> > Cc: Mark Bisker <Mar...@ep...> > > > Hello Jim, Oren, > hello quickfix-users, > > I would like to inform you that B2BITS|EPAM is preparing the QF adaptor beta program launch on Feb, 1st, 2011. Please see the details in the previous mail below (this is an e-mail I sent, it has not been answered). > > We decided to go with the alternative 1 described below (that is, ship our implementation of quickfix interface which redirects the calls to FIX Antenna(tm) library). This is an implementation of the interface and we don't include source code from QuickFIX. We will accompany the package with the QuickFIX license text<http://www.quickfixengine.org/quickfix/doc/html/license.html>. > > We plan to re-use one software package from the QuickFIX source distribution and re-distribute it, this is the "unit tests" written in C++. We modified it to remove some of the quickfix API calls which we don't provide in our implementation of the QuickFIX interface. We think the users may benefit from getting supported by the unit testing facility if they want to further modify the code in our QF adaptor package and retain the compatibility with QuickFIX. > We will follow the license statement: "The end-user documentation included with the redistribution, if any, must include the following acknowledgment: "This product includes software developed by quickfixengine.org" > > We're also seeking to get a written permission according to the quickfix license statement: "The names "QuickFIX" and "quickfixengine.org" must not be used to endorse or promote products derived from this software without prior written permission. For written permission, please contact qui...@li..." > > We will be happy to discuss this further with you. > > Please confirm you received this message. > > Thanks, > Dmitri > > From: Dmitri Latushko > Sent: Friday, January 07, 2011 9:43 PM > To: 'qui...@li...'; 'Oren Miller' > Subject: QuickFIX adaptor for B2BITS FIX Engine C++ > > Hello, > > my name is Dmitri, I'm working for EPAM|B2BITS http://www.b2bits.com/. We have a product called FIX Antenna which is a FIX Engine written in C++. It's been on the market for a long time and is positioned as a high-performance FIX Engine. > > To address certain user demand we've started a project that helps to adopt our engine for those who used QuickFIX C++ in the past and want an easy way for the performance upgrade. Our solution is essentially an adaptor that implements QuickFIX interface on one side and talks to FIX Antenna engine on the other. This adaptor will be an open source so the people can freely modify it. We are going to ship the adaptor's code with our FIX Antenna product. > > Technically the adaptor is a thin layer of C++ code that is to be inlcuded into the user's project and acts then as a substition for the QuickFIX library. This thin layer implements the QuickFIX C++ interface (by the interface we mean the class and method names and their semantics). It is written from scratch and in most part it simply redirects the calls to FIX Antenna engine. This approach helps to retain the code of the user application as is, without modification. > > Essentially the user application continues to use the QuickFIX interface as before, but the run-time part that does the actual job for FIX protocol handling is now the new engine, FIX Antenna. All the details regarding FIX message parsing, session level logic, message queing is done by this engine. As long as the user application continues to use QuickFIX interface, the user can switch the engines in the future and go back to the QuickFIX library again. > > We provide a subset of the full QuickFIX interface. Our solution, in this minimal version, does not include the source code of QuickFIX, nor any of the tools from this package. We only expose the QuickFIX class names and methods (the Interface). We have our own set of code generation tools and tools for handling the dictionaries which will be also shipped in source code with this package. > > We've made this minimal version but we feel that there can be more to this which may be of our mutual interest. We think some of the users may need the full 100% coverage of the QuickFIX API in our adaptor (for example, DB persistence or HTTP interface, or C# interface) and the easiest way to achieve this will be to include the orginal source code from QuickFIX. This could be done by users themselves as QuickFIX license permits the user to do this on her own. But the better way for users would be to have it already in our package, correctly integrated and tested. > > We see 2 alternatives: > > 1. Continue to go with the minimal version of our package that does not include QuickFIX software. This variant merely exposes the QuickFIX interface. We are willing to state this fact in documentation or include any copyright statement of that kind you can provide, if you'd like to make this interface a separate property. > > 2. Make up a joined package that would include some pieces of source code from QuickFIX like the mentioned DB persistence or C# interface and follow the steps mentioned in the license as this becomes now a derivative product (http://www.quickfixengine.org/quickfix/doc/html/license.html): that is, provide an aknowledgement that this package includes QuickFIX software, advertise this fact on the web site (provided we have your consent), etc. > > Maybe you have other ideas, would be glad to talk to you. > Please let me know what you think. > > Best Regards, > Dmitri Latushko > Software Engineering Manager > Phone: +1-267-352-3442 > E-mail: Dmi...@ep...<mailto:Dmi...@ep...> > > EPAM Systems > B2BITS Capital Markets Competency Center > http://www.b2bits.com<http://www.b2bits.com/> > http://www.epam.com<http://www.epam.com/> |