我目前使用以下代码来获取当前价格。然后我收到上的值public void OnMessage(QuickFix.FIX44.MassQuote m, SessionID s)
QuickFix.FIX44.MarketDataRequest msg = new QuickFix.FIX44.MarketDataRequest();
// Fill message fields
msg.SetField(new MDReqID("001"));
msg.SetField(new SubscriptionRequestType('1'));
msg.SetField(new MarketDepth(0));
msg.SetField(new MDUpdateType(MDUpdateType.FULL_REFRESH));
// Add the MDEntryTypes group
QuickFix.FIX44.MarketDataRequest.NoMDEntryTypesGroup noMDEntryTypes = new QuickFix.FIX44.MarketDataRequest.NoMDEntryTypesGroup();
noMDEntryTypes.SetField(new MDEntryType('0'));
msg.AddGroup(noMDEntryTypes);
// Add the NoRelatedSym group
QuickFix.FIX44.MarketDataRequest.NoRelatedSymGroup noRelatedSym = new QuickFix.FIX44.MarketDataRequest.NoRelatedSymGroup();
noRelatedSym.SetField(new Symbol(pair.Insert(3, "/")));
msg.AddGroup(noRelatedSym);
Console.WriteLine("Sending Market Request...");
if(!_priceSession.SendRedundantResendRequests) _priceSession.SendRedundantResendRequests = true;
SendMessagePrice(msg);
但是这种方法对我来说并不理想。我希望能够在更新后立即看到当前价格。在这个小例子中,我想在Console.WriteLine()
更新后立即将最新的买/卖价格发送到控制台(我想一次只查看一个货币对的价格)。
如果有人能提出更好的方法来更快速、更轻松地获取数据,那就太好了。
先感谢您。
编辑:来自服务器的响应
8=FIX.4.4|9=378|35=i|34=2|49=XXXXX|52=20200122-10:09:26.537|56=QXXX|117=1|296=1|302=001|295= 5|299=0|106=0|134=2000000|135=1000000|188=1.10914|190=1.10916|299=1|106=10|134=1800000|135=1000000|188=1.10914|190=1.10916| 299=2|106=11|134=1500000|135=500000|188=1.10914|190=1.10916|299=3|106=6|134=1000000|135=100000|188=1.10914|190=1.10916|299= 4|106=6|134=2000000|135=5400000|188=1.10913|190=1.10917|10=113|
编辑:过了一会儿,我收到来自对方的此消息后收到此错误
收到消息
传入:8=FIX.4.4|9=502|35=W|34=7|49=XXXXX|52=20200122-10:09:28.074|56=QXXX|55=EUR/USD|262=001|268= 10|269=0|270=1.10914|271=1700000|299=1|106=6|269=0|270=1.10914|271=1000000|299=3|106=11|269=0|270=1.10914| 271=1000000|299=0|106=10|269=0|270=1.10913|271=3000000|299=4|106=10|269=0|270=1.10913|271=1500000|299=2|106= 9|269=1|270=1.10916|271=1000000|299=0|106=0|269=1|270=1.10916|271=1000000|299=1|106=10|269=1|270=1.10916| 271=500000|299=2|106=11|269=1|270=1.10916|271=100000|299=3|106=6|269=1|270=1.10917|271=4500000|299=4|106= 13|10=232
事件:消息 7 被拒绝:标签出现多次(字段=106)