[英]Getting no response from the server when sending market orders via the FIX API
I am trying to send a purchase order, but I am not receiving a response from the server.我正在尝试发送采购订单,但我没有收到来自服务器的响应。 The session is correct, and I am connected to port 5202. The python code is:
session 是正确的,我连接到端口 5202。 python 代码是:
mdr = fix.Message()
mdr.getHeader().setField(fix.BeginString(fix.BeginString_FIX44))
mdr.getHeader().setField(fix.MsgType(fix.MsgType_NewOrderSingle))
mdr.getHeader().setField(fix.TargetSubID('TRADE'))
mdr.getHeader().setField(fix.SenderSubID('TRADE'))
mdr.setField(fix.ClOrdID(str(str(self.genExecID())))
mdr.setField(fix.HandlInst('1')))
mdr.setField(fix.Side('1'))
mdr.setField(fix.Symbol('1'))
mdr.setField(fix.OrderQty(0.01))
mdr.setField(fix.Currency('EUR'))
mdr.setField(fix.TimeInForce('1'))
mdr.setField(fix.OrdType('1'))
trstime = fix.TransactTime()
trstime.setString(datetime.utcnow().strftime('%Y%m%d-%H:%M:%S.%f')[:-3])
mdr.setField(trstime)
fix.Session.sendToTarget(mdr, self.sessionID)
And the message it generates is:它生成的消息是:
8=FIX.4.4☺9=158☺35=D☺34=2☺49=demo.ctrader.3449248☺50=TRADE☺52=20220310-10:37:36.000☺56=CSERVER☺57=TRADE☺11=1☺15=EUR☺21=1☺38=0.01☺40=1☺54=1☺55=1☺59=1☺60=20220310-10:37:36.898☺10=130☺
Does anyone miss any fields or see any errors in the message.是否有人错过任何字段或在消息中看到任何错误。 Thank you very much.
非常感谢。
This might be a bit late...but I had a similar issue and changed my fix message to the following:这可能有点晚了......但我遇到了类似的问题并将我的修复消息更改为以下内容:
Tag 50 (sendersubid) - Should be a random string of characters for that particular session you are logging in with and should be changed with every new login.标签 50 (sendersubid) - 应该是您登录时使用的特定 session 的随机字符串,并且应该在每次新登录时更改。 If you log in multiple times with the same sendersubid, I think the server rejects.
如果您使用相同的 sendersubid 多次登录,我认为服务器会拒绝。
Tag 38 (lot size) - you used "0.01".标签 38(手数) - 您使用了“0.01”。 Try instead "1000"
尝试改为“1000”
"CSERVER" should be "cServer" “CSERVER”应该是“cServer”
hope it helps希望能帮助到你
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.