MarketFactory provides low-latency API connectivity in LD4/NY4/TY3/DC3 to 80+ ECN/Bank/Non Bank venues, allowing Customers to access Normalised and/or Aggregated data from these venues, place orders, and make markets.
Client-side integration may be via the Whisperer API available in C++ (as static libraries for Linux), C# (.NET assemblies) and (Java JAR files). Alternatively Customers may integrate directly via our SBE interface.
In each case, the language-specific documentation available on this site is authoritative for that implementation.
The Whisperer API distribution contains automatically-generated API reference documentation for both Java (JavaDoc) and C++ (Doxygen), in the top-level java/doc/ and cpp/doc/ directories.
If you are a prospective customer, please contact [email protected] for more information.
MarketFactory (MF) defines API Normalisation as a direct transformation between Venue and MF API representations, with no modification of Customer/Venue intent.
Any feature that results in the creation, modification or deletion of Customer or Venue-provided data (eg messages sent/received, message content - prices, qtys, value dates etc) is Business Logic.
The default Whisperer behaviour should be to act as a normalised API only, although for historic reasons Whisperer currently does provide additional features.
Future requests for enhancements that require business logic within Whisperer will, most likely, be rejected - because of the implicit log-term costs that would otherwise exist:
To this end, MF is working towards a medium-long term goal where all Whisperer business logic will:
There are obviously many aspects of the trading work flow that cannot be normalised. These are typically venue-specific behaviours or features, such as:
Whisperer has a number of aims, the primary aim is normalisation, accomplished by reducing the barriers to integration, arising from the differences between messaging transports and their application across markets. Whisperer achieves this by the adoption of consistency, with concepts and terminology used across Trading Venues being normalised and given consistent and specific definitions. These definitions are used as uniformly as possible throughout the API. This shields customer applications from having to maintain code specific to a Trading Venue.
Whisperer as a byproduct of meeting the first two aims, also results in the reduction of physical feeds that the customer has to connect to from within the data centre (with the only connection going from the customer infrastructure to the MarketFactory instance (possibly with an additional secondary connection for redundancy).
A Customer Application also exercises full control as to when it reads from the communication socket(s) and dispatches events. The Customer and their Application has complete control to decide as to where and when processing occurs
The Whisperer application software may reside on a single server or a network of servers which can be separated geographically. The servers are installed, hosted, maintained, and monitored by MarketFactory who take responsibility for their maintenance.
Using this model results in a reduction in costs for a firm, that would otherwise have to engage a team to implement integration to each of the venues they connect to with the varying protocols and venue specific enumerations.
Further detail is provided in the following page(s):