US 12,248,972 B2
Latency manager
Daniel Grover, New York, NY (US); and Virginia Guadagno, New York, NY (US)
Assigned to BGC PARTNERS, L.P., New York, NY (US)
Filed by BGC PARTNERS, L.P., New York, NY (US)
Filed on Apr. 27, 2023, as Appl. No. 18/140,005.
Application 18/140,005 is a continuation of application No. 17/018,417, filed on Sep. 11, 2020, granted, now 11,669,877.
Claims priority of provisional application 62/898,794, filed on Sep. 11, 2019.
Prior Publication US 2024/0054540 A1, Feb. 15, 2024
This patent is subject to a terminal disclaimer.
Int. Cl. G06Q 30/0601 (2023.01); G06F 12/0875 (2016.01); G06F 16/21 (2019.01); H04L 43/0852 (2022.01)
CPC G06Q 30/0611 (2013.01) [G06F 12/0875 (2013.01); G06F 16/219 (2019.01); H04L 43/0852 (2013.01); G06F 2212/1008 (2013.01)] 12 Claims
OG exemplary drawing
 
1. An apparatus comprising:
a memory comprising a quote cache, and a quote queue;
a network interface;
at least one processor configured to perform a latency management process to:
set a configurable timeout period based on a measured latency of a network;
in response to a request for a stream of quote data versions related to a financial instrument from a client computer, transmit, via the network interface to the network, to the client computer a message that includes a stream of quote data versions from the quote queue that are based on updates from quote data sources;
maintain the quote cache by selectively copying a latest quote version based on a most recently received quote data versions and removing quote data versions having a time age greater than the configurable timeout period;
receive, via the network interface to the network, from the client computer, a request to execute a requested quote data version selected from the stream of quote data versions; and
determine whether to execute a trade of the financial instrument at a price in the requested quote data version based on whether (a) the requested quote data version matches the latest quote version,
(b) the requested quote data version is present in the quote cache and (c) a time age of the requested quote data version is less than the configurable timeout period.