Systems to prevent manipulation and interference in electronic intraday auctions
The system sets and maintains intraday auction prices within the BBO range using lookback and look-ahead periods, addressing manipulation risks in electronic intraday auctions.
Patent Information
- Application Number
- DE202018006989
- Authority / Receiving Office
- DE · DE
- Patent Type
- Utility models
- Current Assignee / Owner
- Priority Date
- 2017-04-24
- Filing Date
- 2018-04-24
- Publication Date
- 2025-06-12
- Estimated Expiration
- 2028-04-30
AI Technical Summary
Electronic intraday auctions are susceptible to manipulation due to millisecond and sub-millisecond access, leading to incorrect price identification by algorithms.
A system that sets the auction price based on initial orders and order crossings within a band of the best bid-best offer (BBO) spread, using lookback and look-ahead periods to prevent temporary price manipulation, and ensures the auction price remains within the BBO range.
Prevents manipulation by fixing the auction price before the start, ensuring it remains within the BBO range, thereby maintaining auction integrity and preventing adverse price movements.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
ARTThe present disclosure relates generally to computer systems, and more particularly to systems for preventing tampering and influence in intra-bay electronic auctions.BACKGROUNDElectronic platforms provided by various organizations to support Intra-Bay Auctions for valuable instruments. Intraday auctions are auctions for widely-containing instruments that are performed during normal commercial times for these valuable instruments. For example, intra-bay auctions may be useful to help improve the liquidity of certain assets. Unfortunately, as auctions last the entire day, algorithms used to identify values for the increased security papers may become the subject of tampering by accesses to the electronic platform in the millisecond and sub-millisecond ranges. As a result, the algorithms may not be able to identify proper values for the increased value-containing instruments.SUMMARYThe present disclosure provides systems and methods for preventing tampering with intra-bay electronic auctions.In a first embodiment, a method includes using at least one processing device to obtain orders relating to an asset from an electronic trading system. The method also includes using at least one processing device to identify a value for the asset to be used during an intra-pay auction involving the asset. The identified value is based on an identified order crossing within the orders. The value is identified and set prior to the intra-pay auction. The value is within a band of the range between the best bid and best offer (BBO). The method also includes using at least one processing device that initiates the intra-bay auction pertaining to the asset based on the identified and set value and the determined order crossing. Changes to the BBO band during intra-pay auction have no effect on the identified and set value.In a second embodiment, an apparatus includes at least one processing device and at least one memory storing instructions. When executed by the at least one processing device, the at least one processing device performs the acquisition of orders related to an asset from an electronic trading system. The at least one processing device also performs identifying a value for the asset to be used during an intra-pay auction involving the asset. The identified value is based on an identified order crossing within the orders. The value is identified and set prior to the intra-pay auction. The value is within a band of the range between the best bid and best offer (BBO). The at least one processing device also performs the initiating of the intra-bay auction pertaining to the asset based on the identified and set value and the determined order crossing. Changes to the BBO band during intra-pay auction have no effect on the identified and set value.In a third embodiment, a non-transitory computer readable medium includes instructions that, when executed by at least one processing device, cause the at least one processing device to perform the acquisition of orders relating to an asset from an electronic trading system. The instructions also cause the at least one processing device to perform identifying a value for the asset to be used during an intra-pay auction involving the asset. The identified value is based on an identified order crossing within the orders, the value being identified and established prior to the intra-pay auction. The value is within a band of the range between the best bid and best offer (BBO). The instructions also cause the at least one processing device to perform the initiating of the intra-bay auction for the asset based on the identified and set value and the determined order crossing. Changes to the BBO band during intra-pay auction have no effect on the identified and set value.Other technical features will be readily apparent to those skilled in the art from the following figures, descriptions and claims.BRIEF DESCRIPTION OF THE DRAWINGSFor a more complete understanding of the present disclosure and its features, reference is now made to the following description, taken in conjunction with the accompanying drawings, in which: FIG. 1 illustrates a system-level architecture that helps prevent tampering with intra-bay electronic auctions, according to an embodiment of the present disclosure; FIG. 2 illustrates an example device for preventing tampering with intra-bay electronic auctions in accordance with the present disclosure; FIG. 3 illustrates an order book according to an embodiment of the present disclosure; FIG. 4 illustrates an auction flow according to an embodiment of the present disclosure; FIG. 5 illustrates a time-series diagram with only peg orders; FIG. 6 illustrates a time-series diagram with only peg orders according to an embodiment of the present disclosure; FIG. 7 illustrates a time-series diagram with peg and limit orders; FIG. 8 illustrates a time-series diagram with peg and limit orders according to an embodiment of the present disclosure; FIG. 9 illustrates a time-series diagram with BBO manipulation in pricing; FIG. 10 illustrates a time-series diagram with retrospective price stabilization according to an embodiment of the present disclosure; FIG. 11 illustrates a time-series diagram with BBO latency in pricing; FIG. 12 illustrates a time-series diagram with predictive price stabilization according to an embodiment of the present disclosure; and FIG. 13 illustrates a time-series diagram with preview and preview periods according to an embodiment of the present disclosure.DETAILED DESCRIPTIONFigures 1-13 discussed below and the various embodiments used in this patent document to describe the principles of the present invention are for illustrative purposes only and should in no way be construed to limit the scope of the invention. Those skilled in the art will understand that the principles of the invention may be implemented in any type of suitably arranged apparatus or system.As mentioned above, Intra-Pay auctions refer to auctions performed for financial instruments on an electronic trading system during normal trading times for those financial instruments. An electronic trading system provides a central marketplace where both buyers and sellers can buy / sell financial instruments. Dealers connect to the electronic trading system via their own trading computers, which can receive market data from the electronic trading system and issue commands to buy or sell certain financial instruments. Issuing commands to buy or sell financial instruments from a trading computer to the electronic trading system is referred to as electronic trading. Because the function of electronic trading systems is to facilitate the market for various financial instruments, the electronic trading systems are sometimes also referred to as electronic markets or electronic exchanges.As auctions last the entire day, pricing algorithms used to identify prices for the increased financial instruments may become the subject of tampering. For example, if an Intraday auction concerns a particular asset also noted on a security exchange, pricing algorithms could use the price for the asset on the security exchange if they identify a market price for the asset in the Intraday auction. If someone were to temporarily manipulate the price of the asset at the security exchange (and be it for only a few milliseconds), this could cause the pricing algorithms in the Intraday auction to identify an incorrect market price for the asset. An asset may be an example of a security paper or other financial instrument.The present disclosure provides systems and methods for preventing tampering with intra-bay electronic auctions when an electronic trading system is used. Among other things, the systems and methods set the price of an intra-pay auction prior to beginning the auction based on orders for the financial instrument involved in the intra-pay auction. The systems and methods also provide a price stabilization process that uses both preview and preview periods to avoid temporary price manipulations. In principle, the procedure takes place in three phases. In the "pre-auction phase", the auction price is set based on initial orders pertaining to a financial instrument and an "order crossing" within the orders, and the review and preview periods are used. In the "auction invocation phase", additional purchase and sale orders for the financial instrument may be received. In the "Uncross" phase, auction is compensated and actual trading transactions for the financial instrument can be initiated. These approaches help ensure that an auction price for an intra-pay auction begins and remains within a range between best bid and best offer (BBO) from a liquid market. If the BBO shifts during auction so that the auction price is no longer within the BBO at the time the auction is compensated for, the auction may be announced. These approaches can also be extended and used with conditional offers in the Intraday auction.FIG. 1 illustrates a system-level architecture 100 that helps prevent tampering with intra-bay electronic auctions using an electronic trading system according to an embodiment of the present disclosure. Any other suitable computing platform could be used to support pricing and pricing stabilization in intra-bay electronic auctions.In FIG. 1, the electronic trading system 102 could be implemented in any suitable manner. For example, in some embodiments, the electronic trading system 102 could be implemented using one or more servers or other computing devices. The individual functions of the electronic trading system 102 may be implemented using software or firmware instructions executed by one or more processors of the servers or other computing devices. Network 124 may refer to any suitable network or any combination of networks. In some embodiments, network 124 in system-level architecture 100 denotes a private network configured to minimize latency of transmitted data. In some embodiments, the electronic trading system 102 includes a matching engine 104, a real-time BBO feed 106, a client gateway 108, a market data publication 110, a post trading processing system 112 for clearing, static reference data 114, market tools 116, a file server 118, and a T+1 monitor 120.Matching engine 104 may be a set of instructions that, when executed by a processor of system 100, processes all order messages through an auction process and executes the trading stores. Various embodiments of the auction process as performed by matching engine 104 are described herein in FIGS. 3-10.Matching engine 104 provides a random-based auction that is executed as a single orderbook among other orderbooks (the books may be maintained independently without interaction). Maintaining multiple ordering books provides the ability to separately manage the access of members 126 between the auction pool and the other ordering books. For example, there may be two ordering books that operate independently of each other, an undisplayed liquidity pool and a displayed liquidity pool. The system 100 provides for an auction price to be within the Primary Best Bid ("PBBO") and to be determined by the most passive orders that may cross at the time of pricing.The non-displayed liquidity pool includes orders submitted for execution or crossing either to the midpoint of the PBBO reference prices, to the primary best bid, or to the primary best offer (PBBO formation and crossing). This allows the operator to invoke the clearing of the reference price according to the financial instrument markets policy ("MiID"), which allows the system 100 to operate as an undisplayed liquidity pool where orders are not subject to retail transparency. The displayed liquidity pool acts as an order book for periodic auctions, with submitted orders triggering periodic auctions. For each auction, the Uncross price and volume are published in accordance with the MiID transparency requirements. In one embodiment, any transparency relief may be dispensed with.In one embodiment, the real-time BBO feed 106 receives stock market data 122 from reference markets over the network 124, and provides the market data 122 to the matching engine 104. Market data 122 could include BBO prices and amounts. The feed 106 may be a real-time feed over the network 124, which may have low latency. This market data 122 is used to generate a "price range". Market data 122 is price and trading related data for a financial instrument reported by a trading station such as a security exchange. Market data 122 allows dealers and investors to know the latest price and to see trend trends for instruments such as master files, hard-food products, derivatives, and currency. The market data 122 are passed on to the matching functional unit 104.Members 126 include investment companies 128a-d, which are investment companies that are members of the trading station. Each investment company 128a-d has one or more computer systems operable on the electronic trading platform of the trading floor. The trading station may include the system 100. Members 126 connect their trading systems to system 100 via client gateway 108. The client gateway 108 may include an application programming interface (API) that enables applications at the investment companies 128 to communicate with the system 100. In one embodiment, the gateway 108 connection utilizes a low latency network, such as the network 124. In this embodiment, investment company 128d places its trading systems in the same location as system 100. Because the network 124 is not used, the access time to the system 100 decreases. The client gateway 108 interacts with the matching engine 104 and passes trade requests to it.Matching engine 104 may access various databases to retrieve data for use in the auction process. An internal database may be used to store reference static data 114. The static reference data 114 consists of (but is not limited to) configurations of the trading members and the trading instrument atrium. The static reference data 114 can be provided to the matching functional unit regularly. The market tools include a set of tools for monitoring and servicing the system 100 (retail outlet). These tools monitor and control all components of the system 100.The file server 118 is used for data recording and reporting. The data may include data of the trade performed by matching engine 104. T+1 monitor 120 may be a connection to another system that performs market abuse monitoring by collecting information from matching engine 104. T+1 monitor 120 supports visibility monitoring of all orders entered into the auction book, even if they were not allowed or the auction is predicted.The renegoti processing system 112 receives real-time feed from the matching engine and distributes all completed trading stores for renegoti processing. The completed trading stores may (but need not always) be sent to central counterparts 134.Market data publication 110 may include a real-time API to publish system market data to third party 132. The system market data consists of (but is not limited to) complete trading stores, prices, and volumes published in auction processing. Timestamp monitoring of IMV / IMP messages (Indicative Matching Volume or Indicative Matching Price) can take place via the market data publication 110. This could be incorporated into the system-level architecture and be suitable for retail market data messages. The performance monitoring in production for auction could be separate from the other order books.During the auction process, orders at the entry point are validated according to criteria such as tick size, order size, order viewing, fat finger controls, and member permission. Orders are monitored in real time to identify a potential match identified within the PBBO.The indicative matching price (IMP) is determined and set. A price stabilization check is performed to ensure that there was no BBO change X milliseconds before the potential match and there was no further BBO change Y milliseconds after the potential match. If the pricing stabilization check succeeds, the auction call begins.At the beginning of the auction call, the indicative matching price (IMP) and the indicative matching volume (IMV) are published. Once the auction call begins, the IMP is fixed. New orders and specific changes have no impact on the IMP, but are allowed during the auction call and an updated IMV is published. The length of the auction call may be randomly set with configurable minimum and maximum time parameters.If the IMP is still within the BBO at the end of the auction call, auction uncrossing begins. Time stamps on trade confirmation messages sent to members may have microsecond granularity and be MiID-II compliant. Only one trade for the entire volume is allowed to be published via the market data provider. The participating pages of the trade are sent to the CCPs.Note that while the system-level architectures are described as using the GOLDMAN, SACHS & CO.SIGMA X MTF platform, this is for illustrative purposes only. Any other suitable computing platform could be used to support pricing and pricing stabilization in intra-bay electronic auctions. The auction pool may use the same instrumentation as SIGMA X MTF. The auction pool may use the same hold logic as is also used in SIGMA X MTF. An auction can be declared if an instrument transitions to a stopped state at any time during the auction process.In one or more embodiments, the system 100 includes the capability to download the auction book history for an instrument from the file server 118 using the operating tools 116. The history could show the life cycle of an auction for an instrument and identify which orders were involved. The system 100 also includes the ability to filter trades between auction and / or other order books. The system 100 provides an order book that uses separate tabs for auction and other order books, the visibility of all settings for pre-order confirmation checking, the ability to manage permissions of each member 126 for the order books, and a day end report for the order book history of auction using the market data publication 110.Some organizations issue trading or entry orders to act at one trading location or outside a trading location with the intention of unduly affecting the value of a financial instrument at another trading location. These organizations also take advantage of a high speed infrastructure or place trading servers as close as possible to trading station servers to improve the speed at which the market data is received and the speed at which an electronic trading platform can interact with the trading station. This is referred to as colocation when the trading servers are located in the same data center as an electronic trading platform. Organizations may also use software to simultaneously review multiple price feeds for financial instruments. Using a low latency architecture, price updates at one trading location that are not yet accounted for at a second trading location may be determined. This delay at the second trading location may allow the organization to execute a trade at the second trading location that takes advantage of the knowledge of the impending price update.Various embodiments of the present disclosure recognize and contemplate that in electronic trading systems where trading is performed using trading computers connected to the electronic trading system, there is the ability to manipulate an auction on the electronic trading system using millisecond or sub-millisecond connections to the electronic trading system. That is, the duration of the auction may be longer than the speed at which the trading computers can submit additional trading stores to manipulate the auction. To overcome this technical problem with electronic auctions, the embodiments described herein provide the ability to fix a price of an auction and prevent tampering by such attacks.FIG. 2 illustrates an example apparatus 200 for preventing tamper stabilization in intra-bay electronic auctions in accordance with the present disclosure. Device 200 could, for example, identify the computing device or one of the computing devices implementing the auction system in the system-level architectures of FIG. 1.As shown in FIG. 2, the device 200 includes at least one processing device 202, at least one storage device 204, at least one communication unit 206, and at least one input / output (I / O) unit 208. The processing device 202 executes instructions that can be loaded into a memory 210. In some embodiments, the instructions executed by the processing device 202 may include instructions that implement the matching engine and other functions or components of the auction system. The processing device 202 includes any suitable number(s) and type(s) of processors or other devices in any suitable arrangement. Example types of processing devices 202 include microprocessors, microcontrollers, digital signal processors, field programmable gate arrays, application specific integrated circuits, and discrete circuits.The storage device 210 and persistent storage 212 are examples of storage devices 204 that represent any structure(s) capable of storing and facilitating retrieval of information (such as data, program code, and / or other suitable information on a temporary or permanent basis). The storage device 210 may be random access memory or any other suitable volatile or non-volatile storage device(s). Persistent storage 212 may include one or more components or devices that support long-term storage of data, such as a read only memory, hard disk, flash memory, or optical disc.The communication unit 206 supports communication with other systems or devices. For example, the communication unit 206 could include a network interface card or wireless transceiver that facilitates communication over a wired or wireless network. The communication unit 206 may support communication via any suitable physical or wireless communication link(s).I / O unit 208 enables input and output of data. For example, the I / O unit 208 may provide a connection for user input via a keyboard, mouse, keypad, touch screen, or other suitable input device. I / O unit 208 may also send outputs to a display, printer, or other suitable output device.Although FIG. 2 illustrates an example of a pricing and pricing stabilization apparatus 200 for electronic intra-pay auctions, various changes may be made to FIG. 2. For example, there are computing devices in a wide variety of configurations, and FIG. 2 does not limit the present disclosure to a particular computing device.FIG. 3 illustrates an order book 300 according to an embodiment of the present disclosure. The order book 300 may be used by a processor implementing the matching engine 104, as shown in the system 100 of FIG. 1.The auction price is determined at the beginning of the auction based on the orders in the order at that time. During the auction invocation phase, the price is fixed. For pricing, orders are prioritized based on price, broker priority, size and / or time. The broker priority may be activated at the order arrival level. If the order is not marked, the prioritization is based on price, size and time. The matching engine selects a price point that maximizes the executable amount. If there is more than one price point, the matching engine selects the price that is exactly midway between the most passive orders (lowest buyer + highest seller) included in the executable set.Any orders submitted after opening the auction call phase do not contribute to pricing because the price is fixed. These orders benefit only from temporal prioritization.In FIG. 3, the order book 300 is vertically provided to represent the crossed orders. The order book 300 includes a bid 302, a limit price 304, a mail price 306, and an executable 308. Section 310 represents the BBO prices. Executable set 308 is shown at each of the respective price points.In this example, the orders include O1 corresponding to a purchase of 25 shares at a price of 9, O2 corresponding to a purchase of 100 shares at 9.5, O3 corresponding to a purchase of 75 shares at 10, and O4 corresponding to a sale of 200 shares at 8. Following the prioritization logic, a price point of 8, 8.5, or 9 (the prices between the lowest buyer and the highest seller) should be selected to maximize the amount. Since several price points are available, to maximize the amount, the price is selected which is exactly midway between the most passive orders on each page of the book (O1 and O4), i.e. the price = 8.5.Order types may include: a PBBO bid with or without limit, a PBBO mid-rate with or without limit, a PBBO letter rate with or without limit, and a limit (when a limit order is entered, an aggressive peg is automatically applied to ensure that it remains within the PBBO if the limit becomes too aggressive).Examples of order types may include:PBBO is 11-12. Limit purchase order at 13th nominal price is 12;PBBO is 11-12. Limit purchase order at 12th nominal price is 12th If PBBO changes to 10-11, the nominal price is automatically updated to 11; andPBBO is 11-12. Limit purchase order at 11th nominal price is 11th PBBO changes to 12-13. The nominal price remains 11.FIG. 4 illustrates an auction flow according to an embodiment of the present disclosure. The auction flow may be performed by a processor implementing matching engine 104, as shown in system 100 of FIG. 1.In step 402, the functional unit 104 provides a potential match with pricing. Matching engine 104 monitors all orders in real time using nominal price, brokers, size and time criteria to identify a potential match within the BBO. Order parameters such as self-crossing prevention and minimum set (MQ) can be considered in searching for a potential match. A potential match may occur by the arrival of a new order, an order change, a trade release of an act, or a change in the BBO.Pricing determines the IMP that maximizes opportunities for order crossing and offers both buyers and sellers a pricing improvement. The IMP is computed as the midpoint between the executable purchase order and the executable sale order. An executable order is an order that can be merged into a single order uncrossing if all orders have been prioritized and features such as MQ, self-crossing prevention, and broker prioritization have been considered.If multiple orders with more than one price point (which can reach the highest feasible set) are used to form the potential match, the IMP is calculated as the midpoint between the lowest price feasible purchase and the highest price feasible sale of those orders. Only orders within the current BBO are considered, i.e., to passive orders are not considered. Orders may not be too aggressive because an aggressive peg method may be used when no peg type is introduced.In various embodiments, MQ reallocation logic may be applied to ensure that the crossing amount is maximized. The IMP may be as granular as a quarter tick. If the IMP is more granular than one quarter tick (because contributing orders span two tick scale identifiers), the IMP could be rounded to the next valid quarter tick. Classes can be adjusted accordingly to accommodate the required comma setting. The mathematical rounding used today for trading prices larger than the available comma locations can be used for IMP calculation. For example, if the money order is 100,0003 and the letter order is 100,0000, the resulting IMP is rounded from 100,00015 to 100,0001 with five comma locations. One class is a subset of the SIGMA X MTF instrument plastic form. These subsets are defined per underlying primary market. For example, all instruments which have the Swiss Stock as the main market can be combined in one class.If an instrument enters a stopped state during step 402, the auction process is stopped and only resumed if the stock is no longer stopped and a new potential match can be found.Once a potential match is identified, matching engine 104 performs a price stabilization check. The PBBO may be extracted from primary market data feeds 106. In the context of MiID-II, this can be the "most liquid market" data feed.In one or more embodiments, there is a minimum period of X+Y milliseconds before the initiation of the auction call in which no PBBO changes may have occurred. In step 404, matching engine 104 checks a review period that includes X milliseconds before the potential match's timestamp to identify whether the PBBO has moved. If so, matching engine 104 repeats step 402 and returns to potential matching with new PBBO.In step 406, the matching engine 104 checks a preview period and waits Y milliseconds from the end of the X timer (potential match time stamp). If a PBBO change occurs, matching engine 104 repeats step 402 and returns to potential matching with the new PBBO. If there are no more PBBO changes on the instrument, matching engine 104 proceeds to auction initiation.The values X+Y may be configured at a class level. These values could be visible in the operating tools within a class tab.During step 406, new orders may be accepted and the criteria for nominal price, broker, size and time re-executed. If a new order has effects on the IMP, the auction procedure is restarted at step 402. If there are no effects on the IMP, step 406 continues although the IMV is updated.Changes may be accepted and the nominal price / broker / size / time matching algorithm may be re-executed. If a change affects the IMP, the auction procedure begins again at step 402. If there are no effects on the IMP, the process proceeds to step 406 even if the IMV changes. Changes may result in a new time stamp.If an instrument is stopped during price stabilization, the auction process is stopped and only continues at step 402 when the stock is released and a new potential match can be found.In step 408, the matching engine 104 computes the IMV using nominal price, broker, size and time criteria. Only orders with a nominal price within the current PBBO are considered. MQ reallocation logic may be applied to ensure that the crossing amount is maximized. If the PBBO has moved since the generation of the IMP and the IMP is now outside the PBBO, the auction procedure begins anew.In step 410, matching engine 104 publishes the IMP and the initial IMV using a market data message. Once the IMP and initial IMV are published, matching engine 104 starts the auction call in step 412. If neither orders are already in the order book nor orders have been entered during the auction call, the auction can be terminated.During auction invocation, the following types of changes are allowed: increase volume, change price to be more aggressive, change MQ down. Changes may result in a new time stamp. New orders are allowed.Stores received after the auction call is started may be rejected. The following exceptions to this rule may apply: connection abort cancelation may still apply and operation team cancelation may still apply. If orders are canceled due to a connection termination cancel cancelation or by the operation team, the matching engine 104 may continue auction unless IMV=0. If IMV=0, matching engine 104 may cancel the auction. The IMP does not change once it has been published.The process used to allocate volume once the auction call phase has begun includes: applying nominal price, broker, size, and time priority criteria for orders received prior to the auction call; time priority for orders received or changed during the auction call; order parameters such as self-crossing prevention, IMS, broker prioritization, and MQ are considered in allocating the volume; and MQ reallocation logic may be applied to ensure that the crossing amount is maximized.The IMV may be updated in real time using a market data message to reflect new or changed orders. The PBBO must not be considered when the IMV is calculated during the auction call.The duration of the auction call may be randomly set with a system-level setting to determine the minimum and maximum durations in milliseconds. An auction call may not begin when the IMP is less than or equal to zero or the IMV is less than or equal to zero.If an instrument goes to a stopped state during the auction call (for some reason), the auction process is stopped and restarted at step 402 only when the stock is released and a new potential match can be found. IMP=0 and IMV=0 can be published via market data.At step 414, matching engine 104 determines whether the auction price is within the BBO. The IMP is used as an auction price. Step 414 may occur after a predetermined period of time. If not, the auction is terminated. If so, the matching engine performs auction uncrossing at step 416.In various embodiments, orders with a time stamp prior to the auction call are applied nominal price, broker, size, and time criteria priority, and orders received or changed during the auction call are applied time priority. Order parameters such as self-crossing prevention, IMS, broker prioritization, and MQ may be considered in allocating volumes. MQ reallocation logic may be applied to ensure that the crossing amount is maximized.Regardless of whether the auction takes place or is being declared, all Good for Authorization (GFA) orders that are not executed or are executed only partially are canceled. GFD orders that are not executed or are executed only partially remain in the order book until the next auction or until cancelation.Trades for each execution may be sent to a clearing house and may be MiID-II compliant. In one example, there may be no change in market identification code (MIC) in messages to the clearing house. The MIC is a unique identification code used to identify security exchanges, regulated and non-regulated trading markets. Trade messages to the members may have microsecond granularity and be MiID-II compliant. Commercial messages about the market data provider may include the MIC for auction. Only one trade for the entire auction volume is allowed to be published via the market data provider. At the end of an auction, whether completed or declared, IMP=0 and IMV=0 could be published over market data.These functions will be described in connection with the system 100. However, the functions described in FIG. 4 could be used in any other suitable system. It should also be appreciated that the functionality of the system 100 could be altered to include other or additional functionality.FIGS. 5-13 illustrate various time-series diagrams.FIG. 5 illustrates a time-series diagram 500 containing only peg orders. The actions in time-series diagram 500 may be performed by a processor implementing matching engine 104, as shown in system 100 of FIG. 1.The time-series diagram 500 includes a BBO timeline 502 and an auction timeline 504. Orders may be placed during timelines 502 and 504, and market data may change. The time-series graph 500 represents the price in the vertical direction and the time in the horizontal direction.The BBO timeline 502 includes a BBO band that uses market data. The BBO band has a bid price 512 and an offer price 514. In this example, the bid price 512 is 10 at time T 0 and the offer price 514 is 11, and the bid price changes to 11.2 at time 518 and the offer price changes to 10.2 at time 516.Auction timeline 504 includes an auction phase 520, an auction call phase 522, and an uncross phase 524. The pre-auction phase 520 is the time before the auction call phase 522. Auction invocation phase 522 continues until order uncrossing 528. The uncrossing phase 524 occurs after the order uncrossing 528. During these phases, the matching engine consumes trading-member order messages and the BBO pricing band feed, as shown in BBO timeline 502 and auction timeline 504. The matching engine uses the pricing process to set an auction price 530. The matching engine then processes an auction, thereby publishing the price generated and allowing other order messages to be submitted, referred to as auction call phase 522. The invocation phase 522 is the period of time that the auction publishes the price and volume that best meet the auction process. At the end of the calling phase, auction at order uncrossing 528 will "decross" and create trades based on prioritization logic in the pricing process of uncrossing phase 524.In FIG. 5, during the pre-auction phase 520, an order that orients at the mean is entered from "Buy 50 to Mean.". Auction price 530 and volume are both zero at this time. When a sales order from "sell 60 to average" is received, the orders cross and create order crossing 526. According to the BBO timeline 502, the auction price 530 is 10.5 at a volume of 60.At time 518, auction price 530 changes to 10.6 and at time 516 auction price 530 changes to 10.7. because BBO bandwidth changes, market data on the reference market may be manipulated during auction invocation phase 522, which affects bid / market / offer prices for peg orders in the auction. In this example, the trading would be done at order uncrossing 528, with a trading of 60 fractions of 10.7. Embodiments of the present disclosure recognize and contemplate that changes in BBO may produce adverse pricing movements. Orders may be canceled during auction invocation phase 522 as prices change, adversely affecting other members of the auction.FIG. 6 illustrates a time-series diagram 600 containing only peg orders, according to an embodiment of the present disclosure. The actions in time-series diagram 600 may be performed by a processor implementing matching engine 104, as shown in system 100 of FIG. 1. As compared to the time-series diagram 600 of FIG. 5, the auction price 602 is determined at the time of opening the auction and fixed throughout the auctionThe time-series diagram 600 includes a BBO timeline 502 and an auction timeline 504. Orders may be placed during timelines 502 and 504, and market data may change. The time-series graph 600 represents the price in the vertical direction and the time in the horizontal direction.The BBO timeline 502 includes a BBO band that uses market data. The BBO band has a bid price 512 and an offer price 514. In this example, the bid price 512 is 10 at time T 0 and the offer price 514 is 11, and the bid price changes to 11.2 at time 518 and the offer price changes to 10.2 at time 516.Auction timeline 504 includes an auction phase 520, an auction call phase 522, and an uncross phase 524. The pre-auction phase 520 is the time before the auction call phase 522. Auction invocation phase 522 continues until order uncrossing 528. The uncrossing phase 524 occurs after the order uncrossing 528. During these phases, the matching engine consumes trading-member order messages and the BBO pricing band feed, as shown in BBO timeline 502 and auction timeline 504. The matching engine uses the pricing process to set an auction price 602. The matching engine then processes an auction, thereby publishing the price generated and allowing other order messages to be submitted, referred to as auction call phase 522. The invocation phase 522 is the period of time that the auction publishes the price and volume that best meet the auction process. At the end of the calling phase, auction at order uncrossing 528 will "decross" and create trades based on prioritization logic in the pricing process of uncrossing phase 524.In FIG. 6, during the pre-auction phase 520, an order that orients at the mean is entered from "Buy 50 to Mean.". Auction price 602 and volume are both zero at this time. When a sales order from "sell 60 to average" is received, the orders cross to generate order crossing 526. According to the BBO timeline 502, the auction price 602 is 10.5 with a volume of 60.At times 518 and 516, auction price 602 remains fixed at 10.5 even though the BBO changes. In this example, the trading business would take place at order uncrossing 528, where a trading business takes place at 60 levels of 10.5. Here, changes in the BBO band during the calling phase do not affect the auction price 602, which prevents opportunities to manipulate the BBO price band. In an exemplary embodiment, the auction is announced when auction price 602 is outside the BBO at order uncrossing 528. Orders cannot be canceled during the calling phase.FIG. 7 illustrates a time-series diagram 700 with peg and limit orders. The actions in time-series diagram 700 may be performed by a processor implementing matching engine 104, as shown in system 100 of FIG. 1.The time-series diagram 700 includes a BBO timeline 502 and an auction timeline 504. Orders may be placed during timelines 502 and 504, and market data may change. The time-series diagram 700 represents the price in the vertical direction and the time in the horizontal direction.The BBO timeline 502 includes a BBO band that uses market data. The BBO band has a bid price 512 and an offer price 514. In this example, the bid price 512 is 10 at time T 0 and the offer price 514 is 11, and the bid price changes to 11.2 at time 518 and the offer price changes to 10.2 at time 516.Auction timeline 504 includes an auction phase 520, an auction call phase 522, and an uncross phase 524. The pre-auction phase 520 is the time before the auction call phase 522. Auction invocation phase 522 continues until order uncrossing 528. The uncrossing phase 524 occurs after the order uncrossing 528. During these phases, the matching engine consumes trading-member order messages and the BBO pricing band feed, as shown in BBO timeline 502 and auction timeline 504. The matching engine uses the pricing process to set an auction price 702. The matching engine then processes an auction, thereby publishing the price generated and allowing other order messages to be submitted, referred to as auction call phase 522. The invocation phase 522 is the period of time that the auction publishes the price and volume that best meet the auction process. At the end of the calling phase, auction at order uncrossing 528 will "decross" and create trades based on prioritization logic in the pricing process of uncrossing phase 524.In FIG. 7, during the pre-auction phase 520, an order that orients at the mean is entered from "Buy 52 to Mean.". Auction price 702 and volume are both zero at this time. When a sales order is received from "sell 45 to limit=10", the orders cross to create order crossing 526. According to the BBO timeline 502, the auction price 702 is 10.25 at a volume of 45.At time 518, auction price 702 changes to 10.3 and at time 516 auction price 702 changes to 10.35. In this example, the trading business would take place at order uncrossing 528, with a trading business taking place at 45 levels of 10.35. Embodiments of the present disclosure recognize and contemplate that changes in BBO may produce adverse pricing movements. Orders may be canceled during auction invocation phase 522 as prices change, adversely affecting other members of the auction.FIG. 8 illustrates a time-series diagram 800 with peg and limit orders according to an embodiment of the present disclosure. The actions in time-series diagram 800 may be performed by a processor implementing matching engine 104, as shown in system 100 of FIG. 1. As compared to the time-series diagram 700 of FIG. 7, the auction price 802 is determined at the time of opening the auction and is fixed throughout the auctionThe time-series diagram 800 includes a BBO timeline 502 and an auction timeline 504. Orders may be placed during time series 502 and 504, and market data may change. The time-series diagram 800 represents the price in the vertical direction and the time in the horizontal direction.The BBO timeline 502 includes a BBO band that uses market data. The BBO band has a bid price 512 and an offer price 514. In this example, the bid price 512 is 10 at time T 0 and the offer price 514 is 11, and the bid price changes to 11.2 at time 518 and the offer price changes to 10.2 at time 516.Auction timeline 504 includes an auction phase 520, an auction call phase 522, and an uncross phase 524. The pre-auction phase 520 is the time before the auction call phase 522. Auction invocation phase 522 continues until order uncrossing 528. The uncrossing phase 524 occurs after the order uncrossing 528. During these phases, the matching engine consumes trading-member order messages and the BBO pricing band feed, as shown in BBO timeline 502 and auction timeline 504. The matching engine uses the pricing process to set an auction price 702. The matching engine then processes an auction, thereby publishing the price generated and allowing other order messages to be submitted, referred to as auction call phase 522. The invocation phase 522 is the period of time that the auction publishes the price and volume that best meet the auction process. At the end of the calling phase, auction at order uncrossing 528 will "decross" and create trades based on prioritization logic in the pricing process of uncrossing phase 524.In FIG. 8, during the pre-auction phase 520, an order that orients at the mean is entered from "Buy 52 to Mean.". Auction price 802 and volume are both zero at this time. When a sales order is received from "sell 45 to limit=10", the orders cross to create order crossing 526. According to the BBO timeline 502, the auction price 802 is 10.25 at a volume of 45.At times 518 and 516, auction price 802 remains fixed to 10.25 even though the BBO changes. In this example, the trading business would take place at order uncrossing 528, where a trading business takes place at 60 levels of 10.5. Here, changes in the BBO band during the calling phase do not affect auction price 802, which prevents opportunities to manipulate the BBO price band. In an exemplary embodiment, the auction is announced when auction price 802 is outside the BBO at order uncrossing 528. Orders cannot be canceled during the calling phase.FIG. 9 illustrates a time-series diagram 900 with BBO manipulation in pricing. The actions in time-series diagram 900 may be performed by a processor implementing matching engine 104, as shown in system 100 of FIG. 1.The time-series diagram 900 includes a BBO timeline 502 and an auction timeline 504. Orders may be placed during timelines 502 and 504, and market data may change. The time-series diagram 900 represents the price in the vertical direction and the time in the horizontal direction.The BBO timeline 502 includes a BBO band that uses market data. The BBO band has a bid price 512 and an offer price 514. In this example, the bid price 512 is 10 at time T 0 and the offer price 514 is 11, and the bid price changes to 11.2 at time 518 and the offer price changes to 10.2 at time 516.Auction timeline 504 includes an auction phase 520, an auction call phase 522, and an uncross phase 524. The pre-auction phase 520 is the time before the auction call phase 522. Auction invocation phase 522 continues until order uncrossing 528. The uncrossing phase 524 occurs after the order uncrossing 528. During these phases, the matching engine consumes trading-member order messages and the BBO pricing band feed, as shown in BBO timeline 502 and auction timeline 504. The matching engine uses the pricing process to set an auction price 902. The matching engine then processes an auction, thereby publishing the price generated and allowing other order messages to be submitted, referred to as auction call phase 522. The invocation phase 522 is the period of time that the auction publishes the price and volume that best meet the auction process. At the end of the calling phase, auction at order uncrossing 528 will "decross" and create trades based on prioritization logic in the pricing process of uncrossing phase 524.In Figure 9, during the pre-auction phase 520, an order that orients at the average is entered from "sell 75 to average.". Auction price 902 and volume are both zero at this time. When a purchase order of "Buy 65 at Limit = 10.5" is received, the orders cross to generate order crossing 526. In this example, at time 904 occurring during order crossing 526, a BBO manipulation occurs where the purchase price is 10.8 (decreased from 11) for a short period of time. This time period could be, for example, less than 10 ms. According to the BBO timeline 502, the auction price 902 is 10.45 at a volume of 65, The auction price 902 would have been 10.5, as there would not be the temporary price manipulation at time 904.At times 518 and 516, auction price 902 remains fixed at 10.45 even though the BBO changes. In this example, the trading business would take place at order uncrossing 528, where a trading business takes place at 65 levels of 10.45. Here, changes in the BBO band during the calling phase do not affect the auction price 902, which prevents opportunities to manipulate the BBO price band. In an exemplary embodiment, the auction is announced when auction price 902 is outside the BBO at order uncrossing 528. Orders cannot be canceled during the calling phase.FIG. 10 illustrates a time-series diagram 1000 with rear-looking price stabilization according to an embodiment of the present disclosure. The actions in time-series diagram 1000 may be performed by a processor implementing matching engine 104, as shown in system 100 of FIG. 1. As compared to time series diagram 900 of FIG. 9, time series diagram 1000 does not allow price manipulation at the beginning of an auction.The time-series diagram 1000 includes a BBO timeline 502 and an auction timeline 504. Orders may be placed during timelines 502 and 504, and market data may change. The time-series diagram 1000 represents the price in the vertical direction and the time in the horizontal direction.The BBO timeline 502 includes a BBO band that uses market data. The BBO band has a bid price 512 and an offer price 514. In this example, the bid price 512 is 10 at time T 0 and the offer price 514 is 11, and the bid price changes to 11.2 at time 518 and the offer price changes to 10.2 at time 516.Auction timeline 504 includes an auction phase 520, an auction call phase 522, and an uncross phase 524. The pre-auction phase 520 is the time before the auction call phase 522. Auction invocation phase 522 continues until order uncrossing 528. The uncrossing phase 524 occurs after the order uncrossing 528. During these phases, the matching engine consumes trading-member order messages and the BBO pricing band feed, as shown in BBO timeline 502 and auction timeline 504. The matching engine uses the pricing process to set an auction price 902. The matching engine then processes an auction, thereby publishing the price generated and allowing other order messages to be submitted, referred to as auction call phase 522. The invocation phase 522 is the period of time that the auction publishes the price and volume that best meet the auction process. At the end of the calling phase, auction at order uncrossing 528 will "decross" and create trades based on prioritization logic in the pricing process of uncrossing phase 524.In Figure 10, during the pre-auction phase 520, an order that orients at the average is entered from "sell 75 to average.". Auction price 1002 and volume are both zero at this time. When a purchase order of "Buy 65 to Limit = 10.5" is received, the orders cross to generate order crossing 526. At time 1004 occurring during order crossing 526, there is a BBO manipulation where the purchase price is 10.8 (decreased from 11) for a short period of time. This time period can be, for example, less than 10 ms. The matching engine looks back at the BBO band to determine if any changes have occurred within a threshold time period prior to order crossing 526. Because in the first example there was a BBO manipulation at 1004 that occurred within the review period, auction is not initiated. Instead, the matching engine waits until the threshold period has elapsed without BBO change. In this example, auction begins at order crossing 1010 when conditions without pricing are met. As a result of the review, the auction price 1001 is 10.5.At times 518 and 516, auction price 1002 remains fixed at 10.5 even though the BBO changes. In this example, the trading business would take place at order uncrossing 528, where a trading business takes place at 65 levels of 10.5. Here, changes in the BBO band during the calling phase do not affect the auction price 1002, which prevents further opportunities for manipulation of the BBO price band. In an exemplary embodiment, the auction is announced when auction price 1002 is outside the BBO at order uncrossing 528. Orders cannot be canceled during the calling phase.FIG. 11 illustrates a time-series diagram 1100 with BBO latency in pricing. The actions in the time-series diagram 1100 may be performed by a processor implementing the matching engine 104, as shown in the system 100 of FIG. 1.The time-series diagram 1100 includes a BBO timeline 502 and an auction timeline 504. Orders may be placed during timelines 502 and 504, and market data may change. The time-series diagram 1100 represents the price in the vertical direction and the time in the horizontal direction.The BBO timeline 502 includes a BBO band that uses market data. The BBO band has a bid price 512 and an offer price 514. In this example, the bid price 512 is 10 at time T 0 and the offer price 514 is 10.8, the offer price 514 changes to 11, the offer price 514 changes to 11.2 at time 518, and the bid price 512 changes to 10.2 at time 516.Auction timeline 504 includes an auction phase 520, an auction call phase 522, and an uncross phase 524. The pre-auction phase 520 is the time before the auction call phase 522. Auction invocation phase 522 continues until order uncrossing 528. The uncrossing phase 524 occurs after the order uncrossing 528. During these phases, the matching engine consumes trading-member order messages and the BBO pricing band feed, as shown in BBO timeline 502 and auction timeline 504. The matching engine uses the pricing process to set an auction price 902. The matching engine then processes an auction, thereby publishing the price generated and allowing other order messages to be submitted, referred to as auction call phase 522. The invocation phase 522 is the period of time that the auction publishes the price and volume that best meet the auction process. At the end of the calling phase, auction at order uncrossing 528 will "decross" and create trades based on prioritization logic in the pricing process of uncrossing phase 524.In Figure 11, during the pre-auction phase 520, an order that orients at the average is entered from "sell 75 to average.". Auction price 1102 and volume are both zero at this time. When a purchase order of "Buy 65 to Limit = 10.5" is received, the orders cross to generate order crossing 526. At time 1104, which is prior to order crossing 526, a price change for offer price 514 from 10.8 to 11 BBO feeds from reference markets to the auction system may have an associated latency. This provides an opportunity for more advanced technology members to take advantage of latency. Here, at 1104, the buyer sees an increase in the offer price on the reference market and issues a purchase order before the auction receives the price update at 1106. As a result, auction is opened due to BBO latency at a time and price that are not representative of what the order that is oriented at the average should be. For example, order crossing 526 occurs when the auction system considers the average to be 10.45 while the average of the BBO is 10.5.At times 518 and 516, auction price 1002 remains fixed at 10.45 even though the BBO changes. In this example, the trading business would take place at order uncrossing 528, where a trading business takes place at 65 levels of 10.45. Here, changes in the BBO band during the calling phase do not affect the auction price 1102, which prevents further opportunities for manipulation of the BBO price band. In an exemplary embodiment, the auction is announced when auction price 1102 is outside the BBO at order uncrossing 528. Orders cannot be canceled during the calling phase.FIG. 12 illustrates a time-series diagram 1200 with price stabilization preview, according to an embodiment of the present disclosure. The actions in time-series diagram 1200 may be performed by a processor implementing matching engine 104, as shown in system 100 of FIG. 1. As compared to time-series diagram 1100 in FIG. 11, time-series diagram 1200 does not allow price manipulation due to latency.The time-series diagram 1100 includes a BBO timeline 502 and an auction timeline 504. Orders may be placed during timelines 502 and 504, and market data may change. The time-series diagram 1100 represents the price in the vertical direction and the time in the horizontal direction.The BBO timeline 502 includes a BBO band that uses market data. The BBO band has a bid price 512 and an offer price 514. In this example, the bid price 512 is 10 at time T 0 and the offer price 514 is 10.8, the offer price 514 changes to 11, the offer price 514 changes to 11.2 at time 518, and the bid price 512 changes to 10.2 at time 516.Auction timeline 504 includes an auction phase 520, an auction call phase 522, and an uncross phase 524. The pre-auction phase 520 is the time before the auction call phase 522. Auction invocation phase 522 continues until order uncrossing 528. The uncrossing phase 524 occurs after the order uncrossing 528. During these phases, the matching engine consumes trading-member order messages and the BBO pricing band feed, as shown in BBO timeline 502 and auction timeline 504. The matching engine uses the pricing process to set an auction price 902. The matching engine then processes an auction, thereby publishing the price generated and allowing other order messages to be submitted, referred to as auction call phase 522. The invocation phase 522 is the period of time that the auction publishes the price and volume that best meet the auction process. At the end of the calling phase, auction at order uncrossing 528 will "decross" and create trades based on prioritization logic in the pricing process of uncrossing phase 524.In Figure 12, during the pre-auction phase 520, an order that orients at the average is entered from "sell 75 to average.". Auction price 1102 and volume are both zero at this time. When a purchase order of "Buy 65 to Limit = 10.5" is received, the orders cross to generate order crossing 526. At time 1104, which is prior to order crossing 526, a price change from 10.8 to 11 for offer price 514 occurs. BBO feeds from reference markets to the auction system may have linked latency. This provides an opportunity for more advanced technology members to take advantage of latency. Here, at 1204, the buyer sees an increase in the offer price on the reference market and issues a purchase order before the auction receives the price update at 1206. In this embodiment, auction does not begin when the BBO band shifts within a fixed time period after order crossing 526. That is, the matching engine will not set the auction price 1202 until the set time period 1208 has elapsed after order crossing 526 without movement of the prices 512 and 514 of the BBO. At time 1210, auction may begin once the set time period 1208 has elapsed without movement of the auction price 1202 set to 10.5.At times 518 and 516, auction price 1002 remains fixed at 10.5 even though the BBO changes. In this example, the trading business would take place at order uncrossing 528, where a trading business takes place at 65 levels of 10.5. Here, changes in the BBO band during the calling phase do not affect the auction price 1102, which prevents further opportunities for manipulation of the BBO price band. In an exemplary embodiment, the auction is announced when auction price 1102 is outside the BBO at order uncrossing 528. Orders cannot be canceled during the calling phase.FIG. 13 illustrates a time-series diagram 1300 with preview and preview periods, according to an embodiment of the present disclosure. The actions in time-series diagram 1300 may be performed by a processor implementing matching engine 104, as shown in system 100 of FIG. 1.The time-series diagram 1300 includes a BBO timeline 502 and an auction timeline 504. Orders may be placed during timelines 502 and 504, and market data may change. The time-series diagram 1300 represents the price in the vertical direction and the time in the horizontal direction.The BBO timeline 502 includes a BBO band that uses market data. The BBO band has a bid price 512 and an offer price 514. In this example, the bid price 512 is 10 at time T 0 and the offer price 514 is 10.8, at time 518 the offer price 514 changes to 11.2, and at time 516 the bid price 512 changes to 10.2.Auction timeline 504 includes an auction phase 520, an auction call phase 522, and an uncross phase 524. The pre-auction phase 520 is the time before the auction call phase 522. Auction invocation phase 522 continues until order uncrossing 528. The uncrossing phase 524 occurs after the order uncrossing 528. During these phases, the matching engine consumes trading-member order messages and the BBO pricing band feed, as shown in BBO timeline 502 and auction timeline 504. The matching engine uses the pricing process to set 1302 an auction price. The matching engine then processes an auction, thereby publishing the price generated and allowing other order messages to be submitted, referred to as an auction call phase 522. The invocation phase 522 is the period of time that the auction publishes the price and volume that best meet the auction process. At the end of the calling phase, auction at order uncrossing 528 will "decross" and create trades based on prioritization logic in the pricing process of uncrossing phase 524.In Figure 13, during the pre-auction phase 520, an order that orients at the average is entered from "sell 75 to average.". Auction price 1302 and volume are both zero at this time. When a purchase order of "Buy 65 to Limit = 10.5" is received, the orders cross to generate order crossing 526. In this embodiment, auction does not begin when the BBO band shifts within a fixed time period before or after the order crossing 526. That is, the matching engine will not set the auction price 1302 until a set time period 1304 before and a set time period 1306 have elapsed after an order crossing 526 without the prices 512 and 514 of the BBO moving. At time 1308, auction may begin with auction price 1302 set to 10.5.At times 518 and 516, auction price 1002 remains fixed at 10.5 even though the BBO changes. In this example, the trading business would take place at order uncrossing 528, where a trading business takes place at 65 levels of 10.5. Here, changes in the BBO band during the calling phase do not affect the auction price 1102, which prevents further opportunities for manipulation of the BBO price band. In an exemplary embodiment, the auction is announced when auction price 1302 is outside the BBO at order uncrossing 528. Orders cannot be canceled during the calling phase.In some embodiments, various functions described in this patent document are implemented or supported by a computer program formed of computer readable program code embodied in a computer readable medium. The term "computer readable program code" includes any type of computer code, including source code, object code, and executable code. The term "computer-readable medium" includes any type of medium that can be accessed by a computer, such as read only memory (ROM), random access memory (RAM), a hard disk drive, a compact disk (CD), a digital video disk (DVD), or any other type of memory. A "non-transitory" computer readable medium excludes wired, wireless, optical, or other communication links that carry transitory electrical or other signals. A non-transitory computer readable medium includes media on which data can be permanently stored and media on which data can be stored and later overwritten, such as a rewritable optical disc or an erasable memory device.It may be advantageous to present definitions of particular words and terms used in this patent document. The terms "application" and "program" refer to one or more computer programs, software components, instruction sets, procedures, functions, objects, classes, instances, related data, or portion thereof, that are configured for implementation in suitable computer code (including source code, object code, or executable code). The term "communicating" as well as derivatives thereof encompasses both direct and indirect communication. The terms "include" and "comprise", as well as derivatives thereof, mean inclusion without limitation. The term "or" is inclusive and means "and / or.". The term "associated with", as well as derivatives thereof, may mean: including, within, being included, being connected to, being included, being connected to, coupled to, or being capable of communicating with, cooperating with, interleaving, juxtapositions, being adjacent to, being bound to, or having, having a property of, having a relationship to, or having, or the like. The phrase "at least one of" when used with a list of elements means that different combinations of one or more of the listed elements may be used and only one element in the list may be required. For example, "at least one of A, B and C" includes any of the following combinations: A; B; C; A and B; A and C; B and C; and A and B and C.The description in this patent document should not be understood as meaning that a particular element, step or function is an essential or critical element that must be included within the scope of the claims. Also, none of the claims are intended to be entitled 35 USC §112(f) with respect to any of the appended claims or claim elements, unless the exact words "means for" or "step for" are explicitly used in the respective claim, followed by a partial sentence identifying a function. The use of terms such as (but not limited to) "mechanism", "module", "device", "unit", "component", "element", "member", "device", "machine", "system", "processor", "processing device", or "controller" within a claim is intended to refer to structures known to those skilled in the art and further modified or improved by the features of the claims themselves, and is not intended to be related to 35 USC §112(f).While the present disclosure has described certain embodiments and basically associated methods, modifications and permutations of these embodiments and methods will be apparent to those skilled in the art. Accordingly, the above description of embodiments does not define or limit the present disclosure.
Claims
An apparatus comprising: at least one processing device; and at least one memory storing instructions that, when executed by the at least one processing device, cause the at least one processing device to perform a method for preventing tampering in an electronic trading system, the instructions causing the at least one processing device to: (i) acquire orders relating to an asset from an electronic trading system; (ii) identifying a value for the asset to be used during an intra-pay auction involving the asset, the identified value based on a determined order crossing within the orders, the value being identified and set prior to the intra-pay auction, the value being within a band of the range between best bid and best offer (BBO), and wherein the BBO band is generated using market data received from a real-time BBO feed; (iii) determining whether or not the BBO band has changed within a period of milliseconds after the determined order crossing; (iv) if the BBO band has changed during the time period, repeating steps (i) through (iii); wherein if it is determined that the BBO band has not changed during the time period, the instructions cause the at least one processing device to initiate the Inventory Auction relating to the subject of the asset based on the identified and set value and the determined order crossing; wherein changes to the BBO band during the Inventory Auction have no effect on the identified and set value.The apparatus of claim 1, wherein the instructions further cause the at least one processing device to: determine that the BBO band has not changed within a time period of milliseconds prior to the determined order crossing; wherein the intra-bay auction is initiated based on the determination.The apparatus of claim 2, wherein the intra-bay auction is initiated based on determining that the BBO band has not changed within the millisecond period prior to the determined order crossing.The apparatus of claim 3, wherein the time period of milliseconds before the determined order crossing begins anew when a change in the BBO band is determined.The apparatus of claim 1, wherein the time period of milliseconds after the determined order crossing begins anew when a change in the BBO band is determined.The apparatus of claim 1, wherein the instructions further cause the at least one processing device to: generate trading stores using order messages associated with the Intraday auction based on a prioritization.The apparatus of claim 1, wherein the instructions further cause the at least one processing device to: receive conditional offers for the asset during the intra-pay auction; and merge the conditional offers from different pages.A non-transitory computer readable medium containing instructions that, when executed by at least one processing device, cause the at least one processing device to perform a method for preventing tampering in an electronic trading system, the instructions causing the at least one processing device to: (i) acquire orders relating to an asset from an electronic trading system; (ii) identifying a value for the asset to be used during an intra-pay auction involving the asset, the identified value based on a determined order crossing within the orders, the value being identified and set prior to the intra-pay auction, the value being within a band of the range between best bid and best offer (BBO), and wherein the BBO band is generated using market data received from a real-time BBO feed; (iii) determining whether or not the BBO band has changed within a period of milliseconds after the determined order crossing; (iv) if the BBO band has changed during the time period, repeating steps (i) through (iii); wherein if it is determined that the BBO band has not changed during the time period, the instructions cause the at least one processing device to initiate the Inventory Auction relating to the subject of the asset based on the identified and set value and the determined order crossing; wherein changes to the BBO band during the Inventory Auction have no effect on the identified and set value.The non-transitory computer readable medium of claim 8, wherein the instructions further cause the at least one processing device to: determine that the BBO band has not changed within a time period of milliseconds prior to the determined order crossing; wherein the intra-bay auction is initiated based on the determination.The non-transitory computer readable medium of claim 9, wherein the intra-bay auction is initiated based on determining that the BBO band has not changed within the time period of milliseconds prior to the determined order crossing.The non-transitory computer readable medium of claim 10, wherein the time period of milliseconds before the determined order crossing begins anew when a change in the BBO band is determined.The non-transitory computer readable medium of claim 8, wherein the time period of milliseconds after the determined order crossing begins anew when a change in the BBO band is determined.The non-transitory computer readable medium of claim 8, wherein the instructions further cause the at least one processing device to: generate trading stores using order messages associated with the Intra-Bay Auction based on a prioritization.The non-transitory computer readable medium of claim 1, wherein the instructions further cause the at least one processing device to: receive conditional offers for the asset during the Intra-Pay auction; and merge the conditional offers from different pages.An apparatus comprising: at least one processing device; and at least one memory storing instructions that, when executed by the at least one processing device, cause the at least one processing device to perform a method for preventing tampering in an electronic trading system, the instructions causing the at least one processing device to: (i) acquire orders relating to an asset from an electronic trading system; (ii) identifying a value for the asset to be used during an intra-pay auction involving the asset, wherein the identified value is based on a determined order crossing within the orders, wherein the value is identified and set prior to the intra-pay auction, wherein the value is within a band of the range between best bid and best offer (BBO), and wherein the BBO band is based on a real-time BBO feed that receives stock market data from a plurality of reference markets; (iii) determining whether or not the BBO band has changed within a period of milliseconds after the determined order crossing; (iv) if the BBO band has changed during the time period, repeating steps (i) through (iii); wherein if it is determined that the BBO band has not changed during the time period, the instructions cause the at least one processing device to initiate the Inventory Auction relating to the subject of the asset based on the identified and set value and the determined order crossing; wherein changes to the BBO band during the Inventory Auction have no effect on the identified and set value.The apparatus of claim 15, wherein the instructions further cause the at least one processing device to: determine that the BBO band has not changed within a time period of milliseconds prior to the determined order crossing; wherein the intra-bay auction is initiated based on the determination.The apparatus of claim 16, wherein the intra-bay auction is initiated based on determining that the BBO band has not changed within the millisecond period prior to the determined order crossing.The apparatus of claim 17, wherein the time period of milliseconds before the determined order crossing begins anew when a change in the BBO band is determined.The apparatus of claim 15, wherein the time period of milliseconds after the determined order crossing begins anew when a change in the BBO band is determined.The apparatus of claim 15, wherein the instructions further cause the at least one processing device to: generate trading stores using order messages associated with the Intraday auction based on a prioritization.The apparatus of claim 15, wherein the instructions further cause the at least one processing device to receive conditional offers for the asset during the intra-pay auction; and merge the conditional offers from different pages.A non-transitory computer readable medium containing instructions that, when executed by at least one processing device, cause the at least one processing device to perform a method for preventing tampering in an electronic trading system, the instructions causing the at least one processing device to: (i) acquire orders relating to an asset from an electronic trading system; (ii) identifying a value for the asset to be used during an intra-pay auction involving the asset, wherein the identified value is based on a determined order crossing within the orders, wherein the value is identified and set prior to the intra-pay auction, wherein the value is within a band of the range between best bid and best offer (BBO), and wherein the BBO band is based on a real-time BBO feed that receives stock market data from a plurality of reference markets; (iii) determining whether or not the BBO band has changed within a period of milliseconds after the determined order crossing; (iv) if the BBO band has changed during the time period, repeating steps (i) through (iii); wherein if it is determined that the BBO band has not changed during the time period, the instructions cause the at least one processing device to initiate the Inventory Auction relating to the subject of the asset based on the identified and set value and the determined order crossing; wherein changes to the BBO band during the Inventory Auction have no effect on the identified and set value.The non-transitory computer readable medium of claim 22, wherein the instructions further cause the at least one processing device to: determine that the BBO band has not changed within a time period of milliseconds prior to the determined order crossing; wherein the intraday auction is initiated based on the determination.The non-transitory computer readable medium of claim 23, wherein the intra-bay auction is initiated based on determining that the BBO band has not changed within the time period of milliseconds prior to the determined order crossing.The non-transitory computer readable medium of claim 24, wherein the time period of milliseconds before the determined order crossing begins anew when a change in the BBO band is determined.The non-transitory computer readable medium of claim 22, wherein the time period of milliseconds after the determined order crossing begins anew when a change in the BBO band is determined.The non-transitory computer readable medium of claim 22, wherein the instructions further cause the at least one processing device to: generate trading stores using order messages associated with the Intra-Bay Auction based on a prioritization.The non-transitory computer readable medium of claim 22, wherein the instructions further cause the at least one processing device to: receive conditional offers for the asset during the Intra-Pay auction; and merge the conditional offers from different pages.