FIX NewOrderSingle收到内部应用程序错误,请联系支持

问题描述

我正在使用QuickFix开发C#机器人,并使用Remarkets测试我的应用程序,但是当我发送newOrderSingle时,您会收到“内部应用程序错误,请联系支持部门。”

我认为应用程序是我自己的,但我也尝试与Remarkets联系,而没有任何答案。

消息如下:

登录

8=FIXT.1.1 9=124 35=A 34=1 49=usr123 52=20201012-21:00:35.860 56=ROFX 553=usr123 554=hdjbxA7# 98=0 108=30 141=Y 1137=9 10=129 

登录答案:

8=FIXT.1.1 9=89 35=A 34=1 49=ROFX 52=20201012-21:00:36.534 56=usr123 98=0 108=30 141=Y 1137=9 10=246 

收到我不完全了解的交易时段状态:

8=FIXT.1.1 9=114 35=h 34=2 49=ROFX 52=20201012-21:00:38.069 56=usr123 325=Y 335=NONE 336=[N/A] 340=2 1300=DDF 1301=ROFX 10=098 
8=FIXT.1.1 9=115 35=h 34=3 49=ROFX 52=20201012-21:00:38.069 56=usr123 325=Y 335=NONE 336=[N/A] 340=2 1300=DUAL 1301=ROFX 10=188 
8=FIXT.1.1 9=114 35=h 34=4 49=ROFX 52=20201012-21:00:38.069 56=usr123 325=Y 335=NONE 336=[N/A] 340=2 1300=DDA 1301=ROFX 10=095 
8=FIXT.1.1 9=115 35=h 34=5 49=ROFX 52=20201012-21:00:38.069 56=usr123 325=Y 335=NONE 336=[N/A] 340=2 1300=MERV 1301=ROFX 10=210 
8=FIXT.1.1 9=115 35=h 34=6 49=ROFX 52=20201012-21:00:38.069 56=usr123 325=Y 335=NONE 336=[N/A] 340=2 1300=RFXI 1301=ROFX 10=210 
8=FIXT.1.1 9=128 35=h 34=7 49=ROFX 52=20201012-21:00:38.070 56=usr123 58=EXTERNAL 325=Y 335=NONE 336=[N/A] 340=2 1300=MATBA 1301=ROFX 10=009 
8=FIXT.1.1 9=118 35=h 34=8 49=ROFX 52=20201012-21:00:38.581 56=usr123 325=Y 335=NONE 336=1 340=0 625=1 1300=[N/A] 1301=ROFX 10=216 

我尝试购买

8=FIXT.1.1 9=151 35=D 34=2 49=usr123 52=20201012-21:00:39.084 56=ROFX 1128=7 11=1132322 21=1 40=1 44=250 54=1 55=SOJ.ROSNov20 59=0 60=20201012-21:00:39 99=1 10=151 

得到拒绝

8=FIXT.1.1 9=145 35=j 34=9 49=ROFX 52=20201012-21:00:39.225 56=usr123 58=Internal application error,contact support.13558951763361350 372=[N/A] 380=4 10=036

我尝试了几种方法来发出此消息,总是得到相同的响应。

我的问题:

  • newOrderSingle出问题了吗?
  • 我有一个使用pyRofex的python工作机器人。我有办法查看pyRofex生成什么修复消息吗?
  • 可以在仪器上使用标签55吗? 55=SOJ.ROSNov20我在该字段中看到了一些值为“ EUR / USD”的示例。该符号是否应该成为组的一部分?
  • 关于ClOrdID:再营销文档指出

订单应具有机构为交易日分配的唯一标识符(标签ClOrdID )。标识符重复的订单将被交易所拒绝。

但是您看到的每个客户端都在内部管理这些ClOrdID。我了解唯一的限制是它不会在单个交易日内重复。我说对了吗?

提前谢谢!

解决方法

正确处理!当我成为固定协议专家时,我还不了解这些问题。当然,我现在可以向您传达允许我购买期权期货的信息。

8=FIXT.1.1                //Dictionary
9=220                     //Body Length
35=D                      //Message type. D= New order single
34=2                      //MdgSeqNum 
49=myuser                 //User
52=20201016-00:21:56.758  //Sending time
56=ROFX                   //Target comp ID
1128=7                    //Dictionary version? 7=FIX50SP2
1=REMXXXX                 //Account
11=1223221                //ClOrdID 
21=3                      //HandlInst. 3=manual order
22=8                      //ID source. 8=Exchange Symbol
38=2                      //Number of shares ordered. 
40=2                      //Order type. 2=LIMIT   *1
44=100                    //Price
54=1                      //Side. 1=BUY 2=SELL
55=SOJ.ROSNov20 220c      //Symbol
60=20201016-00:21:56      //Time of execution/order creation        
167=OPT                   //Security type. OPT=options
200=NOV20                 //MaturityMonthYear 
202=100                   //StrikePrice 
231=100                   //ContractMultiplier
461=F                     //CFI_CODE. F=FUTURE      
10=118                    //CheckSum


*1: I dont yet understand the difference between order "LIMIT" or "MARKET" but that is what solved it. 

收到该消息后,我得到了这个答案:

8=FIXT.1.1|9=315|35=8|34=9|49=ROFX|52=20201016-00:21:56.900|56=user|1=Account|6=100.0000|11=1223221|14=2|17=T7661551|31=100.0|32=2|37=189923278|38=2|39=2|40=2|44=100.0|54=1|55=SOJ.ROSNov20 220c|58=Operada |59=0|60=20201016-00:21:56.898|150=F|151=0|207=ROFX|382=1|375=PMYVTR|453=1|448=user|447=D|452=11|10=174|

关于我涉及ClOrdID 的问题:由客户管理,唯一的限制是不要在一个交易日内重复相同的ID。

要出售未来期权,将Side 从1(买入)更改为2(卖出)的相同消息也可以正常工作。

我很确定我的邮件中还有其他字段,请注意。

谢谢大家的回答,他们提供了很多帮助!

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...