我使用QuickFix和Python来连接一个特殊的数据提供程序。他们定义了一个新的重复组NoChartData
,我无法阅读,因为我在QuickFix中定义组的方式是,例如,group = fix42.MarketDataIncrementalRefresh().NoMDEntries()
。当我用NoChartData()
替换NoMDEntries()
时,我得到一个属性错误,因为NoChartData()
不存在。
我有一些模糊的想法,我需要重建QuickFix类,我在这里读到了这些:
http://quickfix-j.364392.n2.nabble.com/How-to-avoid-ordering-group-fields-td7132898.html
我在quickfix/lib/jar文件夹中找到了ant.jar,但不知道如何运行它
我已经修改了数据字典,如果我能弄清楚如何创建自定义组,一切都会好起来的。也许有更简单的方法?
顺便说一句:我知道这个网站上有一个相关的问题。这家伙被否决了,他的问题结束了,因为他问了一个非常清楚的问题,但没有解释:如何从新的自定义FIX字典中生成消息类(但我需要在Python中这样做,所以相关的链接没有帮助。)
---2014年9月24日更新——
我安装了蚂蚁,但不知道如何使用它!显而易见的是,将它应用到我的数据字典中,并没有得到所需的结果。
c: \quickfix\spec>ant-f FIX42_CTS.xml构建文件:c: \quickfix\spec\FIX42_CTS.xml
BUILD FAILED c:\quickfix\spec\FIX42_CTS.xml:1:意外元素"{}修复"{antlib:org.apache.tools.ant}修复
总时间:0秒
也许这个问题可以帮助其他没有Java和Ant经验的QF用户。
在QF/j wiki的用户常见问题解答中,有关于如何生成QF/j源的基本说明:http://www.quickfixj.org/confluence/display/qfj/User+FAQ
(奇怪的是,这个常见问题解答目前有两个问题基本相同。我必须考虑将它们结合起来。这有点尴尬,因为我似乎是该页面的唯一编辑。:)
您必须编辑DataDictionary XML文件。该文件的结构非常简单;花几分钟浏览一下,这样你就能理解布局了。(首先是关于消息定义的一大部分,然后是字段定义的一部分。您需要编辑这两个部分来添加新的组。)
EDIT:原来您没有使用QF/j派生的构建,所以这个答案可能对您没有那么大帮助