I recently completed some research on single dealer platforms or FX eCommerce systems, which are designed for market makers and dealers in foreign currency trading. My research covered FX aggregation, pricing, auto-hedging, position-keeping, smart order
routing and internalization.
Here are a few tidbits from the research:
FX single dealer platforms aggregate liquidity from dozens of sources, identify base pricing, determine and publish pricing to clients, manage positions, handle order flow, automatically hedge positions, route orders to counterparties, and internalize client
The FX market is highly fragmented, with hundreds of dealing banks, ECNs, and interdealer brokers all publishing prices and competing for order flow. Pricing approaches are not standardized. Liquidity may be reflected as streaming quotes, live resting orders,
indicative prices, request for quotes, or request for streams.
Every FX deal involves two currencies – one being bought and the other being sold. This means that the dealer takes a position with every execution of a customer order, and those positions have to be hedged promptly to reduce risk. However, prices offered
by other banks can shift rapidly, and quotes are not always firm, which makes routing orders and ensuring execution more complicated. The life span and nature of each price varies by venue and sometimes by message. Some venues want a “last look” option allowing
them to take a look at the markets before they automatically execute an order. This might result in them rejecting an order at a quoted price even if the price was valid when the order was sent.
Most FX market data is delivered in pulse intervals instead of continuously, and substantial activity can occur outside of regular data distribution intervals, which also affects the validity of prices, especially in a high frequency trading environment.
Geography also plays a role. Since the dealing banks are geographically distributed around the globe, prices have a varying amount of latency when they first arrive, adding more complexity that has to be considered by the pricing engine, smart order router,
auto-hedging and risk management.
This is a fascinating market with a lot of complexity that makes it very interesting. It is clear that an event-driven architecture is absolutely critical for creating an FX eCommerce system.