IP Library Granted Patent US 10,102,572
Granted Patent B2
US 10,102,572 · App. 12/757,106 · Granted Oct 16, 2018

24 hours global low latency computerized exchange system

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,102,572
App. No.
12/757,106
Granted
Oct 16, 2018
Kind
B2
Abstract

The present technology relates to distributed computerized exchange systems for trading of financial instruments. In particular it relates to a passive matching engine and an active matching engine that cooperates in handling data messages such that less bandwidth is used and so that improvement in latency can be achieved.

Claims (64)

1. A computerized method for transmitting broadcast data in a computerized distributed trading system, the method comprising:

receiving, by a passive matching engine of a first computerized exchange system, an order entry message from a first trader terminal of a first group of computerized trading terminals connected to the passive matching engine of the first computerized exchange system;

creating, by the passive machine engine, a modified order entry message by adding status data, including at least a sequence number related to an order, and relating to an operating state of the passive matching engine to the received order entry message;

forwarding the modified order entry message, including the sequence number, to an active matching engine of a second computerized exchange system for matching;

creating, by the passive matching engine, broadcast data by processing the received order entry message;

generating, by the active matching engine, confirmation data by comparing an operation state of the active matching engine to the operating state of the passive matching engine based on at least the sequence number included in the modified order entry message;

transmitting the confirmation data from the active matching engine to the passive matching engine upon receiving the modified order entry message comprising the status data;

receiving, by the passive matching engine, the confirmation data from the active matching engine; and

transmitting, by the passive matching engine, the broadcast data to the first group of computerized trading terminals when the received confirmation data comprises an acknowledgement of the status data.

2. The computerized method according to claim 1 , further comprising:

creating, by the active matching engine, a second broadcast data on receiving the modified data message by processing the received modified data message, and

transmitting, by the active matching engine, the second broadcast data to a second group of computerized trading terminals connected to the active matching engine.

3. The computerized method according to claim 1 , further comprising:

comparing, by the active matching engine, the status data in the modified order entry message with a current status data relating to the operating state of the active matching engine, and

creating, by the active matching engine, confirmation data.

4. The computerized method according to claim 3 , wherein the confirmation data includes an acknowledgment when the received status data equals the current status data.

5. The computerized method according to claim 3 , wherein the confirmation data includes the current status data when the received status data does not equal the current status data.

6. The computerized method according to claim 1 , further comprising:

modifying, when the received confirmation data comprises current status data, the operating state of the passive matching engine to an operating state indicated by the current status data,

creating, by the passive matching engine operating in the modified operating state, modified broadcast data by processing the received data message, and

transmitting, by the passive matching engine, the modified broadcast data to the first group of computerized trading terminals.

7. A computerized distributed trading system, comprising:

a first computerized exchange system having at least one processor and comprising a passive matching engine for receiving orders comprising a passive orderbook, the passive matching engine being connectable to a first group of computerized trading terminals for transmitting order entry messages to the passive matching engine;

a second computerized exchange system having at least one processor and comprising an active matching engine for matching orders comprising an active orderbook, the active matching engine being connectable to a second group of computerized trading terminals for transmitting order entry messages to the active matching engine;

wherein the passive matching engine is configured to:

receive an order entry message from a first trading terminal of the first group of computerized trading terminals;

create a modified order entry message by adding status data, including at least a sequence number related to an order, and relating to an operating state of the passive matching engine to the received order entry message;

forward the modified order entry message, including the sequence number, to the active matching engine for matching;

create broadcast data by processing the received order entry message;

receive confirmation data from the active matching engine;

transmit the broadcast data to the first group of computerized trading terminals when the received confirmation data comprises an acknowledgement of the status data; and

wherein the active matching engine is configured to:

generate confirmation data by comparing an operation state of the active matching engine to the operating state of the passive matching engine based on at least the sequence number included in the modified order entry message;

transmit the confirmation data message to the passive matching engine upon receiving the modified data message.

8. The computerized distributed trading system according to claim 7 , wherein the active matching engine is further configured to perform functionality comprising:

create a second broadcast data, upon receiving the modified data message from the passive matching engine, by processing the modified order entry message, and

transmit the second broadcast data to the second group of computerized trading terminals.

9. The computerized distributed trading system according to claim 7 , wherein the active matching engine is further configured to perform functionality comprising:

compare the status data in the received modified data message with current status data relating to the operating state of the active matching engine, and

transmit a confirmation data message to the passive matching engine on receiving the modified data message.

10. The computerized distributed trading system according to claim 9 , wherein the active matching engine is further configured to perform functionality comprising add an acknowledgment to the confirmation data message when the received status data equals the current status data.

11. The computerized distributed trading system according to claim 9 , wherein the active matching engine is further configured to perform functionality comprising add the current status data to the confirmation data message when the received status data does not equal the current status data.

12. The computerized distributed trading system according to claim 7 , wherein the passive matching engine is further configured to perform functionality comprising:

modify the operating state of the passive matching engine to an operating state related to current status data comprised in the received confirmation data,

create modified broadcast data by processing the received data message, and

transmit the broadcast data to the first group of computerized trading terminals when the received confirmation data message comprises current status data.

13. The computerized method according to claim 1 , further comprising:

processing order data before the confirmation data is received from the active matching engine of the second computerized exchange system; and

modifying the processed order data to correspond to changes necessitated as a result of the received confirmation data.

14. The computerized distributed trading system according to claim 7 , wherein:

the first computerized exchange system is configured to process order data before the confirmation data is received from the active matching engine of the second computerized exchange system, and

the first computerized exchange system is configured to modify the processed order data to correspond to changes necessitated as a result of the received confirmation data.

15. A computerized exchange system comprising at least one processor and a passive matching engine configured to receive orders in a passive orderbook, the passive matching engine configured to connect to a first group of computerized trading terminals for transmitting order entry messages to the passive matching engine, the passive matching engine configured to:

receive an order entry message from a first trading terminal of the first group of computerized trading terminals;

create a modified order entry message by adding status data, including at least a sequence number related to an order, and relating to an operating state of the passive matching engine to the received order entry message;

forward the modified order entry message, including the sequence number, to an active matching engine for matching;

create broadcast data by processing the received order entry message;

receive confirmation data from the active matching engine, the confirmation data being generated by comparing an operation state of the active matching engine to the operating state of the passive matching engine based on at least the sequence number included in the modified order entry message; and

transmit the broadcast data to the first group of computerized trading terminals when the received confirmation data comprises an acknowledgement of the status data.

16. The computerized method according to claim 1 , wherein generating the confirmation data includes generating an indication to the passive matching engine to roll back changes made by the passive matching engine when the sequence number included in the modified order entry message does not correspond to the state of the active matching engine.

17. The computerized method according to claim 1 , wherein the sequence number is an orderbook sequence number corresponding to the order.

18. The computerized method according to claim 1 , wherein the sequence number is an orderbook sequence number corresponding to a status of the order stored in an orderbook.

19. The computerized method according to claim 1 , wherein the status data relates to a status of an order book being accessed by the passive matching engine.

20. The computerized method according to claim 1 , wherein the status data is indicative of a state of an orderbook accessed by the passive matching engine, the status data being used to compare the state of the orderbook accessed by the passive matching engine with a state of an orderbook accessed by the active matching engine.

Assignments (2)
CHANGE OF NAME Recorded Jan 6, 2016
From: OMX TECHNOLOGY AB
To: NASDAQ TECHNOLOGY AB
Reel/Frame 037446/0160 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2010
From: JENSEN, DANIEL; ARVIDSSON, URBAN
To: OMX TECHNOLOGY AB
Reel/Frame 024592/0237 →