Dynamic allocation of locations of matching engines in a cloud-based exchange
OwnerJonathon Fletcherinventor
Life of this patent
Estimating the term…
Abstract
Various systems and methods for allocating computing resources, such as matching engines or order books, to participants within a cloud-based trading exchange are described. In some embodiments, the systems and methods dynamically allocate cloud-based instances (e.g., instances at different locations) of matching engines to trading sessions of assets. Such dynamic allocation can avoid, prevent, or mitigate participants gaining an advantage based on their geographic or physical location relative to the geographic location (or locations) of the instances of the matching engines. Further, such allocation of resources can be performed using randomization or other allocation techniques.
Claims20
A trading exchange that facilitates trading of assets by participant entities of the trading exchange, the trading exchange comprising:
- an exchange access gateway that facilitates access by the participant entities to trading services provided by the trading exchange;
- a matching engine that operates to trade an asset for the trading exchange during trading sessions;
- multiple cloud-based instances of the matching engine, wherein each cloud-based instance is supported by a virtual server that is located at a geographic location different from geographic locations of virtual servers of other cloud-based instances of the matching engine;
- and
- an allocation system that:
- dynamically selects, for every trading session for the asset associated with the matching engine, one of the multiple cloud-based instances, by:
- receiving an indication of a unique trading session for the asset associated with the matching engine, and
- selecting a cloud-based instance of the matching engine in response to the received indication of the unique trading session;
- and
- routs trading requests during the unique trading session from the exchange access gateway to the virtual server that supports the dynamically selected cloud-based instance of the matching engine via internal communication channels of the trading exchange.
A method, comprising:
- receiving an indication of a new trading session for an asset listed within a cloud-based trading exchange;
- dynamically allocating a single cloud-based instance of a matching engine from multiple cloud-based instances available to the matching engine after receiving the indication of the new trading session,
- wherein the allocated single cloud-based instance provides access to the matching engine for multiple participant devices during the new trading session;
- and
- routing trading requests to the matching engine that are received from participant devices during the new trading session from an exchange access gateway, through which the participant devices access the cloud-based trading exchange, via the dynamically allocated single cloud-based instance of the matching engine.
A non-transitory, computer-readable medium whose contents, when executed by a cloud-based trading exchange, causes the cloud-based trading exchange to perform a method for providing access for participants to order books of the cloud-based trading exchange, the method comprising:
- receiving an indication of a new trading session for an asset within the cloud-based trading exchange,
- wherein the asset is assigned to a specific matching engine of the cloud-based trading exchange for the new trading session;
- dynamically selecting a single cloud-based instance, from multiple cloud-based instances of the specific matching engine, to provide access for the participants to the new trading session in response to the received indication of the new trading session,
- wherein each of the multiple cloud-based instances are located at a geographic location that is unique to and remote from all other cloud-based instances of the cloud-based trading exchange, and
- wherein the participants access the new trading session only via the dynamically selected single cloud-based instance of the matching engine;
- receiving information regarding a sub-optimal condition associated with the selected single cloud-based instance during the new trading session;
- and
- in response to the received information, selecting a different cloud-based instance of the specific matching engine to the new trading session during the new trading session.
Dependencies are inferred from the claim text.