Transactionally Deterministic High Speed Financial Exchange Having Improved, Efficiency, Communication, Customization, Performance, Access, Trading Opportunities, Credit Controls, and Fault Tolerance
First Claim
Patent Images
1. A system for improving efficiency of a trading system for a plurality of financial instruments, each of the plurality of financial instruments comprising at lease one component, the system comprising:
- an order memory operative to store data representative of a set of previously received but unsatisfied orders, each order being for a transaction for at least one of the plurality of financial instruments;
a plurality of match engines coupled with the order memory, each of the plurality of match engines comprising a first logic component operative to implement a market for a financial instrument of the plurality of financial instruments by being further operative to cause the first processor to attempt to match an incoming order provided thereto for a transaction for the financial instrument with at least one other of the set of previously received but unsatisfied orders, the at least one other previously received but unsatisfied order being for a transaction counter thereto for a financial instrument of the plurality of financial instruments having at least one component in common with the financial instrument of the incoming order, to at least partially satisfy one or both of the incoming order or the at least one other previously received order, and update the stored data in the order memory representative of the set of previously received but unsatisfied orders based thereon; and
a first logic component, coupled with the order memory and the plurality of match engines and operative to, upon receipt of an incoming order from a market participant for a transaction for a financial instrument, determine a subset of the set of previously received but unsatisfied orders each having at least one component of the associated financial instrument in common with the financial instrument of the incoming order, and determine if access to the subset has been previously allocated to one of the plurality of match engines and, where access to the subset has been previously allocated to one of the plurality of match engines, route the incoming order thereto for a match attempt thereby, and wherein access to the subset has not been allocated to one of the match engines, select one of the plurality of match engines, allocate access to the subset to the selected match engine and route the incoming order to the selected match engine for a match attempt thereby.
1 Assignment
0 Petitions
Accused Products
Abstract
The disclosed embodiments relate to implementation of a trading system, which may also be referred to as a trading system architecture, having improved performance which further assures transactional determinism under increasing processing transaction loads while providing improved trading opportunities, fault tolerance, low latency processing, high volume capacity, risk mitigation and market protections with minimal impact, as well as improved and equitable access to information and opportunities.
-
Citations
41 Claims
-
1. A system for improving efficiency of a trading system for a plurality of financial instruments, each of the plurality of financial instruments comprising at lease one component, the system comprising:
-
an order memory operative to store data representative of a set of previously received but unsatisfied orders, each order being for a transaction for at least one of the plurality of financial instruments; a plurality of match engines coupled with the order memory, each of the plurality of match engines comprising a first logic component operative to implement a market for a financial instrument of the plurality of financial instruments by being further operative to cause the first processor to attempt to match an incoming order provided thereto for a transaction for the financial instrument with at least one other of the set of previously received but unsatisfied orders, the at least one other previously received but unsatisfied order being for a transaction counter thereto for a financial instrument of the plurality of financial instruments having at least one component in common with the financial instrument of the incoming order, to at least partially satisfy one or both of the incoming order or the at least one other previously received order, and update the stored data in the order memory representative of the set of previously received but unsatisfied orders based thereon; and a first logic component, coupled with the order memory and the plurality of match engines and operative to, upon receipt of an incoming order from a market participant for a transaction for a financial instrument, determine a subset of the set of previously received but unsatisfied orders each having at least one component of the associated financial instrument in common with the financial instrument of the incoming order, and determine if access to the subset has been previously allocated to one of the plurality of match engines and, where access to the subset has been previously allocated to one of the plurality of match engines, route the incoming order thereto for a match attempt thereby, and wherein access to the subset has not been allocated to one of the match engines, select one of the plurality of match engines, allocate access to the subset to the selected match engine and route the incoming order to the selected match engine for a match attempt thereby.
-
-
2. A system for improving efficiency of a trading system for a plurality of financial instruments, each of the plurality of financial instruments comprising at lease one component, the system comprising:
-
a memory operative to store data representative of a set of previously received but unsatisfied orders, each order being for a transaction for at least one of the plurality of financial instruments; a plurality of match engines coupled with the memory, each of the plurality of match engines operative to implement a market for a financial instrument of the plurality of financial instruments by being further operative to attempt to match an incoming order provided thereto for a transaction for the financial instrument with at least one other of the set of previously received but unsatisfied orders, the at least one other previously received but unsatisfied order being for a transaction counter thereto for a financial instrument of the plurality of financial instruments having at least one component in common with the financial instrument of the incoming order, to at least partially satisfy one or both of the incoming order or the at least one other previously received order, and update the stored data in the memory representative of the set of previously received but unsatisfied orders based thereon; and an order book allocator coupled with the memory and the plurality of match engines and operative to, upon receipt of an incoming order from a market participant for a transaction for a financial instrument, determine a subset of the set of previously received but unsatisfied orders each having at least one component of the associated financial instrument in common with the financial instrument of the incoming order, and determine if access to the subset has been previously allocated to one of the plurality of match engines and, where access to the subset has been previously allocated to one of the plurality of match engines, route the incoming order thereto for a match attempt thereby, and wherein access to the subset has not been allocated to one of the match engines, select one of the plurality of match engines, allocate access to the subset to the selected match engine and route the incoming order to the selected match engine for a match attempt thereby. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A computer implemented method for improving efficiency of a trading system for a plurality of financial instruments, each of the plurality of financial instruments comprising at lease one component, the method comprising:
-
storing, by a first processor in a memory coupled therewith, data representative of a set of previously received but unsatisfied orders, each order being for a transaction for at least one of the plurality of financial instruments; implementing, by each of a plurality of second processors coupled with the memory, a market for a financial instrument of the plurality of financial instruments by attempting to match an incoming order provided thereto for a transaction for the financial instrument with at least one other of the set of previously received but unsatisfied orders, the at least one other previously received but unsatisfied order being for a transaction counter thereto for a financial instrument of the plurality of financial instruments having at least one component in common with the financial instrument of the incoming order, to at least partially satisfy one or both of the incoming order or the at least one other previously received order, and updating the stored data in the memory representative of the set of previously received but unsatisfied orders based thereon; and determining, by a third processor upon receipt of an incoming order from a market participant for a transaction for a financial instrument, a subset of the set of previously received but unsatisfied orders each having at least one component of the associated financial instrument in common with the financial instrument of the incoming order, and determining if access to the subset has been previously allocated to one of the plurality of second processors and, where access to the subset has been previously allocated to one of the plurality of second processors, routing the incoming order thereto for a match attempt thereby, and wherein access to the subset has not been allocated to one of the second processors, selecting one of the plurality of second processors, allocating access to the subset to the selected second processor and routing the incoming order to the selected second processor for a match attempt thereby. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40)
-
-
41. A system for improving efficiency of a trading system for a plurality of financial instruments, each of the plurality of financial instruments comprising at lease one component, the system comprising:
-
means for storing, in a memory coupled, data representative of a set of previously received but unsatisfied orders, each order being for a transaction for at least one of the plurality of financial instruments; a plurality of means for implementing a market for a financial instrument of the plurality of financial instruments, each of the means for implementing further including means for attempting to match an incoming order provided thereto for a transaction for the financial instrument with at least one other of the set of previously received but unsatisfied orders, the at least one other previously received but unsatisfied order being for a transaction counter thereto for a financial instrument of the plurality of financial instruments having at least one component in common with the financial instrument of the incoming order, to at least partially satisfy one or both of the incoming order or the at least one other previously received order, and means for updating the stored data in the memory representative of the set of previously received but unsatisfied orders based thereon; and means for determining, upon receipt of an incoming order from a market participant for a transaction for a financial instrument, a subset of the set of previously received but unsatisfied orders each having at least one component of the associated financial instrument in common with the financial instrument of the incoming order, and determining if access to the subset has been previously allocated to one of the plurality of match engines and, where access to the subset has been previously allocated to one of the plurality of match engines, means for routing the incoming order thereto for a match attempt thereby, and wherein access to the subset has not been allocated to one of the match engines, means for selecting one of the plurality of match engines, means for allocating access to the subset to the selected match engine and means for routing the incoming order to the selected match engine for a match attempt thereby.
-
Specification