简体   繁体   English

Quickfix字段标记无效:54

[英]Quickfix Field Tag is Invalid: 54

Hello I am trying to use Quickfix with FIX 4.4 using a Python Wrapper for a personal resume builder. 您好,我正在尝试将FIX 4.4与Quickfix结合使用,并将Python包装程序用于个人简历生成器。 I have googled to all over for help with this but haven't found anything to figure this out. 我已经四处搜寻,以寻求帮助,但是还没有找到任何解决办法。

So in Quickfix's Data Dictionary here: 因此,在Quickfix的数据字典中:

field number='54' name='Side' type='CHAR'

It is telling us that this tag must be a CHAR. 告诉我们该标签必须是CHAR。

However in our method to send an order looks like this: 但是,在我们的发送订单的方法中,如下所示:

    def sendOrder(self, tradeSide):
    print("Creating the following order: ")
    cTime = datetime.utcnow()
    qOrder = fix.Message()
    print(qOrder)
    qOrder.getHeader().setField( fix.BeginString("FIX.4.4") )
    print(qOrder)
    qOrder.getHeader().setField(35, "D" )       
    print(qOrder)
    qOrder.getHeader().setField(49, "Place_To_Go")
    print(qOrder)
    qOrder.getHeader().setField(56, "Place_To_Trade")
    print(qOrder)
    qOrder.getHeader().setField(43,"Y")
    print(qOrder)
    qOrder.getHeader().setField(52, str(cTime))
    print(qOrder)

    qOrder.setField(40, chr(1) )
    print(qOrder)
    qOrder.setField(11, str(self.genOrderID()))
    print(qOrder)
    qOrder.setField(311, "EUR")
    print(qOrder)
    qOrder.setField(309, "EUR/USD.E.FX")
    print(qOrder)
    qOrder.setField(305, "111") 
    print(qOrder)
    qOrder.setField(54, chr(1))
    print(qOrder)
    qOrder.setField(60, str(cTime))
    print(qOrder)
    qOrder.setField(38, "1" )
    print(qOrder)
    qOrder.setField(59, "1" )

    print("Order:" + str(qOrder))
    print("ayyy")

    fix.Session_sendToTarget(qOrder)

You can see in this line: qOrder.setField(54, chr(1)) 您可以在此行中看到:qOrder.setField(54,chr(1))

That we are trying to force it to become a char however when we send the message to the server we still recieve: 我们试图强迫它成为一个字符,但是当我们将消息发送到服务器时,我们仍然可以接收到:

(Invalid message: Field tag is invalid: 54)

In a tester online our FIX message appears to be valid on this website: 在在线测试人员中,我们的FIX消息在此网站上似乎有效:

http://fixparser.targetcompid.com?sharedlink=-LF0tkvCToW5RzneNJg2 http://fixparser.targetcompid.com?sharedlink=-LF0tkvCToW5RzneNJg2

Input this key: 输入此密钥:

jaiPj3brnf7tlgy5X28BgqwCwxpIq7H%BH6b81joE!rUzWof9hQvvby3

Does anyone have any experience in why it is still blatantly rejecting our message? 有谁在为何仍然公然拒绝我们的信息方面有任何经验?

Thank you for reading. 感谢您的阅读。

If CHAR(1) is actually ASCII code 1, this is the SOH character (Start Of Heading). 如果CHAR(1)实际上是ASCII代码1,则这是SOH字符(标题开始)。 That is not a valid value for tag 54. You want the character 1 , not SOH. 这不是标签54的有效值。您需要字符1而不是SOH。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 无效的块标记:'render_field',预期为 'empty' 或 'endfor'。 您是否忘记注册或加载此标签? - Invalid block tag: 'render_field', expected 'empty' or 'endfor'. Did you forget to register or load this tag? 无法解析 ID 为“DEMO_54ddab6”的文档中 [date] 类型的字段 [review_start_datetime] - failed to parse field [review_start_datetime] of type [date] in document with id 'DEMO_54ddab6' 用于快速修复的 Python 配置 - Python Configs for quickfix Django 无效的块标记:加载标记时出现“urls”错误 - Django Invalid block tag: 'urls' error on loading tag Tkinter tag_lower “标签搜索表达式中的 boolean 运算符无效” - Tkinter tag_lower “invalid boolean operator in tag search expression” 使用熊猫读取54 GB数据集 - Reading in 54 GB dataset with pandas Quickfix读取自定义重复组 - Quickfix read custom repeating group Python:TIFFReadDirectory 警告:带有标签的未知字段 - Python: TIFFReadDirectory warning: unknown field with tag 如何在 django 中设置 static 文件时修复 static 标签无效错误? - How to fix static tag is invalid error in setting a static file in django? 第 8 行的块标记无效:“crsf_token”,应为“endblock”。 您是否忘记注册或加载此标签? - Invalid block tag on line 8: 'crsf_token', expected 'endblock'. Did you forget to register or load this tag?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM