# US 11,908,013 B2 · Methods, apparatus, and systems for processing data transactions

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

- Number: US 11,908,013 B2
- Document ID: US11908013B2
- Status: Granted
- Kind: B2
- Application number: 17/683,463
- Filed: 2022-03-01
- Published: 2022-06-16
- Granted: 2024-02-20
- Earliest claimed: 2012-04-16
- Assignees: Nasdaq Technology AB
- Applicants: Nasdaq Technology AB
- Inventors: Kandan Venkataraman
- Web page: https://patentgrep.com/patent/US11908013B2

## CPC

- G06Q 40/04: Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
- G06Q 40/06: Asset management; Financial planning or analysis
- 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

Methods, apparatus, and systems for processing data transactions use a sequencer communicating with a plurality of data processors and provide improved performance and lower latency.

## Claims

### Claim 1

A method for processing electronic order entry messages, the method being performed on a computerized exchange including a gateway and comprising:
receiving, by a plurality of order book engines via the gateway, a plurality of electronic order entry messages;
sending, by the plurality of order book engines, the plurality of electronic order entry messages to a central sequencer that is coupled to the plurality of order book engines;
receiving, by the central sequencer, the plurality of electronic order entry messages from the plurality of order book engines and assigning, by the central sequencer, a time stamp to each of the plurality of electronic order entry messages;
placing, by the central sequencer, the plurality of electronic order entry messages in a sequence according to the assigned time stamps;
sending, by the central sequencer, the plurality of electronic order entry messages to the plurality of order book engines;
receiving, by a first order book engine of the plurality of order book engines and a second order book engine of the plurality of order book engines, the plurality of electronic order entry messages;
processing, by the first order book engine, the plurality of electronic order entry messages in the sequence, wherein the processing by the first order book engine includes creating order management data that comprises order acceptance, rejection, execution, or cancellation information;
outputting, by the first order book engine, the order management data;
processing, by the second order book engine, substantially in parallel to the processing by the first order book engine, the plurality of electronic order entry messages in the sequence, wherein the processing by the second order book engine includes creating market data, wherein the market data comprises order addition or modification information; and
outputting, by the second order book engine, the market data.

### Claim 2 (depends on 1)

The method according to claim 1, wherein the plurality of order book engines and the central sequencer each comprise one or more hardware processors, one or more hardware communication interfaces, and one or more memories.

### Claim 3 (depends on 1)

The method according to claim 1, wherein the processing the plurality of electronic order entry messages in the sequence by the first order book engine and the second order book engine comprises processing essentially the same electronic order entry messages of the plurality of electronic order entry messages in the sequence at the same time.

### Claim 4 (depends on 1)

The method according to claim 1, further comprising:
performing one or more tasks, by each of the plurality of order book engines, specific to the respective order book engine.

### Claim 5 (depends on 1)

The method according to claim 1, wherein receiving the plurality of electronic order entry messages comprises recording, in non-volatile memory, the electronic order entry messages.

### Claim 6 (depends on 1)

The method according to claim 1, further comprising:
the first order book engine formatting the order management data according to the OUCH protocol, and
the second order book engine formatting the order management data according to the ITCH protocol.

### Claim 7 (depends on 1)

The method according to claim 1, wherein at least one of the plurality of electronic order entry messages relates to an order having a hidden order volume.

### Claim 8 (depends on 1)

The method according to claim 1, further comprising:
receiving, by a third order book engine of the plurality of order book engines, the plurality of electronic order entry messages;
processing, by a third order book engine, substantially in parallel to the processing by the first order book engine, the plurality of electronic order entry messages in the sequence, wherein the processing includes creating market data, wherein the market data comprises order addition or modification information; and
outputting the market data.

### Claim 9

A computerized exchange system, comprising:
a gateway;
a plurality of order book engines configured to:
receive via the gateway a plurality of electronic order entry messages, and
send the plurality of electronic order entry messages to a central sequencer that is coupled to the plurality of order book engines;
a central sequencer configured to:
receive the plurality of electronic order entry messages from the plurality of order book engines and assigning a time stamp to each of the plurality of electronic order entry messages;
place the received plurality of electronic order entry messages in a sequence according to the assigned time stamps;
send the plurality of electronic order entry messages to the plurality of order book engines;
a first order book engine of the plurality of order book engines, the first order book engine configured to:
receive the plurality of electronic order entry messages;
process the plurality of electronic order entry messages in the sequence, wherein the processing by the first order book engine includes creating order management data that comprises order acceptance, rejection, execution, or cancellation information; and
output the order management data;
a second order book engine of the plurality of order book engines, the second order book engine configured to:
receive the plurality of electronic order entry messages;
process, substantially in parallel to the processing by the first order book engine, the plurality of electronic order entry messages in the sequence, wherein the processing by the second order book engine includes creating market data, wherein the market data comprises order addition or modification information; and
output the market data.

