IP Library Granted Patent US 9,123,076
Granted Patent B2
US 9,123,076 · App. 14/055,205 · Granted Sep 1, 2015

Customizable macro-based order entry protocol and system

View Patent ↗
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 9,123,076
App. No.
14/055,205
Granted
Sep 1, 2015
Kind
B2
Abstract

The present technology is related to employing a template/macro-based order entry system. An initial order data message contains a macro that establishes the initial parameters for an order and a unique ID is associated with the template. Subsequent, and potentially smaller sized data messages contain the unique ID as well as relevant order details for placing an order. Of course, the technology described herein envisions a much broader concept of reducing message sizes to help improve overall latency and is not limited to order entry.

Claims (70)

1. A method for processing order data messages, comprising:

in an information processing apparatus including at least a memory, a communication interface, and one or more processors:

receiving, using the communication interface, an initial order data message associated with an account and comprising an initial order, one or more static fields, and one or more variable fields;

validating the initial order data message, using the one or more processors, and generating an order macro ID associated with the initial order included in the initial order data message;

transmitting, using the communication interface, a data message including an acknowledgment of the received initial order data message and the generated order macro ID;

receiving, using the communication interface, a subsequent order data message that references the initial order data message using the generated order macro ID, the subsequent order data message including information for an order using at least one variable field value for one of the one or more variable fields in the initial order data message; and

generating, using the one or more processors, a complete order data message by combining values associated with the one or more static fields in the initial order data message with the at least one variable field value.

2. The method of claim 1 , wherein

validating the initial order data message comprises parsing the initial order data message and validating all of the one or more static fields in the initial order data message, and

one or more subsequent order data messages including one or more subsequent orders indicating generated order macro IDs are received via the communication interface.

3. The method of claim 1 , further comprising:

validating the one or more variable fields in the subsequent order data messages; and

acknowledging validation of the subsequent order data message.

4. The method of claim 1 , further comprising:

retrieving the initial order using the order macro ID in the subsequent order data message; and

updating the one or more variable fields in the initial order with the at least one variable field.

5. The method of claim 1 , wherein the one or more static fields comprise at least one of an order type, an order symbol, and/or an order size.

6. The method of claim 1 , wherein the one or more variable fields comprise at least one of an order side and/or an order price.

7. A non-transitory computer-readable storage medium having computer readable code embodied therein for processing orders using a customizable order entry protocol which, when executed by a computer having one or more processors, provides execution comprising:

receiving, using a communication interface, an initial order data message associated with an account and comprising an initial order, one or more static fields, and one or more variable fields;

validating the initial order data message, using the one or more processors, and generating an order macro ID associated with the initial order included in the initial order data message;

transmitting, using the communication interface, a data message including an acknowledgment of the received initial order data message and the generated order macro ID;

receiving, using the communication interface, a subsequent order data message that references the initial order data message using the generated order macro ID, the subsequent order data message including information for an order using at least one variable field value for one of the one or more variable fields in the initial order data message, and

generating, using the one or more processors, a complete order data message by combining values associated with the one or more static fields in the initial order data message with the at least one variable field value.

8. An information processing apparatus, comprising:

a communication interface configured to receive one or more order data messages;

a memory configured to store one or more orders; and

one or more processors operatively associated with the communication interface and the memory and configured to process order data messages, the one or more processors further configured to:

receive, using the communication interface, an initial order data message associated with an account and comprising an initial order, one or more static fields, and one or more variable fields,

validate the initial order data message, using the one or more processors, and generate order macro ID associated with the initial order included in the initial order data message,

transmit, using the communication interface, a data message including an acknowledgment of the received initial order data message and the generated order macro ID,

receive, using the communication interface, a subsequent order data message that references the initial order data message using the generated order macro ID, the subsequent order data message including information for an order using at least one variable field value for one of the one or more variable fields in the initial order data message, and

generate, using the one or more processors, a complete order data message by combining values associated with the one or more static fields in the initial order data message with the at least one variable field value.

9. The information processing apparatus of claim 8 , wherein

validating the initial order data message comprises parsing the initial order data message and validating all of the one or more static fields in the initial order data message,

one or more subsequent order data messages including one or more subsequent orders indicating generated order macro IDs are received via the communication interface, and

the information processing apparatus is an electronic exchange apparatus configured to communicate with one or more trading devices.

10. The information processing apparatus of claim 8 , wherein the one or more processors are further configured to

validate the one or more variable fields in the subsequent order data messages; and

acknowledge validation of the subsequent order data message.

11. The information processing apparatus of claim 8 , wherein the one or more processors are further configured to:

retrieve the initial order using the order macro ID in the subsequent order data message; and

update the one or more variable fields in the initial order with the at least one variable field.

12. The information processing apparatus of claim 8 , wherein the one or more static fields comprise at least one of an order type, an order symbol, and/or an order size.

13. The information processing apparatus of claim 8 , wherein the one or more variable fields comprise at least one of an order side and/or an order price.

14. An information processing system, comprising:

a client device, comprising:

a communication interface for sending/receiving one or more order data messages,

a memory configured to store one or more orders, and

one or more processors operatively associated with the memory and the communication interface and configured to create one or more order data messages, and

an information processing apparatus, comprising:

a communication interface configured to receive one or more order data messages;

a memory configured to store one or more orders; and

one or more processors operatively associated with the communication interface and the memory and configured to process order data messages, the one or more processors further configured to:

receive, using the communication interface, an initial order data message associated with an account and comprising an initial order, one or more static fields, and one or more variable fields,

validate the initial order data message, using the one or more processors, and generate an order macro ID associated with the initial order included in the initial order data message,

transmitting, using the communication interface, a data message including an acknowledgment of the received initial order data message and the generated order macro ID,

receive, using the communication interface, a subsequent order data message that references the initial order data message using the generated order macro ID, the subsequent order data message including information for an order using at least one variable field value for one of the one or more variable fields in the initial order data message, and

generate, using the one or more processors, a complete order data message by combining values associated with the one or more static fields in the initial order data message with the at least one variable field value.

15. The information processing system of claim 14 , wherein

validating the initial order data message comprises parsing the initial order data message and validating all of the one or more static fields in the initial order data message,

one or more subsequent order data messages including one or more subsequent orders indicating generated order macro IDs are received via the communication interface,

the client device is a trading device, and

the information processing apparatus is an electronic exchange apparatus configured to communicate with the trading device.

16. The information processing system of claim 14 , wherein the one or more processors in the information processing apparatus are further configured to:

validate the one or more variable fields in the subsequent order data messages; and

acknowledge validation of the subsequent order data message.

17. The information processing system of claim 14 , wherein the one or more processors in the information processing apparatus are further configured to:

retrieve the initial order using the order macro ID in the subsequent order data message; and

update the one or more variable fields in the initial order with the at least one variable field.

Assignments (2)
CHANGE OF NAME Recorded Oct 9, 2015
From: THE NASDAQ OMX GROUP, INC.
To: NASDAQ, INC.
Reel/Frame 036822/0452 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 11, 2014
From: CHAPMAN, MICHAEL; LAZAREV, MICHAEL; VACCARO, JOHN
To: NASDAQ OMX GROUP, INC.
Reel/Frame 032194/0133 →