Where once it may have been sufficient to embellish an algo with a fancy name and a shiny exterior, the FX algo market has now evolved to emphasize performance. This requires a detailed analysis of in-house and third party performance metrics, opening up the hood and taking a look inside to make sure the algos are running smoothly and making sure that any inefficiencies are ironed out. Equally, it is important to see what liquidity the algo is running on. Rewind ten years to the earliest product, and we were busy analyzing the toxicity of liquidity sources. Major algo providers may have all gone ‘unleaded’ since then, but there are still optimizations to be found in the choice of venues. This has certainly been the main focus for Goldman Sachs over the past year. There is a lot going on behind the scenes that clients are not necessarily aware of but that is very important to algo performance and ensuring our algos remain as competitive as possible.In this article we look at this possibly unglamorous but no less important component of recent algo development.
Changing market environment
The distribution of FX liquidity continues to evolve. New venues come online especially in more recent markets like Asia NDF. Some established venues fade in importance or need to be used in different ways. One key area we have been working on is where we source liquidity passively and how we can do so in an intelligent way. Bank algos have the ability to post passively in markets, to buy on the bid or to sell on the offer, and this is a unique selling point for a bank algo versus a client slicing up the order themselves and then drip feeding it into the market. Where a client does this, they will typically be crossing spread, and will need to consider the balance between spread reduction and information leakage when selecting liquidity providers… Our algos, by contrast, can use so-called primary markets, our internal liquidity as well as certain mid pools to post passively. In the last few years, possibly accelerated by the unusual liquidity slump associated with Covid volatility, the ‘primary markets’ have become a little less primary as measured by their relevance as a venue to GS algos, so now there’s a renewed interest in certain ECNs, as a posting venue. A number of innovative order types are available, including ones that are opportunistic between mid-matching and buying on the bid, depending upon what other participants are doing. This feature is now available in the faster mode of both our dynamic hybrid flagship algo and our pegged algo.
Of course, a downside of posting is signalling risk. For this reason, GS algos have actually always had the ability to decide not to post, or only to post very favourably, if they detect that there is some sort of market dislocation. But this feature has been a little underutilised historically, mainly due to the risk of regret. Yet now with the liquidity boost from internalisation, there is not a scarcity anymore and so we felt it was time to take a fresh look at this feature.
Internal and Global Code compliant liquidity
Another revolution under the hood is internalization, familiar initially from e-book transfers that are still critical to keeping trajectory algos like TWAPs on schedule, and subsequently from filling in a matching engine against other offsetting interest. We are now adding a new third way which is – with a client’s permission – to skew our pricing to a select group of trusted clients and to use the inventory that is built up from that skew to fill the algorithm. This option will soon be available for all clients who are interested in using it on our two flagship algos. Goldman Sachs is one of the few banks to possess a big enough franchise for this to be effective and, from a client perspective, it is another way to obtain internalisation that is associated with softer markouts than is typically found by going to external venues.
The changes discussed so far mainly relate to passive execution, but we have also been looking at the other side of the algo construct which is how do we aggress markets/take liquidity? One important part of this is the concept of curated liquidity. Over the last few years, there have been a couple of venues that have emerged that stream bank liquidity, meaning they offer firm liquidity from Global Code compliant sources that can be consumed in a number of ways such as by bank algos.
While not a focus for all clients, a number of clients have liked this concept, but we’ve always felt that it is something that we can do ourselves, cutting out the middleman, determining the mix of liquidity providers ourselves, and targeting the stream to specific (softer) algo styles rather than opening up the taking to all. And so we have in the past couple of weeks launched our own Global Code compliant offering for our flagship dynamic hybrid algo, where a number of banks make to us across all major deliverable currency pairs and the GS algo is the only taker. It is looking like a very useful liquidity source with a markout profile that achieves an appropriate balance between benefits to our algo clients and to our liquidity providers on the channel.
In addition, we have a lot of different ECNs that we can take liquidity from. With far better internalisation, as discussed earlier, we are able to take a more targeted approach to the liquidity options on offer. So for example, we have recently been looking at the quality of our ECNs hour by hour, throughout the day, and measuring how well they perform at different times. We can then further fine tune our liquidity curation process and weed out anything that is not performing as expected.
Fine tuning forwards
As we consider algo performance, a piece that is sometimes overlooked is the quality of forward points on any algo roll from spot in the case of deliverable currency pairs or from the relevant electronically traded forward date for NDFs. Post-trade algo roll carries point-in-time risk and correlation risk between spot and points. The need to appropriately charge for the cost of capital jolted TCA on forward points into the limelight for some banks and their clients this year, and although algo rolls at GS no longer incur capital charges by default, the subject of achieving better execution quality on points remains topical. So, in another quiet revolution under the hood, we are making changes to the way that our algos source forward points to do so whenever the algo executes in the corresponding spot market, i.e. at a child order level.
This is a significant change in algo logic, but not something that a client would necessarily immediately notice – the benefits will become clear in the post trade TCA.
While some FX algo providers appear to see AI as a magic wand to wave at liquidity, in our view, these solutions should be approached with caution.
Such models are black boxes, so if something does go wrong, then the algorithm has no way of explaining why. It might be some structure that the machine learning process saw in the data which in fact is spurious or exists in some historical dataset but does not persist. In comparison, adopting a systematic, data driven approach on both the passive posting as well as the taking side has proved to be an effective way to tweak and fine tune our algos. Clients can continue to expect the reliability of the Goldman algo brand but with a smoother drive through those liquidity bumps.