US 11,935,123 B2
Transactionally deterministic high speed financial exchange having improved, efficiency, communication, customization, performance, access, trading opportunities, credit controls, and fault tolerance
Ari Studnitzer, Northbrook, IL (US); Zachary Bonig, Skokie, IL (US); Ryan Eavy, Chicago, IL (US); Frank Kmiec, Carey, IL (US); Barry Galster, Chicago, IL (US); and Paul Callaway, Chicago, IL (US)
Assigned to Chicago Mercantile Exchange Inc., Chicago, IL (US)
Filed by Chicago Mercantile Exchange Inc., Chicago, IL (US)
Filed on May 15, 2023, as Appl. No. 18/197,192.
Application 18/197,192 is a continuation of application No. 17/939,106, filed on Sep. 7, 2022, granted, now 11,688,011.
Application 17/939,106 is a continuation of application No. 17/097,053, filed on Nov. 13, 2020, granted, now 11,475,520, issued on Oct. 18, 2022.
Application 17/097,053 is a continuation of application No. 16/408,022, filed on May 9, 2019, granted, now 10,867,350, issued on Dec. 15, 2020.
Application 16/408,022 is a continuation of application No. 14/074,668, filed on Nov. 7, 2013, granted, now 10,332,206, issued on Jun. 25, 2019.
Prior Publication US 2023/0281714 A1, Sep. 7, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. G06Q 40/00 (2023.01); G06Q 40/04 (2012.01)
CPC G06Q 40/04 (2013.01) 24 Claims
OG exemplary drawing
 
1. A system comprising:
a processor external to a plurality of hardware match engines and coupled therewith via an electronic communications network, each of the plurality of hardware match engines comprising a database which stores data indicative of orders previously received thereby which remain unsatisfied, wherein each of the plurality of hardware match engines is unable to access the databases of the others, the processor further coupled with a memory which stores computer executable instructions which, when executed by the processor, cause the processor to:
receive data indicative of each of the plurality of hardware match engines attempts thereby to satisfy received incoming orders for a transaction of at least one financial instrument, and store the received data in the memory as representative of all unsatisfied orders stored in all of the databases of the plurality of hardware match engines;
identify, using the data stored in the memory when the received data indicative of one of the plurality of hardware match being unable to fully satisfy an incoming order received thereby, data stored in the memory indicative of any unsatisfied orders of at least one other of the plurality of match engines, where a transaction between the incoming order and any of the identified unsatisfied orders would at least partially satisfy the incoming order and/or any of the identified unsatisfied orders; and
generate, based on the identification, at least one synthetic counter order for a transaction counter to the incoming order and/or one or more of the identified unsatisfied orders, and communicate, via the electronic communications network, the generated at least one synthetic counter order to those hardware match engines of the plurality of hardware match engines which received the incoming and identified unsatisfied orders for which the synthetic counter order is counter thereto, each of which processes the synthetic order in a same manner as an incoming order thereto.