Nova Patents
CA2705940C

Large block trading

Abstract

Systems and methods for administering trade orders are described. An embodiment comprises receiving, from a first server operated by a first trader, a communication including a first trade order and one or more selection criteria, the first trade order including at least one of a specified instrument, a specified quantity, and a specified price; determining that a database of trade orders does not contain a trade order matching the first trade order; identifying a plurality of traders satisfying the selection criteria; sending, to a plurality of second servers, a query including at least one of the specified instrument, the specified quantity, and the specified price; receiving, from a one of the plurality of second servers operated on behalf of a second trader, a positive response to the query; and facilitating execution of a trade between the first trader and the second trader for the specified instrument at the specified price.

CA2705940C, drawing sheet 1
Sheet 1 of 6

Term

2.1 yearsleft in the term

Expires 14 November 2028.

  1. Priority
  2. Filed
  3. Granted
  4. Today
  5. Expires

142 claims: 12 independent, 130 dependent

  1. 1
    A method of matching electronic buy requests with electronic sell requests at buy-side and sell-side servers, respectively, the method comprising the steps of:at a first server, receiving electronic messages comprising trading orders from trading entities, the trading orders each including a specified instrument, and at least one parameter including a specified quantity or a specified price, and storing the trading orders without making the trading orders known to open market platforms;storing records of said electronic messages in a first order database;in response to said receiving electronic messages, generating electronic query messages;sending from said first server to a second server, across a network, the electronic query messages seeking matches for trading orders stored in the first order database, the electronic queries specifying the specified instrument, and at least one parameter;at the second server, searching a second order database to match received electronic queries against trading orders stored in the second trading database while keeping trading orders and electronic queries confidential from trading entities other than the entities that entered the respective trading orders, and informing a trading entity of a received electronic query only when a match is detected between one of the trading entity’s orders and a received electronic query, the informing being to obtain approval of the trading entity to trade between the matched trading order and the matched received electronic query;and generating trading instructions for execution of a trade between the trading entity associated with the trading order underlying the electronic query matched by the second server and the trading entity associated with the matching trading order.
  2. 33
    One or more computer-readable, nontransitory memories for matching electronic buy requests with electronic sell requests at buy-side and sell-side servers, respectively, having embedded thereon programs to cause one or more computers to:receive, at a first server, electronic messages comprising trading orders from trading entities, the trading orders each including a specified instrument, and at least one parameter including a specified quantity and a specified price, and store the trading orders without making the trading orders known to open market platforms: store records of said electronic messages in a first order database;in response to said receiving electronic messages, generate electronic query messages;send from said first server to a second server, electronic query messages seeking matches for trading orders stored at in the first order database, the electronic queries including the specified instrument, and at least one parameter;at the second server, searching a second order database to match received electronic queries against trading orders stored in the second trading database while keeping trading orders and electronic queries confidential from trading entities other than the entities that entered the respective trading orders, and inform a trading entity of a received electronic query only when a match is detected between one of the trading entity’s orders and a received electronic query, the informing being to obtain approval of the trading entity to trade between the matched trading order and the matched received electronic query;and CA 02705940 2017-01-12 execute a trade between the trading entity associated with the trading order underlying the electronic query matched by the second server and the trading entity associated with the matching trading order.
  3. 60
    A computer of an electronic trading system for matching electronic buy requests with electronic sell requests at buy-side and sell-side servers, respectively, comprising:a first server designed to: store electronic messages comprising trading orders from trading entities, the trading orders each including a specified instrument, and at least one parameter including a specified quantity or a specified price, store records of said electronic messages in a first order database, in response to receiving said electronic messages, generate electronic query messages, store the trading orders without making the trading orders known to open market platforms, send to a second server electronic queries seeking matches for trading orders stored in the first order database, the queries including the specified instrument, and at least one parameter;CA 02705940 2017-01-12 the second server being programmed to search a second order database to match received electronic queries against trading orders stored in the second trading database while keeping trading orders and electronic queries confidential from trading entities other than the entities that entered the respective trading orders, and to inform a trading entity of a received electronic query only when a match is detected between one of the trading entity’s orders and a received electronic query, the informing being to obtain approval of the trading entity to trade between the matched trading order and the matched received electronic query;and at least one computer programmed for execution of a trade between the trading entity associated with the trading order underlying the electronic query matched by the second server and the trading entity associated with the matching trading order.
  4. 83
    A method comprising:receiving, from a first server operated on behalf of a first trader, a communication including a first trade order and one or more selection criteria, the first trade order including at least one of a specified instrument, a specified quantity, and a specified price;determining that a database of trade orders does not contain a second trade order matching the first trade order;after receiving the communication, and responsive to determining that the database of trade orders does not contain a second trader order matching the first trade order, identifying a plurality of second traders satisfying the selection criteria;after identifying the plurality of second traders, sending, to a plurality of second servers, each second server operated on behalf of one or more of the plurality of second traders, a query including at least one of the specified instrument, the specified quantity, and the specified price;receiving, from a one of the plurality of second servers operated on behalf of a one of the plurality of second traders, a positive response to the query;and responsive to receiving a positive response to the query, facilitating execution of a trade between the first trader and the one of the plurality of second traders for the specified instrument at the specified price.
  5. 99
    A method comprising:receiving, from a first server, a communication including a trade order and one or more selection criteria, the trade order indicating an intent of a first trader to trade a specified instrument at at least one of a specified quantity and a specified price;after receiving the communication, identifying a plurality of second traders satisfying the selection criteria;CA 02705940 2017-01-12 after identifying the plurality of second traders, sending to at least one second server, each of the at least one second servers being operable to enter trades on behalf of one or more of the plurality of second traders, a query including at least one of the specified instrument, the specified quantity, and the specified price;receiving, from a one of the at least one second servers, a positive response to the query, the positive response indicating an intent of a one of the plurality of second traders to trade the specified instrument at the specified price;and responsive to receiving a positive response indicating an intent of a one of the plurality of second traders to trade the specified instrument at the specified price, facilitating execution of a trade between the first trader and the one of the plurality of second traders for the specified instrument at the specified price.
  6. 102
    A method comprising:receiving, from a first server operated on behalf of a first trader, a communication including a first trade order and one or more selection criteria, the first trade order including at least one of a specified instrument, a specified quantity, and a specified price;after receiving the communication, determining that a database of trade orders does not contain a second trade order matching the first trade order;responsive to determining that the database of trade orders does not contain a second trader order matching the first trade order, sending, to a plurality of second servers, each second server operated on behalf of a one of a plurality of second traders, a query including at least one of the specified instrument, the specified quantity, and the specified price;receiving, from a one of the plurality of second servers operated on behalf of a one of the plurality of second traders, a positive response to the query;CA 02705940 2017-01-12 determining that the one of the plurality of second traders satisfies the selection criteria;and responsive to receiving a positive response to the query and determining that the one of the plurality of second traders satisfies the selection criteria, facilitating execution of a trade between the first trader and the one of the plurality of second traders for the specified instrument at the specified price.
  7. 103
    A system comprising:at least one processor;and at least one computer-readable storage medium having stored thereon computer-executable instructions that, when executed by the at least one processor, cause the at least one processor to perform a method, the method comprising: receiving, from a first server operated on behalf of a first trader, a communication including a first trade order and one or more selection criteria, the first trade order including at least one of a specified instrument, a specified quantity, and a specified price;after receiving the communication, determining that a database of trade orders does not contain a second trade order matching the first trade order;responsive to determining that the database of trade orders does not contain a second trader order matching the first trade order, sending, to a plurality of second servers, each second server operated on behalf of a one of a plurality of second traders, a query including at least one of the specified instrument, the specified quantity, and the specified price;receiving, from a one of the plurality of second servers operated on behalf of a one of the plurality of second traders, a positive response to the query;determining that the one of the plurality of second traders satisfies the selection criteria;and responsive to receiving a positive response to the query and determining that the one of the plurality of second traders satisfies the selection criteria, facilitating execution of a trade between the first trader and the one of the plurality of second traders for the specified instrument at the specified price.
  8. 104
    At least one computer-readable storage medium having stored thereon computerexecutable instructions that, when executed by one or more processors, cause the one or more processors to perform a method, the method comprising:CA 02705940 2017-01-12 receiving, from a first server operated on behalf of a first trader, a communication including a first trade order and one or more selection criteria, the first trade order including at least one of a specified instrument, a specified quantity, and a specified price;after receiving the communication, determining that a database of trade orders does not contain a second trade order matching the first trade order;responsive to determining that the database of trade orders does not contain a second trader order matching the first trade order, sending, to a plurality of second servers, each second server operated on behalf of a one of a plurality of second traders, a query including at least one of the specified instrument, the specified quantity, and the specified price;receiving, from a one of the plurality of second servers operated on behalf of a one of the plurality of second traders, a positive response to the query;determining that the one of the plurality of second traders satisfies the selection criteria;and responsive to receiving a positive response to the query and determining that the one of the plurality of second traders satisfies the selection criteria, facilitating execution of a trade between the first trader and the one of the plurality of second traders for the specified instrument at the specified price.
  9. 105
    A system comprising:at least one processor;and at least one computer-readable storage medium having stored thereon computer-executable instructions that, when executed by the at least one processor, cause the at least one processor to perform a method, the method comprising: receiving, from a first server, a communication including a trade order and one or more selection criteria, the trade order indicating an intent of a first trader to trade a specified instrument at at least one of a specified quantity and a specified price;after receiving the communication, identifying a plurality of second traders satisfying the selection criteria;after identifying the plurality of second traders, sending to at least one second server, each of the at least one second servers being operable to enter trades on behalf of one or more of the plurality of second traders, a query including at least one of the specified instrument, the specified quantity, and the specified price;CA 02705940 2017-01-12 receiving, from a one of the at least one second servers, a positive response to the query, the positive response indicating an intent of a one of the plurality of second traders to trade the specified instrument at the specified price;and responsive to receiving a positive response indicating an intent of a one of the plurality of second traders to trade the specified instrument at the specified price, facilitating execution of a trade between the first trader and the one of the plurality of second traders for the specified instrument at the specified price.
  10. 108
    At least one computer-readable storage medium having stored thereon computerexecutable instructions that, when executed by one or more processors, cause the one or more processors to perform a method, the method comprising:receiving, from a first server, a communication including a trade order and one or more selection criteria, the trade order indicating an intent of a first trader to trade a specified instrument at at least one of a specified quantity and a specified price;after receiving the communication, identifying a plurality of second traders satisfying the selection criteria;after identifying the plurality of second traders, sending to at least one second server, each of the at least one second servers being operable to enter trades on behalf of one or more of the plurality of second traders, a query including at least one of the specified instrument, the specified quantity, and the specified price;receiving, from a one of the at least one second servers, a positive response to the query, the positive response indicating an intent of a one of the plurality of second traders to trade the specified instrument at the specified price;and responsive to receiving a positive response indicating an intent of a one of the plurality of second traders to trade the specified instrument at the specified price, facilitating execution of a trade between CA 02705940 2017-01-12 the first trader and the one of the plurality of second traders for the specified instrument at the specified price.
  11. 111
    A system comprising:at least one processor;and at least one computer-readable storage medium having stored thereon computer-executable instructions that, when executed by the at least one processor, cause the at least one processor to perform a method, the method comprising: receiving, from a first server operated on behalf of a first trader, a communication including a first trade order and one or more selection criteria, the first trade order including at least one of a specified instrument, a specified quantity, and a specified price;determining that a database of trade orders does not contain a second trade order matching the first trade order;after receiving the communication, and responsive to determining that the database of trade orders does not contain a second trader order matching the first trade order, identifying a plurality of second traders satisfying the selection criteria;after identifying the plurality of second traders, sending, to a plurality of second servers, each second server operated on behalf of one or more of the plurality of second traders, a query including at least one of the specified instrument, the specified quantity, and the specified price;receiving, from a one of the plurality of second servers operated on behalf of a one of the plurality of second traders, a positive response to the query;and CA 02705940 2017-01-12 responsive to receiving a positive response to the query, facilitating execution of a trade between the first trader and the one of the plurality of second traders for the specified instrument at the specified price.
  12. 127
    At least one computer-readable storage medium having stored thereon computerexecutable instructions that, when executed by one or more processors, cause the one or more processors to perform a method, the method comprising:receiving, from a first server operated on behalf of a first trader, a communication including a first trade order and one or more selection criteria, the first trade order including at least one of a specified instrument, a specified quantity, and a specified price;determining that a database of trade orders does not contain a second trade order matching the first trade order;after receiving the communication, and responsive to determining that the database of trade orders does not contain a second trader order matching the first trade order, identifying a plurality of second traders satisfying the selection criteria;after identifying the plurality of second traders, sending, to a plurality of second servers, each second server operated on behalf of one or more of the plurality of second traders, a query including at least one of the specified instrument, the specified quantity, and the specified price;receiving, from a one of the plurality of second servers operated on behalf of a one of the plurality of second traders, a positive response to the query;and responsive to receiving a positive response to the query, facilitating execution of a trade between the first trader and the one of the plurality of second traders for the specified instrument at the specified price.