IP Library Patent Application 14618213
Patent Application
App. No. 14/618,213

OBJECT MODELING FOR EXPLORING LARGE DATA SETS

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
14/618,213
Abstract

An object model is used to facilitate performing financial analysis and that includes certain zero-order objects or building blocks that lend themselves particularly well to doing financial analysis. The object model comprises a universe of data items, relationships between the data items, higher-order objects generated based on one or more data items in the universe, higher-order objects generated based on other objects, and auxiliary entities related to the universe of data items.

Claims (63)

1 . A computer-implemented method, comprising:

creating and storing in computer memory a programmatic object model that facilitates performing financial analysis and comprising a plurality of zero-order objects each of which is not decomposable into other objects;

wherein the object model in the computer memory comprises a universe of data items and relationships between the data items, and a plurality of higher-order objects the computer generates based on the zero-order objects;

wherein each zero-order object consists of one of a plurality of time series objects, a plurality of metric objects, and a plurality of financial instrument objects;

using the computer, generating one or more higher-order objects in the plurality of higher-order objects using one or more metric objects in the plurality of metric objects;

wherein the method is performed by one or more computing devices.

2 . The method of claim 1 , wherein the higher-order objects can be decomposed into other building blocks, and wherein the higher-order objects comprise date set objects, index objects, portfolio objects, strategy objects, instrument group objects, and regression objects.

3 . The method of claim 2 , wherein instrument group objects comprise one or more instruments selected from a universe of instruments using a filter chain;

wherein index objects indicate a collective value of one or more instruments; wherein regression objects transform one or more first time series into a predicted time series and compare the predicted time series with a second time series;

wherein portfolio objects comprise: zero or more time series each of which represents a particular financial instrument; a particular date set; and one or more trades that refer to times represented in the particular date set;

wherein strategy objects comprise a date set that represents a time period and a statement block that can be executed to determine one or more trades of the instrument; and

wherein date set objects comprise time values that satisfy one or more selection criteria.

4 . The method of claim 2 , wherein each of the index objects comprises an instrument group object, a metric object, and a date set object.

5 . The method of claim 2 ,

wherein each of the instrument group objects comprises a plurality of filter objects, and

wherein each of the filter objects comprises a set of instrument objects and a metric object.

6 . The method of claim 2 , wherein each of the regression objects comprises a set of time series and a date set object.

7 . The method of claim 2 , wherein each of the date set objects is associated with a metric that is configured to receive a time series as a first input and one or more selection criteria as a second input and to generate one or more dates in the time series that are within the specified range.

8 . The method of claim 1 , further comprising:

receiving, at runtime, user input specifying a name of a custom metric object and identifying an ordered or concatenated plurality of function tokens for association with the name of the custom metric object;

creating and storing, in the object model, a custom metric object based on the name and the tokens.

9 . A non-transitory machine-readable storage medium comprising one or more program instructions recorded thereon, which instructions, when executed by one or more processors, cause the one or more processors to perform the steps of:

creating and storing in computer memory a programmatic object model that facilitates performing financial analysis and comprising a plurality of zero-order objects each of which is not decomposable into other objects;

wherein the object model in the computer memory comprises a universe of data items and relationships between the data items, and a plurality of higher-order objects the one or more processors generate based on the zero-order objects;

wherein each zero-order object consists of one of a plurality of time series objects, a plurality of metric objects, and a plurality of financial instrument objects; and

using the one or more processors, generating one or more higher-order objects in the plurality of higher-order objects using one or more metric objects in the plurality of metric objects.

10 . The medium of claim 9 , wherein the higher-order objects can be decomposed into other building blocks, and wherein the complex objects comprise date set, index, portfolio, strategy, instrument group, and regression objects.

11 . The medium of claim 10 , wherein instrument group objects comprise one or more instruments selected from a universe of instruments using a filter chain;

wherein index objects indicate a collective value of one or more instruments;

wherein regression objects transform one or more first time series into a predicted time series and compare the predicted time series with a second time series;

wherein portfolio objects comprise: zero or more time series each of which represents an instrument; a particular date set; and one or more trades that refer to times represented in the particular date set;

wherein strategy objects comprise a date set that represents a time period and a statement block that can be executed to determine one or more trades of the instrument;

