# US 10,504,181 B2 · Systems and methods for providing a customizable spreadsheet application interface for an electronic trading system

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

- Number: US 10,504,181 B2
- Document ID: US10504181B2
- Status: Granted
- Kind: B2
- Application number: 16/029,231
- Filed: 2018-07-06
- Published: 2018-11-01
- Granted: 2019-12-10
- Earliest claimed: 2002-06-13
- Assignees: Cfph, LLC
- Applicants: Cfph, L.L.C.
- Inventors: John P. Bartolucci
- Web page: https://patentgrep.com/patent/US10504181B2

## CPC

- G06Q 40/04: Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
- G06F 40/18: of spreadsheets (form-filling G06F40/174)
- 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
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Systems and methods for providing a customizable spreadsheet application interface for an electronic trading system or market data source. A customizable spreadsheet application using the application interface according to the invention may be executed or stored either at the client or at a server. In either case, a user is preferably provided with an spreadsheet interface that allows the user to implement a real time electronic trading model. The trading model may preferably be used to trade in the electronic trading system without additional user intervention.

## Claims

### Claim 1

A method comprising:
receiving, via a processor at an interface of an electronic spreadsheet application, market data in real-time from at least one market data source, in which the market data pertains to multiple types of instruments in multiple markets;
dynamically and simultaneously adjusting, via multiple processors, a plurality of trading models in accordance to the received market data,
in which each trading model corresponds to a different type of instrument;
in which each trading model comprises at least one triggering event that is determined in advance of receiving any market data;
transmitting, via the multiple processors, the plurality of trading models to be displayed through a first interface of the electronic spreadsheet application on a plurality of remote devices, in which each trading model is displayed on a corresponding remote device, in which each processor is in electronic communication with a corresponding remote device over a network;
computing, via the multiple processors, a result for each trading model that is based on the received market data;
in response to receiving an indication that at least one triggering event has occurred, generating, via the multiple processors, a plurality of trading commands and queuing the plurality of trading commands in accordance to a prioritization process to prevent network overload; and
transmitting, via the multiple processors, each trading command in accordance to the prioritization process.

### Claim 2 (depends on 1)

The method of claim 1, in which the trading model is defined by at least one of a formula and a function.

### Claim 3 (depends on 1)

The method of claim 1 further comprising
generating a plurality of trading commands, in which the plurality of trading commands comprises the first trading command, and
queuing at least a portion of the plurality of trading commands for transmission of at least ones of the plurality of trading commands to an electronic trading system at predetermined time intervals.

### Claim 4 (depends on 3)

The method of claim 3, in which the at least one of the plurality of trading commands comprises the second trading command and the at least one of the plurality of trading commands does not comprise the first trading command, and
in which the method further comprises:
replacing the first trading command with a second trading command received prior to an occurrence of the predetermined time.

### Claim 5 (depends on 3)

The method of claim 3, in which the at least one of the plurality of trading commands comprises the second trading command and the at least one of the plurality of trading commands does not comprise the first trading command, and
in which the method further comprises:
receiving updated market data,
computing an updated result based on the updated market data,
generating a second trading command from the updated result, and
replacing the first trading command with the second trading command in the queue of trading commands.

### Claim 6 (depends on 1)

The method of claim 1 further comprising:
generating a plurality of trading commands, in which the plurality of trading commands comprises the first trading command, and
maintaining the queue of trading commands for transmission to an electronic trading system in a prioritized order.

### Claim 7 (depends on 6)

The method of claim 6 further comprising:
transmitting a first portion of the plurality of trading commands from the queue to the electronic trading system at a first time and a second portion of the plurality of trading commands from the queue to the electronic trading system at a second time following the first time.

### Claim 8 (depends on 7)

The method of claim 7, in which the plurality of trading commands are received in the queue prior to the first time, and
in which one or more trading commands of the first portion of the plurality of trading commands is received in the queue prior to one or more trading commands of the second portion of the plurality of trading commands.

