# US 12,113,762 B2 · Systems and methods for consolidating multiple feed data

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,113,762 B2
- Document ID: US12113762B2
- Status: Granted
- Kind: B2
- Application number: 17/841,104
- Filed: 2022-06-15
- Published: 2022-10-06
- Granted: 2024-10-08
- Earliest claimed: 2016-05-16
- Assignees: Chicago Mercantile Exchange Inc.
- Applicants: Chicago Mercantile Exchange Inc.
- Inventors: Pearce Peck-Walden; Rosa Frenkel; Arkadiusz Koziol; José Antonio Acuña-Rohter; Fred Malabre; Melissa Jenner; Priteshkumar Soni
- Web page: https://patentgrep.com/patent/US12113762B2

## CPC

- H04L 51/18: Commands or executable codes
- G06F 16/00: Information retrieval; Database structures therefor; File system structures therefor
- G06Q 40/04: Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
- G06Q 40/06: Asset management; Financial planning or analysis
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR

## Abstract

The disclosed embodiments relate generally to efficient data transmission and receipt. Specifically, the disclosed embodiments provide systems and methods for selectively combining multiple, disparate message types and transmitting same via one data feed. A consolidation system determines whether data resulting from an event can be combined or merged based on pre-determined message characteristics and state or environment information or should be sent via two separate feeds. The merged message may be backwards-compatible so that data recipient computing systems can easily and selectively decide which portion of the merged data is relevant to the data recipient computing system, only read the relevant portions. Thus, multiple data receivers, which typically consume different message types, can receive and consume the same merged or consolidated message.

## Claims

### Claim 1

A computer implemented method comprising:
receiving, by a processor, an electronic data transaction request message for processing in a data transaction processing system;
modifying, by the processor, based on the electronic data transaction request message, a first data object including data of a first type and a second data object including data of a second type, wherein the first data object and the second data object are stored in a memory based on the electronic data transaction request message, wherein the first data object includes data about a plurality of unique orders; and
upon determining, by the processor, that a unique order of the first data object and the second data object have been modified, generating data indicating the modification to the unique order of the first data object, generating data indicating the modification to the second data object, and generating a consolidated message including the data indicating the modifications to the unique order of the first data object and the second data object.

### Claim 2 (depends on 1)

The computer implemented method of claim 1, wherein the first data object is a per order (“PO”) data object and the second data object is an aggregated by value (“ABV”) data object.

### Claim 3 (depends on 1)

The computer implemented method of claim 1, wherein the electronic data transaction request message includes a request to perform a transaction related to a product represented by one of the data objects.

### Claim 4 (depends on 1)

The computer implemented method of claim 1, further comprising:
upon determining, by the processor, that the first data object has been modified, generating data indicating the modification to the first data object and generating a first message including the data indicating the modification to the first data object.

### Claim 5 (depends on 4)

The computer implemented method of claim 4, wherein the first message and the consolidated message are published to a data recipient computing system via different data feeds.

### Claim 6 (depends on 1)

The computer implemented method of claim 1, wherein the first and second data objects comprise queues, and wherein the method includes, for each data object, storing data related to transactions of the first type in a first queue, and storing data related to transactions of the second type in a second queue.

### Claim 7 (depends on 6)

The computer implemented method of claim 6, wherein transactions of the first type are one of purchasing or relinquishing a financial instrument, and transactions of the second type are the other of purchasing or relinquishing the financial instrument.

### Claim 8 (depends on 1)

The computer implemented method of claim 1,
wherein each unique order is associated with a value and an order quantity.

### Claim 9 (depends on 8)

The computer implemented method of claim 8, wherein the second data object includes data about a plurality of unique values, each unique value associated with an aggregate quantity and a number of orders aggregated.

### Claim 10 (depends on 9)

The computer implemented method of claim 9, wherein each of the unique values of the second data object values corresponds to at least one of the unique orders of the first data object.

### Claim 11 (depends on 9)

The computer implemented method of claim 9, wherein values associated with at least two of the unique orders of the first data object correspond to one of the unique values of the second data object.

### Claim 12 (depends on 9)

The computer implemented method of claim 9, further comprising:
upon determining, by the processor, that multiple unique orders of the first data object corresponding to the same unique value of the second data object have been modified and the second data object has been modified, generating data indicating the modifications to the multiple unique orders of the first data object, generating a first message including the data indicating the modifications to the multiple unique orders of the first data object, generating data indicating the modification to the second data object, and generating a second message including the data indicating the modification to the second data object.