### Claim 10 (depends on 9)

The computerized exchange system according to claim 9, wherein the central sequencer comprises:
a central sequencer hardware communication interface;
a central sequencer processor; and
a central sequencer memory storing a sequencer computer program comprising sequencer computer program code,
wherein the first order book engine comprises:
a first hardware communication interface;
a first data processor; and
a first memory storing a first computer program comprising first computer program code,
wherein the second order book engine comprises:
a second hardware communication interface;
a second data processor; and
a second memory storing a second computer program comprising second computer program code.

### Claim 11 (depends on 9)

The computerized exchange system according to claim 9, wherein each of the plurality of order book engines is for performing a task specific to a respective order book.

### Claim 12

A computer system, comprising:
a gateway;
a plurality of order book engines, where each of the plurality of order book engines comprises a data processor and memory storing executable instructions that when executed by the data processor causes the data processor to perform the steps of:
receiving, via the gateway, a plurality of electronic order entry messages, and
sending the plurality of electronic order entry messages to a central sequencer that is coupled to the plurality of order book engines;
a central sequencer comprising a central sequencer a central sequencer processor, and a central sequencer memory storing executable instructions that when executed by the central sequencer processor causes the central sequencer processor to perform the steps of:
receiving the plurality of electronic order entry messages from the plurality of order book engines and assigning a sequence number to each of the plurality of electronic order entry messages;
placing the received plurality of electronic order entry messages in a sequence according to the assigned sequence number;
sending the plurality of electronic order entry messages to the plurality of order book engines;
wherein the memory of a first order book engine of the plurality of order book engines stores executable instructions, that when executed by the data processor of the first order book engine, causes the data processor of the first order book engine to perform the steps of:
receiving the plurality of electronic order entry messages;
processing the plurality of electronic order entry messages in the sequence, wherein the processing includes creating order management data that comprises order acceptance, rejection, execution, or cancellation information; and
outputting the order management data;
wherein the memory of a second order book engine of the plurality of order book engines stores executable instructions, that when executed by the data processor of the second order book engine, causes the data processor of the second order book engine to perform the steps of:
receiving the plurality of electronic order entry messages;
processing, substantially in parallel to the processing by the first order book engine, the plurality of electronic order entry messages in the sequence, wherein the processing includes creating market data, wherein the market data comprises order addition or modification information; and
outputting the market data.

### Claim 13 (depends on 12)

The computer system according to claim 12, wherein the processing the plurality of electronic order entry messages in the sequence by the first order book engine and the second order book engine comprises processing essentially the same electronic order entry messages of the plurality of electronic order entry messages in the sequence at the same time.

### Claim 14 (depends on 12)

The computer system according to claim 12, wherein the memory of the first order book engine comprises executable instructions that when executed by the data processor of the first order book engine causes the data processor of the first order book engine to perform a step of formatting the order management data according to the OUCH protocol.

### Claim 15 (depends on 12)

The computer system according to claim 12, wherein the memory of the second order book engine comprises executable instructions that when executed by the data processor of the second order book engine causes the data processor of the second order book engine to perform a step of formatting the order management data according to the ITCH protocol.

### Claim 16 (depends on 12)

The computer system according to claim 12, wherein at least one of the plurality of electronic order entry messages relates to an order having a hidden order volume.

### Claim 17 (depends on 12)

The computer system according to claim 12, wherein the sending, by the central sequencer, the plurality of electronic order entry messages to the plurality of order book engines comprises sending the plurality of electronic order entry messages using the User Datagram Protocol (UDP).

### Claim 18 (depends on 12)

The computer system according to claim 12, wherein the sending, by the central sequencer, the plurality of electronic order entry messages, to the plurality of order book engines comprises sending the plurality of electronic order entry messages using the Internet Protocol (IP).

### Claim 19 (depends on 12)

The computer system according to claim 12, further comprising:
a third order book engine of the plurality of order book engines, wherein the memory of the third order book engine stores for executable instructions, that when executed by the data processor of the third order book engine, causes the data processor of the third order book engine to perform the steps of:
receiving the plurality of electronic order entry messages;
processing, substantially in parallel to the processing by the first order book engine, the plurality of electronic order entry messages in the sequence, wherein the processing includes creating market data, wherein the market data comprises order addition or modification information; and
outputting the market data.