### Claim 9 (depends on 1)

The method of claim 1, in which the market data comprises a price for an item and a price for a derivative instrument on the item, and
in which the method further comprises:
determining an occurrence of a divergence between the price for the item and the price for the derivative instrument on the item, and
in which the first trading command comprises at least one of:
an order to buy the item,
an order to sell the item,
an order to buy the derivative instrument on the item, and
an order to sell the derivative instrument on the item.

### Claim 10

An apparatus comprising:
a processor; and
a memory, in which the memory stores instructions which, when executed by the processor, direct the processor to:
receive, at an interface of an electronic spreadsheet application, market data in real-time from a market data source;
generate a trading model that adjusts dynamically to the received market data, in which the trading model comprises at least one triggering event that is determined in advance of receiving any market data;
transmit the trading model is be displayed on a display through a first interface of the electronic spreadsheet application, in which the trading model that is displayed changes dynamically in real-time;
compute a result based on the market data and the trading model;
in response to receiving an indication that at least one triggering event has occurred, generate a first trading command, in which the first trading command comprises the result that was computed based on the market data and the trading model;
queue the first trading command in a queue of trading commands for transmission to an electronic trading system at a predetermined time; and
transmit at least one trading command from the queue, in which the at least one trading command comprises at least one of the first trading command and a second trading command.

### Claim 11 (depends on 10)

The apparatus of claim 10, in which the trading model is defined by at least one of a formula and a function.

### Claim 12 (depends on 10)

The apparatus of claim 10, in which the memory stores instructions which, when executed by the processor, direct the processor to:
generate a plurality of trading commands, in which the plurality of trading commands comprises the first trading command, and
queue at least a portion of the plurality of trading commands for transmission of at least ones of the plurality of trading commands to an electronic trading system at predetermined time intervals.

### Claim 13 (depends on 12)

The apparatus of claim 12, in which the at least one of the plurality of trading commands comprises the second trading command and the at least one of the plurality of trading commands does not comprise the first trading command, and
in which the memory further comprises instructions which, when executed by the processor, direct the processor to:
replace the first trading command with a second trading command received prior to an occurrence of the predetermined time.

### Claim 14 (depends on 12)

The apparatus of claim 12, in which the at least one of the plurality of trading commands comprises the second trading command and the at least one of the plurality of trading commands does not comprise the first trading command, and
in which the memory further comprises instructions which, when executed by the processor, direct the processor to:
receive updated market data,
compute an updated result based on the updated market data,
generate a second trading command from the updated result, and
replace the first trading command with the second trading command in the queue of trading commands.

### Claim 15 (depends on 10)

The apparatus of claim 10, in which the memory further store instructions which, when executed by the processor, direct the processor to:
generate a plurality of trading commands, in which the plurality of trading commands comprises the first trading command, and
maintain the queue of trading commands for transmission to an electronic trading system in a prioritized order.

### Claim 16 (depends on 15)

The apparatus of claim 15, in which the memory store comprises instructions which, when executed by the processor, direct the processor to:
transmit a first portion of the plurality of trading commands from the queue to the electronic trading system at a first time and a second portion of the plurality of trading commands from the queue to the electronic trading system at a second time following the first time.

### Claim 17 (depends on 16)

The apparatus of claim 16, in which the plurality of trading commands are received in the queue prior to the first time, and
in which one or more trading commands of the first portion of the plurality of trading commands is received in the queue prior to one or more trading commands of the second portion of the plurality of trading commands.

### Claim 18 (depends on 10)

The apparatus of claim 10, in which the market data comprises a price for an item and a price for a derivative instrument on the item, and
in which the memory further store instructions which, when executed by the processor, direct the processor to:
determine an occurrence of a divergence between the price for the item and the price for the derivative instrument on the item, and
in which the first trading command comprises at least one of:
an order to buy the item,
an order to sell the item,
an order to buy the derivative instrument on the item, and
an order to sell the derivative instrument on the item.
