我修復引擎將拒絕的消息,我希望有人能幫助我弄清楚,爲什麼......我收到了下面的樣本消息:QuickFix的麻煩 - 重複組
8=FIXT.1.1 9=518 35=AE 34=4 1128=8 49=XXXXXXX 56=YYYYYYY 52=20130322-17:58:37 552=1 54=1 37=Z00097H4ON 11=NOREF 826=0 78=1 79=NOT SPECIFIED 80=100000.000000 5967=129776.520000 453=5 448=BCART6 452=3 447=D 448=BARX 452=1 447=D 448=BARX 452=16 447=D 448=bcart6 452=11 447=D 448=ABCDEFGHI 452=12 447=D 571=6611540 150=F 17=Z00097H4ON 32=100000.000000 38=100000.000000 15=EUR 1056=129776.520000 31=1.2977652 194=1.298120 195=-3.5480 64=20130409 63=W2 60=20130322-17:26:50 75=20130322 1057=Y 460=4 167=FOR 65=OR 55=EUR/USD 10=121
8=FIXT.1.1 9=124 35=3 34=4 49=XXXXXXX 52=20130322-17:58:37.917 56=YYYYYYY 45=4 58=Tag appears more than once 371=448 372=AE 373=13 10=216
但你可以看到它的被quickfix引擎拒絕。我現在用的是5.0sp1數據字典,並已在我的配置文件中配置它:
[DEFAULT]
ConnectionType=initiator
HeartBtInt=30
ReconnectInterval=10
SocketReuseAddress=Y
FileStorePath=D:\XXX\Interface\ReutersStore
FileLogPath=D:\XXX\Interface\ReutersLog
[SESSION]
BeginString = FIXT.1.1
SenderCompID = XXXXX
TargetCompID= YYYYY
DefaultApplVerId = FIX.5.0
UseDataDictionary=Y
AppDataDictionary=FIX50SP1.xml
StartDay=sunday
StartTime=20:55:00
EndTime=06:05:00
EndDay=saturday
SocketConnectHost= A.B.C.D
SocketConnectPort= 123
沒有人有任何想法,爲什麼發動機會拒絕此消息?我知道quickfix通常能夠處理帶重複組的消息,這是一個配置的事情嗎?任何幫助將不勝感激!
謝謝你解決它。是的,該標籤448是PartyId並且是重複值。我試過已經嘗試過設置ValidateFieldsOutOfOrder = N以及我發現的所有其他屬性,以查看它是否對它有任何影響,但不幸的是,消息仍然被FIX引擎拒絕。 – 2013-03-26 15:34:00
字段如何排列在數據字典中。你有沒有試過擺弄那也?你的UseDataDictionary是Y.所以這也許是一個看似合理的地方。 – DumbCoder 2013-03-26 15:40:19
我正在使用的數據字典是QuickFix引擎附帶的標準FIX50SP1.xml。我看了一下,但一切似乎是爲了... – 2013-03-26 15:50:17