# US 11,907,189 B2 · Event-driven computer modeling system for time series data

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

- Number: US 11,907,189 B2
- Document ID: US11907189B2
- Status: Granted
- Kind: B2
- Application number: 16/987,356
- Filed: 2020-08-06
- Published: 2022-02-10
- Granted: 2024-02-20
- Earliest claimed: 2020-08-06
- Assignees: Charles Schwab & Co., Inc.
- Applicants: TD Ameritrade IP Company, Inc.
- Inventors: John Scott Kula
- Web page: https://patentgrep.com/patent/US11907189B2

## CPC

- G06F 16/219: {Managing data history or versioning (querying versioned data G06F16/2474; querying temporal data G06F16/2477)}
- G06Q 40/02: Banking, e.g. interest calculation or account maintenance (credit or loans G06Q40/03)
- G06F 16/2322: {using timestamps}
- G06F 16/2358: {Change logging, detection, and notification (replication G06F16/27)}
- G06Q 40/06: Asset management; Financial planning or analysis
- 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

A system stores instructions including, in response to receiving user input, identifying a first event type and a first security identifier and obtaining a first set of event dates from the event database and, for each event date of the first set of event dates, obtaining a corresponding event value on the corresponding event date of the first security identifier. The instructions include, for a first day related to each event date of the first set of event dates: obtaining a corresponding value on the first day of the first security identifier, determining a corresponding difference value between the corresponding event value and the corresponding value, and storing the corresponding difference value in a set of difference values. The instructions include calculating an average difference on the first day using the set of difference values and displaying the average difference and an event indicator corresponding to the first event type.

## Claims

### Claim 1

A system comprising:
at least one processor and
a memory coupled to the at least one processor,
wherein the memory stores,
a historical performance database including values associated with dates and corresponding to security identifiers;
an event database including a set of event types and, for each event type of the set of event types, a set of event dates, wherein the event types include market events; and
instructions that when executed by the at least one processor, in response to receiving user input, cause the system to perform
identifying, from the user input, a first event type and a first security identifier;
obtaining, based on the first event type, a first set of event dates from the event database;
for each event date of the first set of event dates,
obtaining, from the historical performance database, an event value on the event date of the first security identifier;
obtaining a related date to the event date, the related date being within a date range of the event date;
obtaining, from the historical performance database, a value on the related date of the first security identifier;
determining a difference value, the difference value being a difference between the event value on the event date of the first security identifier and the value on the related date of the first security identifier; and
storing the difference value in a set of difference values;
calculating an average difference of the set of difference values; and
displaying, on a user device, the average difference and an event indicator corresponding to the first event type.

### Claim 2 (depends on 1)

The system of claim 1 wherein the instructions that when executed by the at least one processor cause the system to perform:
obtaining, from the historical performance database, a beginning value of the first security identifier and an end value of the first security identifier;
calculating a normal difference as the end value less the beginning value;
determining an additional return value as the normal difference less the average difference; and
in response to the additional return value being nonzero, displaying, on the user device, the additional return value.

### Claim 3 (depends on 2)

The system of claim 2 wherein the instructions that when executed by the at least one processor cause the system to perform:
in response to the additional return value being zero, displaying an indication on the user device that the additional return value is equal to the normal difference.

### Claim 4 (depends on 2)

The system of claim 2 wherein the instructions that when executed by the at least one processor cause the system to perform:
determining a corresponding average difference for each day of the date range related to each event date of the first set of event dates;
storing the corresponding average difference for each day of the date range in a set of average differences;
identifying a value indicating a largest change from the set of average differences;
determining the additional return value as the normal difference less the value; and
in response to the additional return value being nonzero, displaying, on the user device, the additional return value.

### Claim 5 (depends on 4)

The system of claim 4 wherein the date range corresponds to the first event type.

### Claim 6 (depends on 4)

The system of claim 4 wherein the date range includes a pre-event date range and a post-event date range.

### Claim 7 (depends on 1)

The system of claim 1 wherein the first security identifier includes: (i) a stock; (ii) an option; or (iii) an exchanged-traded fund.

### Claim 8 (depends on 1)

The system of claim 1 wherein:
the memory stores a user parameter database including a set of security identifiers corresponding to a user of the user device, and
the first security identifier includes each security identifier of the set of security identifiers.

### Claim 9 (depends on 1)

The system of claim 1 wherein the event type includes: (i) a change in commodity value; (ii) a change in interest rate value; or (iii) an occurrence of a natural disaster.

### Claim 10 (depends on 1)

The system of claim 1 wherein receiving the user input includes:
receiving an indication of a user logging in to an account;
identifying the first security identifier as a security included in a corresponding user portfolio; and
identifying the first event type as a preset event type.

### Claim 11

A method comprising:
in response to receiving user input, identifying, from the user input, a first event type and a first security identifier;
obtaining, based on the first event type, a first set of event dates from an event database, wherein the event database includes a set of event types and, for each event type of the set of event types, a set of event dates, wherein the event types include market events;
for each event date of the first set of event dates,
obtaining a related date to the event date, the related date being within a date range of the event date;
obtaining, from a historical performance database, an event value on the event date of the first security identifier, wherein the historical performance database includes values associated with dates and corresponding to security identifiers;
obtaining, from the historical performance database, a value on the related date of the first security identifier;
determining a difference value, the difference value being a difference between the event value on the event date of the first security identifier and the value on the related date of the first security identifier; and
storing the difference value in a set of difference values;
calculating an average difference of the set of difference values; and
displaying, on a user device, the average difference and an event indicator corresponding to the first event type.

### Claim 12 (depends on 11)

The method of claim 11 further comprising:
obtaining, from the historical performance database, a beginning value of the first security identifier and an end value of the first security identifier;
calculating a normal difference as the end value less the beginning value;
determining an additional return value as the normal difference less the average difference; and
in response to the additional return value being nonzero, displaying, on the user device, the additional return value.

### Claim 13 (depends on 12)

The method of claim 12 further comprising:
in response to the additional return value being zero, displaying an indication on the user device that the additional return value is equal to the normal difference.

### Claim 14 (depends on 12)

The method of claim 12 further comprising:
determining a corresponding average difference for each day of the date range related to each event date of the first set of event dates;
storing the corresponding average difference for each day of the date range in a set of average differences;
identifying a value indicating a largest change from the set of average differences;
determining the additional return value as the normal difference less the value; and
in response to the additional return value being nonzero, displaying, on the user device, the additional return value.

### Claim 15 (depends on 14)

The method of claim 14 wherein the date range corresponds to the first event type.

### Claim 16 (depends on 14)

The method of claim 14 wherein the date range includes a pre-event date range and a post-event date range.

### Claim 17 (depends on 11)

The method of claim 11 wherein the first security identifier includes: (i) a stock; (ii) an option; or (iii) an exchanged-traded fund.

### Claim 18 (depends on 11)

The method of claim 11 further comprising:
storing a set of security identifiers corresponding to a user of the user device in a user parameter database, wherein the first security identifier includes each security identifier of the set of security identifiers.

### Claim 19 (depends on 11)

The method of claim 11 wherein the event type includes: (i) a change in commodity value; (ii) a change in interest rate value; or (iii) an occurrence of a natural disaster.

### Claim 20 (depends on 11)

The method of claim 11 wherein receiving the user input includes:
receiving an indication of a user logging in to an account;
identifying the first security identifier as a security included in a corresponding user portfolio; and
identifying the first event type as a preset event type.
