US 12,307,516 B1
Exchange order prioritization
William Ciabattoni, New York, NY (US); and Adam Inzirillo, Bay Shore, NY (US)
Assigned to Cboe Exchange, Inc., Chicago, IL (US)
Filed by Cboe Exchange, Inc., Chicago, IL (US)
Filed on Sep. 9, 2021, as Appl. No. 17/470,878.
Application 17/470,878 is a continuation of application No. 17/332,110, filed on May 27, 2021.
Claims priority of provisional application 63/030,462, filed on May 27, 2020.
This patent is subject to a terminal disclaimer.
Int. Cl. G06Q 40/00 (2023.01); G06Q 30/0234 (2023.01); G06Q 40/04 (2012.01)
CPC G06Q 40/04 (2013.01) [G06Q 30/0234 (2013.01)] 19 Claims
OG exemplary drawing
 
1. A method of prioritizing orders in an order queue in an exchange computer system comprising one or more processors configured to perform operations of an order routing system, an order matching system, and a prioritization engine, the method comprising:
receiving, by the exchange computer system, a stream of incoming data that encodes, using a communication protocol implemented over transmission control protocol/Internet Protocol (TCP/IP), transaction requests submitted from one or more remote computing devices, wherein the stream of incoming data is decoded using the communication protocol to provide a first transaction request for trading a financial instrument at or inside a National Best Bid Offer (NBBO) in the financial instrument, a second transaction request for trading the financial instrument outside the NBBO in the financial instrument, and a third transaction request for trading the financial instrument outside the NBBO in the financial instrument;
associating, by the exchange computer system using the one or more processors, the first transaction request, and second transaction request, and the third transaction request respectively with a first account, a second account, and a third account such that the second transaction request is queued in the order queue in the exchange computer system after the first transaction request by the order matching system, and the third transaction request is queued in the order queue after the second transaction request;
responsive to the order matching system identifying, using one or more of the one or more processors, a matching transaction request for the financial instrument, executing, the first transaction request at or inside the NBBO by the exchange computer system ahead of the second and the third transaction requests queued in the order queue;
determining, by the exchange computer system using the one or more processors, based on decoded information from the stream of incoming data and rules stored in a database on the exchange computer system, whether the second account or the third account is a priority account;
automatically posting, by the prioritization engine using one or more of the one or more processors, the third transaction request to a first position of the order queue, based on determining, by the exchange computer system, that (i) the third account is the priority account and the second account is not the priority account, and (ii) the third account has performed a volume of trades that is less than a threshold volume in a given time period, such that the third transaction request is posted at a front of the order queue;
identifying, by the order matching system using one or more of the one or more processors and based on the third transaction request, another matching transaction request for the financial instrument;
routing, to the order matching system and by the order routing system, the third transaction request using one or more of the one or more processors in response to the identifying of the matching transaction request and based on the order queue;
executing, by the exchange computer system using one or more of the one or more processors, the routed third transaction request ahead of the second transaction request; and
transmitting, by the exchange computer system using the one or more processors and to at least one of the one or more remote computing devices, fill information for the first and third transaction requests encoded using the communication protocol.