问题描述
我正在使用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(卖出)的相同消息也可以正常工作。
我很确定我的邮件中还有其他字段,请注意。
谢谢大家的回答,他们提供了很多帮助!