Potential FIX FEED DOM problem
Potential FIX FEED DOM problem
23 Aug 2016, 16:48
Hi,
I have been having some problems with the DOM (full book) Market Data - Incremental Refresh on a brokers feeds. I havent yet seen it on any other brokers feeds but others are nowhere near so busy
I understand the feed in question is unfiltered so will have fleeting crossing prices, but i am seeing some attempted deletions of prices not yet placed and stale prices left on the book
I captured a series of FIX messages showing book price updates - it shows an attempt at deleting a quote a couple of message before the quote is added - on this feed this is happening frequently - i can supply more examples if you require
I have scanned the whole FIX feed and this is the first time the query id has been used and it is not referred to in the next 10 mins at least (the segment from my log file)
I have considered that the query is is an old entry and it is merely being re-used but surely i would have seen an initial refresh when i connected that included this query id. See above comment re it not being referred to again
I clear my book onLogon and onLogout, and on market full refresh (which BTW is not documented in your FIX guide) and the messagesd between 22276 & 22279 below are just updates for another symbol which i have omitted for clarity
Here is a FIX segment showing the affected query/feed
8=FIX.4.4^A9=299^A35=X^A34=22276^A49=cServer^A52=20160823-12:49:16.814^A56=fxpig.9999999^A57=QUOTE^A268=5^A279=0^A269=0^A278=541050055^A55=11^A270=76.537^A271=1500000^A279=0^A269=1^A278=541050059^A55=11^A270=76.546^A271=1000000^A279=0^A269=1^A278=541050060^A55=11^A270=76.547^A271=2000000^A279=2^A278=541049996^A55=11^A279=2^A278=541049410^A55=11^A10=168^A
entry +AUDJPY 279=0:278=541050055,269=0,270=76.537/271=1500000.0
entry +AUDJPY 279=0:278=541050059,269=1,270=76.546/271=1000000.0
entry +AUDJPY 279=0:278=541050060,269=1,270=76.547/271=2000000.0
*** AUDJPY:541049996
entry -AUDJPY 279=2:278=541049996
entry -AUDJPY 279=2:278=541049410
pigsf,AUDJPY,76.54/50(69ms),76.539/50(201ms),76.538/100(69ms),76.537/100(2ms),76.537/150(0ms),;76.546/100(0ms),76.547/200(0ms),
// Show for completeness but not relevant
8=FIX.4.4^A9=187^A35=X^A34=22277^A49=cServer^A52=20160823-12:49:16.814^A56=fxpig.99999^A57=QUOTE^A268=3^A279=0^A269=0^A278=541049988^A55=7^A270=131.925^A271=2500000^A279=2^A278=541048892^A55=7^A279=2^A278=541049899^A55=7^A10=088^A8=FIX.4.4^A9=350^A35=X^A34=22278^A49=cServer^A52=20160823-12:49:16.814^A56=fxpig.99999^A57=QUOTE^A268=6^A279=0^A269=0^A278=541050105^A55=7^A270=131.926^A271=1000000^A279=0^A269=0^A278=541050106^A55=7^A270=131.928^A271=500000^A279=0^A269=0^A278=541050103^A55=7^A270=131.925^A271=1500000^A279=0^A269=1^A278=541050111^A55=7^A270=131.939^A271=500000^A279=2^A278=541049988^A55=7^A279=2^A278=541048676^A55=7^A10=244^A
8=FIX.4.4^A9=297^A35=X^A34=22279^A49=cServer^A52=20160823-12:49:16.814^A56=fxpig.9999999^A57=QUOTE^A268=5^A279=0^A269=0^A278=541049996^A55=11^A270=76.537^A271=2000000^A279=0^A269=0^A278=541049995^A55=11^A270=76.538^A271=500000^A279=0^A269=1^A278=541050001^A55=11^A270=76.545^A271=500000^A279=2^A278=541049906^A55=11^A279=2^A278=541049222^A55=11^A10=100^A
entry +AUDJPY 279=0:278=541049996,269=0,270=76.537/271=2000000.0
entry +AUDJPY 279=0:278=541049995,269=0,270=76.538/271=500000.0
entry +AUDJPY 279=0:278=541050001,269=1,270=76.545/271=500000.0
entry -AUDJPY 279=2:278=541049906
entry -AUDJPY 279=2:278=541049222
pigsf,AUDJPY,76.54/50(69ms),76.539/50(201ms),76.538/50(0ms),76.537/200(0ms),76.537/150(0ms),;76.545/50(0ms),76.546/100(0ms),76.547/200(0ms),
Replies
ianj
02 Oct 2016, 02:50
RE: RE:
As of Sept 28th this is STILL a problem - specifically on the FxPig LIVE SPA feed (and MPA to a lesser degree)
Here you have a quote being deleted (where there is none on the book) and then re-added (never to be removed)
If you need examples, either in the clear form below or the original FIX, do not hesitate to ask
I am unable to use the FIX tiered feed live until i get past this as i am unable to analyse the remainder for faults and this is burying any possibility of analysis
The updates are so close together (1 ms) that i would hazard a guess that it is a message ordering problem - are the messages coming from different sources/threads and not being re-integrated correctly?
Please advise
16.09.27 22:00:00.383,pigs,AUDUSD,+761596536:1:0.76685/1000000,+761596535:1:0.76684/2000000,-761596455
16.09.27 22:00:00.384,pigs,AUDUSD,+761596455:1:0.76684/3000000,-761593363,-761594513
ianj said:
If you have any difficult replicating the issue, try the fxpig SPA (unfiltered) feed, and also to a MUCH lesser degree the MPA feed. I have not seen the problem on icmarkets or pepperstone so far.
@ianj
ian.p.johnson1
23 Aug 2016, 16:53
Another example: 542093008 on 2 consecutive FIX messages - i have loads if you like
8=FIX.4.4^A9=220^A35=X^A34=77676^A49=cServer^A52=20160823-12:52:40.493^A56=xxxxx.999999^A57=QUOTE^A268=3^A279=0^A269=0^A278=542093027^A55=19^A270=1.70234^A271=1000000^A279=0^A269=0^A278=542093024^A55=19^A270=1.70235^A271=5000000^A279=2^A278=542093008^A55=19^A10=037^A
entry +GBPCAD 279=0:278=542093027,269=0,270=1.70234/271=1000000.0
entry +GBPCAD 279=0:278=542093024,269=0,270=1.70235/271=5000000.0
*** GBPCAD:542093008
entry -GBPCAD 279=2:278=542093008
pigsf,GBPCAD,1.70241/100(24ms),1.70239/100(24ms),1.70237/50(336ms),1.70235/700(24ms),1.70235/500(0ms),1.70234/100(0ms),;1.70261/50(84ms),1.70262/150(24ms),1.70263/50(84ms),1.70264/100(336ms),
8=FIX.4.4^A9=190^A35=X^A34=77677^A49=cServer^A52=20160823-12:52:40.493^A56=xxxxx.999999^A57=QUOTE^A268=3^A279=0^A269=0^A278=542093008^A55=19^A270=1.70235^A271=8000000^A279=2^A278=542092943^A55=19^A279=2^A278=542092941^A55=19^A10=208^A
entry +GBPCAD 279=0:278=542093008,269=0,270=1.70235/271=8000000.0
entry -GBPCAD 279=2:278=542092943
entry -GBPCAD 279=2:278=542092941
pigsf,GBPCAD,1.70241/100(24ms),1.70237/50(336ms),1.70235/800(0ms),1.70235/500(0ms),1.70234/100(0ms),;1.70261/50(84ms),1.70262/150(24ms),1.70263/50(84ms),1.70264/100(336ms),
@ian.p.johnson1