wherein date set objects comprise time values that satisfy one or more selection criteria.

12 . The medium of claim 10 , wherein each of the index objects comprises an instrument group object, a metric object, and a date set object.

13 . The medium of claim 10 ,

wherein each of the instrument group objects comprises a plurality of filter objects, and

wherein each of the filter objects comprises a set of instrument objects and a metric object.

14 . The medium of claim 9 , wherein the one or more program instructions further comprise instructions which, when executed by one or more processors, cause the one or more processors to perform:

receiving, at runtime, user input specifying a name of a custom metric object and identifying an ordered or concatenated plurality of function tokens for association with the name of the custom metric object;

creating and storing, in the object model, a custom metric object based on the name and the tokens.

15 . An application server comprising:

a network interface that is coupled to a data network for receiving one or more packet flows therefrom;

a processor; and

one or more stored program instructions which, when executed by the processor, cause the processor to carry out the steps of:

creating and storing in computer memory a programmatic object model that facilitates performing financial analysis and comprising a plurality of zero-order objects each of which is not decomposable into other objects;

wherein the object model in the computer memory comprises a universe of data items and relationships between the data items, and a plurality of higher-order objects that the processor generates based on the zero-order objects;

wherein each zero-order object consists of one of a plurality of time series objects, a plurality of metric objects, and a plurality of financial instrument objects;

using the processor, generating one or more higher-order objects in the plurality of higher-order objects using one or more metric objects in the plurality of metric objects.

16 . The application server of claim 15 , wherein the higher-order objects can be decomposed into other building blocks, and wherein the higher-order objects comprise date set, index, portfolio, strategy, instrument group, and regression objects.

17 . The application server of claim 16 , wherein instrument group objects comprise one or more instruments selected from a universe of instruments using a filter chain;

wherein index objects indicate a collective value of one or more instruments;

wherein regression objects transform one or more first time series into a predicted time series and compare the predicted time series with a second time series;

wherein portfolio objects comprise: zero or more time series each of which represents an instrument; a particular date set; and one or more trades that refer to times represented in the particular date set;

wherein strategy objects comprise a date set that represents a time period and a statement block that can be executed to determine one or more trades of the instrument;

wherein date set objects comprise time values that satisfy one or more selection criteria.

18 . The application server of claim 16 ,

wherein each of the index objects comprises an instrument group object, a metric object, and a date set object.

19 . The application server of claim 16 ,

wherein each of the instrument group objects comprises a plurality of filter objects, and

wherein each of the filter objects comprises a set of instrument objects and a metric object.

20 . The application server of claim 15 , wherein the one or more program instructions further comprise instructions which, when executed by one or more processors, cause the one or more processors to perform:

receiving, at runtime, user input specifying a name of a custom metric object and identifying an ordered or concatenated plurality of function tokens for association with the name of the custom metric object;

creating and storing, in the object model, a custom metric object based on the name and the tokens.

Assignments (8)
ASSIGNMENT OF INTELLECTUAL PROPERTY SECURITY AGREEMENTS Recorded Jul 3, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0640 →
SECURITY INTEREST Recorded Jul 3, 2022
From: PALANTIR TECHNOLOGIES INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0506 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ERRONEOUSLY LISTED PATENT BY REMOVING APPLICATION NO. 16/832267 FROM THE RELEASE OF SECURITY INTEREST PREVIOUSLY RECORDED ON REEL 052856 FRAME 0382. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Aug 26, 2021
From: ROYAL BANK OF CANADA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 057335/0753 →
SECURITY INTEREST Recorded Jun 4, 2020
From: PALANTIR TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 052856/0817 →
RELEASE OF SECURITY INTEREST Recorded Jun 4, 2020
From: ROYAL BANK OF CANADA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 052856/0382 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS ADMINISTRATIVE AGENT
Reel/Frame 051713/0149 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: ROYAL BANK OF CANADA, AS ADMINISTRATIVE AGENT
Reel/Frame 051709/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2015
From: AYMELOGLU, ANDREW; SIMLER, KEVIN; POIRIER, ERIC; TAN, GARRY; BURR, BRANDON
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 036605/0001 →