The Last Look…
Posted by Colin Lambert. Last updated: September 5, 2023
It is time, again, to talk about LP behaviour on platforms and those platforms’ apparent inability, or refusal, to act upon activity that is taking place, empirically, in front of their eyes. It’s all very well having a global code of conduct but anecdotally, in one crucial area, almost 50% of LPs seem happy to ignore it – even worse, from where I sit, the behaviour is actually getting worse.
I am talking, of course, about round-trip times on platforms and what is, in some instances, massive asymmetry between accepts and rejects – often allied to high reject rates – and blatant disregard for the best practice guidance that says there should be no additional hold time imposed in the trade acceptance process.
The latest data set to land on my desk follows up something I wrote about in January 2023, in other words, it is about the same platform, so while I cannot compare individual LPs – names are redacted – I can look at the top 20 overall. Obviously, some names may have changed in that top 20, but given the make-up of the FX market it is unlikely to be too many – and what I see bothers me…a lot.
To be clear, this is not about how long it takes an LP to round-trip a request on a platform – that is variable; it is about direct evidence that not only are more LPs playing games around additional hold times, they are doing so more egregiously.
In the January column, I noted that four of the top 20 LPs had average reject times more than twice that of their accepts, and there were five others with noticeably longer reject times. In the latest data, there are now nine of the top 20 LPs with reject hold times more than twice their accepts, and there is one other with a noticeable gap between the two, although not quite double.
The good news is that the other LPs on the list continue to play by the book and are largely symmetric or, in the case of six, skewed quite heavily the other way, accepts take longer than rejects. At face value this is also questionable, but could be down to the LPs refreshing prices quicker than the customer’s system can handle, resulting in the latter hitting stale prices, which are auto-rejected.
Back to the bad news, though, because one LP, in the top 10, has an average reject hold time more than 13 times its average accept hold time, and in case you’re wondering, no, there isn’t a decimal point missing there, an already latent 30ms-plus hold time for accepts is blown out to over 460ms for rejects. This behaviour, I would point out, comes with a cheeky little 6.7% reject rate overall – the only “good” news here being this LP is only fourth worst when it comes to reject rates in the top 20.
In today’s FX market quite how an LP expects to get away with holding a trade request for over 1.2 seconds is beyond me
Further down the list there are worse examples – one has a reject hold time more than 37-times longer than accept (with an 11.7% reject rate) and another has a 14.1% reject rate (and is almost double the length when rejecting. It is not so much the reject ratio that I object to – some LPs have a pretty poor counterparty book clearly – it is the combination of these rates with excessively long hold times. What are these LPs doing during that window? I can’t believe they stop trading for 400-plus milliseconds.
I have also seen data which indicates that outside of the top 20 there are a couple of LPs, one of which has a reject hold time 55-times longer than accept and the other, wait for it, just the small matter of 173-times longer! I would point out that neither are in the sub-5ms bracket for accepts, so the time taken to reject trades – and remember these are averages for the month – is getting close to how long it took me back in the voice days! Quite how an LP expects to get away with holding a trade request for over 1.2 seconds is beyond me.
As I have written before, though, we need to ask questions of platforms that allow this behaviour to take place – and I have seen similar data from another venue, but have not yet been able to compare it over time. It’s all very well platforms hiding behind the excuse that they can’t moderate participants’ behaviour because they are on multiple channels, but isn’t this is an outrageous example of potential abuse on just their platform?
For a start, one could ask why, in an era where just about every platform has at most a 200ms latency ceiling, and many much less, four LPs not only exceed that threshold, but demonstrate in their accept hold times, that they are perfectly able to adhere to the round-trip time rules?
We should also ask questions of the consumers – how blind to this do you need to be? It is clear that people are playing games, why put up with it? Bizarrely, in the data I have seen, there is an LP with immediate fill times and 2ms average reject time, with a 0.1% reject rate – and it sits outside the top 10, just behind an LP with a reject time 40-times longer than accept!
This LP is clearly trying to do the right thing and is not getting rewarded for it. There could be some circumstances to explain this – they may be trading small amounts only and therefore do not register with some bigger clients, but it’s not a good look.
Accepting (grudgingly of course) that there is an argument for a very small difference between accepts and rejects (someone skewing for example is always likely to accept immediately), it is still worth asking the question, should we do something about this? In the data I am looking at, just four of the top 20 LPs were anything like symmetric (with 2ms difference) and only one was perfectly symmetric. One hopes this LP is making good money because its clients seem to be happy, and it is number one on the ladder – some reward for doing the right thing, hopefully.
The FX Global Code recommends that LPs disclose the expected, or average, time it will take to process a client’s trade request – I have flicked through many of them and nowhere can I find a statement that it will take 10s of times longer to reject than fill – and this is one of a few issues facing the Global FX Committee (GFXC) as it approaches its next consultation over the need, or otherwise, to update the FX Global Code.
Firstly, and most importantly I suspect, because the guidance of additional hold time is in a separate document and not explicitly mentioned in the Code itself, multiple LPs clearly feel comfortable in ignoring the issue. They are all signatories to the Code, so clearly have decided that proportionality works both ways!
Perhaps it is time for the GFXC to debate bringing the guidance from the 2021 document on last look into the Code formally? I would remind people that the UK regulator, the Financial Conduct Authority, explicitly backs zero additional hold times, stating in 2021, “Regardless of the terminology used, last look practices that incorporate a delay that is additional to what is required to complete price and validity checks (some market participants refer to such deliberate delays as ‘additional hold time’) are not consistent with the Codes.”
A second issue is the sheer scale of some asymmetries. I barely understand rejects taking place a few milliseconds longer than an accept, but hundreds of milliseconds? It’s clear there is something going on, perhaps the GFXC can debate this and report back to the industry what exactly it thinks it is that is occurring? I have racked my brains and talked to dozens of people in the industry about this and the only conclusions I/we can come up with – apart from the trite “we’re giving the customer more time for their trade to come back into court” – is that something strange is taking place; and by “strange” I mean potentially dodgy of course.
If we ignore guidance around zero additional hold time, where else do we decide it’s easier to turn a blind eye to best practice, and how long before it gets to something very serious?
Lastly, should the GFXC consider strengthening the guidance around how platforms, if indeed they should, police this type of behaviour? It is obviously to anyone with a working knowledge of the situation that huge asymmetry is problematic, shouldn’t the platforms be alert to it? I fully acknowledge that they are making the data available to the consumers, which is the right thing to do, but perhaps they should consider enforcing some of the GFXC guidelines themselves? I am not necessarily saying they should (OK, I am actually), but at least have the discussion about it.
Turkeys are not going to vote for Christmas, but I find it tiresome to repeatedly be told by some platforms that they can’t risk angering their LPs, because I genuinely believe that in such a commoditised market such as G10 spot FX, if one LP is forced off a venue, the other existing LPs will step into the breach, unless the customer is toxic to all and sundry. The spot market is highly competitive, do we really believe that losing one or two LPs out of the dozens that platforms purport to have (and I think we can all agree it’s more like 10 genuine LPs), will make a noticeable difference?
Either way, every time I see data like that discussed today it bothers me. Not only does behaviour like this breed conflict, in a worse-case scenario matters could go legal. The FX Global Code did a brilliant job of formalising what is, and is not, acceptable in the current FX market, and it continues to do so through its regular reviews and occasional updates. It worries me that in one area at least, people seem content to breach best practice, because this could be a slippery slope.
Some may dismiss this as just a small part of the FX puzzle – I would argue the trading process is a pretty big part of course – but any wilful ignorance of best practice needs to looked at. After all, look at how looking for a match at the Fix escalated into an information sharing nightmare for banks that cost them billions. If we ignore zero additional hold time, where else do we decide it’s easier to turn a blind eye to best practice, and how long before it gets to something very serious?