US2014214647A1PendingUtilityA1

System and Method for Delaying Execution of Financial Transactions

Assignee: SIMONOFF JEROMEPriority: Dec 9, 2011Filed: Apr 2, 2014Published: Jul 31, 2014
Est. expiryDec 9, 2031(~5.4 yrs left)· nominal 20-yr term from priority
Inventors:Jerome Simonoff
G06Q 40/04H04L 63/30
65
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A system, computer-readable storage medium storing at least one program, and a computer-implemented method for delaying execution of financial transactions. A first message including data for a first financial transaction is received, the first message being uncorrupted. A first trading symbol that is a target of the first financial transaction is determined. The first trading symbol is determined to be a target of at least one financial transaction that was included in at least one previous message that was determined to be corrupted. Execution of the first financial transaction is delayed.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A computer-implemented method for delaying execution of financial transactions, performed on a server having at least one processor and memory storing at least one program for execution by the at least one processor to perform the method, comprising:
 receiving a first message including data for a first financial transaction, the first message being uncorrupted;   determining a first trading symbol that is a target of the first financial transaction;   determining that the first trading symbol is a target of at least one financial transaction that was included in at least one previous message that was determined to be corrupted; and   in accordance with the determination that the first trading symbol is a target of at least one financial transaction that was included in at least one previous message that was determined to be corrupted, delaying execution of the first financial transaction.   
     
     
         2 . The computer-implemented method of  claim 1 , wherein delaying execution of the first financial transaction includes:
 adding the first financial transaction and a time that the first message was received to a quarantined transaction list; and   after a first predetermined time interval from the time that the first financial transaction was received has elapsed,
 removing the first financial transaction from the quarantine transaction list; and 
 processing the first financial transaction. 
   
     
     
         3 . The computer-implemented method of  claim 2 , wherein processing the first financial transaction includes executing the first financial transaction. 
     
     
         4 . The computer-implemented method of  claim 2 , wherein processing the first financial transaction includes transmitting the first financial transaction to a financial transaction server for execution. 
     
     
         5 . The computer-implemented method of  claim 2 , wherein processing the first financial transaction includes:
 adding the first financial transaction and a time that the first message was received to a latency fairness list, wherein the latency fairness list includes financial transactions that are waiting to be executed;   identifying a set of financial transactions in the latency fairness list for which a second predetermined time interval from the time that each financial transaction in the set of financial transactions was received has elapsed, wherein the set of financial transactions includes the first financial transaction;   determining an ordering of the financial transactions in the set of financial transactions based on at least one ordering rule; and   processing the financial transactions in the set of financial transactions based on the ordering.   
     
     
         6 . The computer-implemented method of  claim 5 , wherein processing the financial transactions in the set of financial transactions includes executing financial transactions in the set of financial transactions based on the ordering. 
     
     
         7 . The computer-implemented method of  claim 5 , wherein processing the financial transactions in the set of financial transactions based on the ordering includes transmitting the set of financial transactions to a financial transaction server for execution in accordance with the ordering. 
     
     
         8 . The computer-implemented method of  claim 5 , the at least one ordering rule is selected from the group consisting of:
 a rule that orders financial transactions based on transaction type;   a rule that orders financial transactions based on price;   a rule that orders financial transactions based on a quantity of a trading symbol; and   a rule that orders financial transactions based on trading symbols.   
     
     
         9 . The computer-implemented method of  claim 1 , wherein determining that the first trading symbol was the target of the at least one previous financial transaction that was included in the at least one previous message that was determined to be corrupted includes determining that the first trading symbol is included in an interfered transaction list, wherein the interfered transaction list includes indicia of trading symbols that were targets of financial transactions that were included in messages determined to be corrupt. 
     
     
         10 . The computer-implemented method of  claim 1 , wherein prior to receiving the first message, the method includes:
 receiving the at least one previous message including data for the at least one previous financial transaction;   determining that the at least one previous message is corrupted;   determining that the first trading symbol is a target of the at least one previous financial transaction; and   adding the first trading symbol and a time that the at least one previous message was received to an interfered transaction list.   
     
     
         11 . The computer-implemented method of  claim 10 , further comprising transmitting an negative acknowledgment to a sender of the at least one previous message notifying the sender that the at least one previous message was received with errors, wherein the negative acknowledgement is transmitted using a same protocol as a protocol that was used to send the at least one previous message to the server. 
     
     
         12 . The computer-implemented method of  claim 10 , further comprising removing the first trading symbol from the interfered transaction list after the first trading symbol has been in the interfered transaction list for at least a predetermined time period. 
     
     
         13 . The computer-implemented method of  claim 1 , further comprising:
 receiving a second message including data for a second financial transaction, the second message being uncorrupted;   determining a second trading symbol that is the target of the second financial transaction;   determining that the second trading symbol is not the target of the at least one financial transaction that was included in the at least one previous message that was determined to be corrupted; and   processing the second financial transaction.   
     
     
         14 . The computer-implemented method of  claim 13 , wherein processing the second financial transaction includes executing the second financial transaction. 
     
     
         15 . The computer-implemented method of  claim 13 , wherein processing the second financial transaction includes transmitting the second financial transaction to a financial transaction server for execution. 
     
     
         16 . The computer-implemented method of  claim 13 , wherein processing the second financial transaction includes:
 adding the second financial transaction and a time that the second message was received to a latency fairness list;   identifying a set of financial transactions in the latency fairness list for which a second predetermined time interval from the time that each financial transaction in the set of financial transactions was received has elapsed, wherein the set of financial transactions includes the second financial transaction;   determining an ordering of the financial transactions in the set of financial transactions based on at least one ordering rule; and   processing the financial transactions in the set of financial transactions based on the ordering.   
     
     
         17 . The computer-implemented method of  claim 16 , wherein processing the financial transactions in the set of financial transactions based on the ordering includes executing the financial transactions in the set of financial transaction based on the ordering. 
     
     
         18 . The computer-implemented method of  claim 16 , wherein processing the financial transactions in the set of financial transactions based on the ordering includes transmitting the set of financial transaction to a financial transaction server for execution in accordance with the ordering. 
     
     
         19 . The computer-implemented method of  claim 13 , wherein the data for the second financial transaction is encrypted, and wherein prior to determining the second trading symbol that is the target of the second financial transaction, the method further comprises decrypting the data for the second financial transaction. 
     
     
         20 . The computer-implemented method of  claim 13 , further comprising transmitting an acknowledgment to a sender of the second message notifying the sender that the second message was received without errors, wherein the acknowledgement is transmitted using a same protocol as a protocol that was used to send the second message to the server. 
     
     
         21 . The computer-implemented method of  claim 1 , wherein the data for the first financial transaction is encrypted, and wherein prior to determining the first trading symbol that is the target of the first financial transaction, the method further comprises decrypting the data for the first financial transaction. 
     
     
         22 . The computer-implemented method of  claim 1 , further comprising transmitting an acknowledgment to a sender of the first message notifying the sender that the first message was received without errors, wherein the acknowledgement is transmitted using a same protocol as a protocol that was used to send the first message to the server. 
     
     
         23 . A system to regulate execution of financial transactions, comprising:
 at least one processor;   memory; and   at least one program stored in the memory and executable by the at least one processor, the at least one program comprising instructions to:
 receive a first message including data for a first financial transaction, the first message being uncorrupted; 
 determine a first trading symbol that is a target of the first financial transaction; 
 determine that the first trading symbol is a target of at least one financial transaction that was included in at least one previous message that was determined to be corrupted; and 
 in accordance with the determination that the first trading symbol is a target of at least one financial transaction that was included in at least one previous message that was determined to be corrupted, delay execution of the first financial transaction. 
   
     
     
         24 . A computer-implemented method for delaying execution of financial transactions, performed on a server having at least one processor and memory storing at least one program for execution by the at least one processor to perform the method, comprising:
 receiving at least one message including data for at least one financial transaction;   determining that the at least one message is corrupted;   identifying at least one trading symbol associated with the at least one financial transaction;   adding the at least one trading symbol to an interfered transaction list;   receiving a subsequent message including data for at least one subsequent financial transaction; and   delaying the at least one subsequent financial transaction in accordance with a determination that the at least one subsequent financial transaction is associated with a trading symbol in the interfered transaction list.   
     
     
         25 . A computer-implemented method for ordering execution of financial transactions, performed on a server having at least one processor and memory storing at least one program for execution by the at least one processor to perform the method, comprising:
 receiving messages that include data requesting execution of one or more financial transactions;   ordering the requested financial transactions in accordance with at least one ordering rule to produce a first ordered set of requested financial transactions, wherein at least a subset of the ordered requested financial transactions are in a different order than an order in which the corresponding messages, requesting execution of said financial transactions, were received, and storing data identifying the ordered transactions;   submitting at least a subset of the ordered financial transactions for execution;   within a predefined time interval, receiving information identifying which of the submitted ordered financial transactions have been executed;   identifying unexecuted financial transactions, including identifying which of the ordered financial transactions submitted for execution remain unexecuted at the end of the predefined time interval;   during or after the predefined time interval, receiving further messages that include data requesting execution of one or more financial transactions, and ordering the requested financial transactions from the further messages and at least a subset of the identified unexecuted financial transactions in accordance with at least one ordering rule to produce a second ordered set of requested financial transactions;   submitting at least a subset of the second ordered set of requested financial transactions for execution.

Join the waitlist — get patent alerts

Track US2014214647A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.