### Claim 13 (depends on 9)

The computer implemented method of claim 9, further comprising:
determining that one unique order of the first data object has been modified by determining that one of: (i) a unique order has been added to the first data object, (ii) a unique order has been removed from the first data object or (iii) a quantity, a priority, or a value associated with the unique order has been modified.

### Claim 14 (depends on 9)

The computer implemented method of claim 9, further comprising:
determining that the second data object has been modified by determining that one of: (i) a unique value has been added to the second data object, (ii) a unique value has been removed from the second data object, or (iii) an aggregate quantity or a number of orders associated with a unique value of the second data object has been modified.

### Claim 15 (depends on 9)

The computer implemented method of claim 9, wherein the data transaction processing system is an exchange computing system, and wherein the data objects represent order books for a financial instrument traded in the exchange computing system.

### Claim 16 (depends on 15)

The computer implemented method of claim 15, wherein the first data object includes data about all unique orders pending and related to the financial instrument.

### Claim 17 (depends on 16)

The computer implemented method of claim 16, wherein the second data object includes data about a predetermined number of unique values corresponding to the orders.

### Claim 18 (depends on 16)

The computer implemented method of claim 16, wherein at least one unique value corresponding to an order in the first data object is not included in the second data object.

### Claim 19

A computer system comprising:
a processor coupled with a memory, the processor specifically configured to:
receive an electronic data transaction request message for processing in a data transaction processing system;
modify a first data object including data of a first type and a second data object including data of a second type, wherein the first data object and the second data object are stored in the memory, wherein the first data object includes data about a plurality of unique orders; and
upon determining that a unique order of the first data object and the second data object have been modified, generate data indicating the modification to the unique order of the first data object, generate data indicating the modification to the second data object, and generate a consolidated message including the data indicating the modifications to the unique order of the first data object and the second data object.

### Claim 20 (depends on 19)

The computer system of claim 19, wherein the processor is further specifically configured to:
upon determining that the first data object has been modified, generate data indicating the modification to the first data object and generate a first message including the data indicating the modification to the first data object.

### Claim 21 (depends on 19)

The computer system of claim 19,
wherein each unique order is associated with a value and an order quantity.

### Claim 22 (depends on 21)

The computer system of claim 21, wherein the second data object includes data about a plurality of unique values, each unique value associated with an aggregate quantity and a number of orders aggregated.

### Claim 23 (depends on 22)

The computer system of claim 22, wherein the processor is further specifically configured to, upon determining that multiple unique orders of the first data object corresponding to the same unique value of the second data object have been modified and the second data object has been modified, generate data indicating the modifications to the multiple unique orders of the first data object, generate a first message including the data indicating the modifications to the multiple unique orders of the first data object, generate data indicating the modification to the second data object, and generate a second message including the data indicating the modification to the second data object.

### Claim 24

A computer system comprising:
an electronic data transaction request message receiver that receives an electronic data transaction request message to perform a transaction on a data object in a data transaction processing system;
a data object processor coupled with the electronic data transaction request message receiver for modifying, based on the electronic data transaction request message, a first data object including data of a first type and a second data object including data of a second type, wherein the first data object and the second data object are stored in a memory, wherein the first data object includes data about a plurality of unique orders; and
a message generator processor coupled with the data object processor and configured to,
upon determining, by the data object processor, that a unique order of the first data object and the second data object have been modified, generating data indicating the modification to the unique order of the first data object, generate data indicating the modification to the second data object, and generate a consolidated message including the data indicating the modifications to the unique order of the first data object and the second data object.

### Claim 25 (depends on 24)

The computer system of claim 24, wherein the message generator processor is further specifically configured to:
upon determining that the first data object has been modified, generate data indicating the modification to the first data object and generate a first message including the data indicating the modification to the first data object.

### Claim 26 (depends on 24)

The computer system of claim 24,
wherein each unique order associated with a value and an order quantity,
and
wherein the second data object includes data about a plurality of unique values, each unique value associated with an aggregate quantity and a number of orders aggregated.

### Claim 27 (depends on 26)

The computer system of claim 26,
wherein upon determining, by the data object processor, that multiple unique orders of the first data object corresponding to the same unique value of the second data object have been modified and the second data object has been modified, the message generator generates a first message including the data indicating the modifications to the multiple unique orders of the first data object and a second message including the data indicating the modification to the second data object.
