WO2001055938A2 - Market engines having extendable component architecture - Google Patents
Market engines having extendable component architecture Download PDFInfo
- Publication number
- WO2001055938A2 WO2001055938A2 PCT/US2001/002637 US0102637W WO0155938A2 WO 2001055938 A2 WO2001055938 A2 WO 2001055938A2 US 0102637 W US0102637 W US 0102637W WO 0155938 A2 WO0155938 A2 WO 0155938A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- component
- components
- crossing
- transactions
- transaction
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Definitions
- the present invention relates to the field of electronic commerce (e- commerce) and particularly to electronic systems for supervising transactions among multiple transaction initiators and multiple transaction processors and for internal and external crossing of orders in capital and other e-commerce markets.
- ATS Alternative trading systems
- Instinet Alternative trading systems
- program trading has been within the domain of large companies and expert traders because of the significant technical resources that are required.
- a basic facility for program trading involves a powerful store, expensive market connections, software for entering the market data into the store and for analyzing the stored data, and programs with wanted "conditioning" code that queries the available data and determines the appropriate reaction to specified conditions.
- Most retail customers do not have access to even a basic facility and many customers and companies want greater capabilities with more flexibility in reacting to market conditions than is possible with plain market orders and limit orders.
- Alternative trading systems are now regulated in the U. S. by the Securities and Exchange Commission (SEC). Under U.S. regulations, alternative trading systems can choose whether to be treated as "exchanges" or as "broker-dealers". Alternative trading systems registered with the SEC as exchanges have a need to ensure that participants comply with securities laws. Such laws may exempt from exchange regulation internal order management systems and systems that allow customers to trade solely against a dealer's inventory. Alternative trading systems registered with the SEC as broker-dealers may require, for example, regular reports, audit trails of transactions, links with a registered market, public display of quotes and orders while providing fair access to the markets.
- SEC Securities and Exchange Commission
- the present invention is an e-commerce system for electronic transactions using external transaction units for transactions, networks for interconnecting the transaction units with one or more market engines.
- the market engines supervises transactions based on information gathered from the e-commerce system.
- the market engine includes a plurality of components for processing transactions including transaction unit interface components for interfacing with transaction units; execution components for executing transactions and a connection element connecting said components.
- Each of the plurality of components includes computers, operating systems executing on the computers and application processes executing on the computers under control of the operating systems.
- the application processes include a function application for executing functions, a communication application for controlling communication among the components, a resource management component for controlling the allocation of processes among the computers.
- the market engine operates using execution components selected from a group that includes, for example, a routing component, a trigger component, a crossing component, a scripting component, a stock component, a bond component, a currency component, an options component, an accounting component, a storage component, and a supervisor component.
- the market engine operates using interface components selected from a group that includes a transaction initiator interface component, a transaction processing interface component and a data access interface component.
- the market engine operates using, at times, auxiliary components such as an accounting component, a storage component, a supervisor component.
- the partitioning of functions in different components is based on different functions can be modified to include many different combinations and other components not specifically identified can be used.
- the market engine operates to supervise transactions and their routing and submission to transaction processors and thus operates to overcome the fragmentation of the e-commerce market represented by many diverse transaction processors.
- the market engine has a close association with a transaction processor for providing "internal" transaction processing in an integrated market engine.
- a market engine integrated with a transaction processor, internal crossings and other internal executions are performed efficiently.
- the integrated market engine does not make decisions in a vacuum without reference to the entire e-commerce system.
- Such external knowledge about the e-commerce system is used to ensure fairness of internal transactions as measured across the entire e-commerce system.
- internal crossings can be determined as fair in relationship to possible external crossings.
- the internal crossings are fair in a manner that is or can be transparent to the external transaction processors. Fairness is promoted when the market engine considers information about internal transactions based upon transactions from at least one external transaction processor.
- FIG. 1 depicts an e-commerce system having a group of market engines for supervising and integrating the operations of multiple transaction units.
- FIG. 2 depicts details of the transaction units of FIG. 1.
- FIG. 3 depicts a typical market engine formed of multiple components of the type typically used in the market engines of the e-commerce system of FIG. 1.
- FIG. 4 depicts an e-commerce system having market engines and external transaction processors.
- FIG. 5 depicts an e-commerce system having market engines located in different groups.
- FIG. 6 depicts an e-commerce system having market engines integrated with legacy systems.
- FIG. 7 depicts the components within a typical market engine.
- FIG. 8 depicts details of a typical component of FIG. 7.
- FIG. 9 depicts details of the interconnection of multiple components of the FIG. 8 type.
- FIG. 10 depicts a logical flow for global order book operations using a subset of the components of FIG. 7.
- FIG. 11 depicts the logical flow for shopping operations using a subset of the components of FIG. 7.
- FIG. 12 depicts the logical flow for virtual ECN operations using a subset of the components of FIG. 7.
- FIG. 13 depicts an example of the logical flow of information from one component to another component.
- FIG. 1 depicts an e-commerce system 2 for performing e-commerce transactions using electronic networks 13.
- e-commerce transactions include, for example, buying, selling, negotiation, crossing, and analysis as related to electronic instruments such as stocks and bonds, foreign currency, commodities, derivatives, books, insurance, real estate, information and any other "widget" or
- the networks 13 include any electronic network such as the Internet, wide area networks (WAN), local area networks (LAN), public switched telephone networks (PSTN), wireless networks and any other type of public or private network and any combination thereof.
- Transactions in the system of FIG. 1 are initiated, in some instances, with transaction initiators in one or more of the transaction units 7, designated as transaction units 7-1, ..., 7-Tr.
- Transactions are processed, in some instances, in transaction processors in one or more of the transaction units 7.
- the transaction initiation and processing is supervised by one or more market engines 9, designated as market engines 9-1, 9-2, ..., 9-Ma.
- one or more of the market engines 9 are capable of initiating and processing transactions internally when one or more initiation and/or processing components are integrated into the one or more market engines 9.
- the market engines 9 respond to initiated transactions and supervise interaction among the transaction units 7 and the different market engines 9 to control the routing of the initiated transactions, the processing of transactions and the coordinating, gathering, storing and distributing of information useful for transaction supervision and processing.
- the market engines 9 are able to access and maintain information about transactions collectively as well as about each of the individual transactions being processed in the market engines 9. Where high reliability in transaction handling is required, the connections among transaction units 7 and market engines 9 are redundant or are otherwise configured to ensure high reliability and high availability.
- connections between transaction units 7 and market engines 9 is generically shown through networks 13 and it is to be understood that such connections in networks 13 can include direct connections between particular transaction units 7 and between particular market engines 9.
- Each of the market engines 9 typically receives information from all, or a significant subset, of the transaction units 7 and the other market engines 9 so that each market engine 9 is able to supervise the routing and control of transactions based upon an overview of the e-commerce system 2.
- the transaction units 7 each represent different transaction initiators, such as brokers and brokers' customers, or different transaction processors, such as exchanges, ATSs and ECNs. As the number of transaction units 7 increases, the greater becomes the fragmentation of the marketplace into different pools ("liquidity pools").
- the e-commerce system 2 overcomes marketplace fragmentation by interconnecting the many different pools of liquidity into a virtual common marketplace.
- the e-commerce system 2 promotes high liquidity by integrating the liquidity pools represented by the different transaction units 7 and the market engines 9.
- the e-commerce system 2 when connected to the world's marketplaces, creates a centralized global order book.
- the e-commerce system 2 when connected to a company's branches, creates a centralized company-wide order book. Such connections reduce overhead by streamlining transaction handling and thereby cut operational and organizational costs.
- the e-commerce system 2 of FIG. 1 is flexible and accommodates a full range of financial transactions, including stocks, bonds, foreign exchange and other commercial "widgets" or "entities”.
- System 2 provides an architecture for robust and high-speed intelligent routing and processing of transactions in a global, 24/7 marketplace with high-reliability and uninterrupted operation.
- Optimal executions are promoted in the e-commerce system 2 in a manner that tends to overcome the sub-optimal executions that are characteristic of fragmented financial markets. Such improvements are beneficial to all companies and customers that participate in the e-commerce system 2.
- the market engines in the FIG. 1 system operating together in a group promote consistently fair executions for customers, thereby meeting the fairness burden for each of the participants, while greatly improving information gathering and dissemination for all.
- one or more of the market engines 9 is typically integrated to include transaction unit (TU) components.
- ATS alternative trading systems
- ECN electronic communication networks
- Many different combinations of components can be integrated into each market engine 9.
- the integrated market engine 9 is particularly useful for companies that wish to internally cross orders of their own customers, that is, match a company-internal buy order with a company- internal sell order of another of the company's customers.
- the company can also act as the principal in any or all transactions.
- the crossing components function for a company regardless of whether or not the company has branches and irrespective of the number of those branches.
- the integrated market engine 9 thus forms a company- wide order book internally for all the branches and potentially externally for all companies connected to the entire system 2.
- the internal crossing component allows a company to maintain internal control over crossing operations while significantly reducing execution costs that are associated with external crossing. These saved costs include (but are not limited to) routing costs, transactional costs, execution costs and commissions along with managerial and other information technology, costs.
- Other benefits of the internal crossing component include access to the other components of the market engine.
- the intelligent routing component of a market engine 9 provides an ability to monitor and access external liquidity pools at other market engines in real-time and with reliable, around-the- clock operation. Such pools can be dynamically added. Although a market engine may be partially impacted by the unavailability of particular pools, a market engine continues to serve and utilize the remaining pools.
- transaction units 7 include, for example, transaction initiators 10, such as brokers 20 and customers 23 (including funds and retail customers), and include transaction processors 12 such as exchanges 24, alternative trading systems (ATSs) 26, data units 28 and electronic communication networks (ECNs) 25.
- transaction initiators 10 such as brokers 20 and customers 23 (including funds and retail customers)
- transaction processors 12 such as exchanges 24, alternative trading systems (ATSs) 26, data units 28 and electronic communication networks (ECNs) 25.
- ATSs alternative trading systems
- ECNs electronic communication networks
- FIG. 3 In FIG. 3, one typical market engine 9 is shown formed of multiple components 71, designated as components 71-1, ..., 71-Co interconnected internally by a connection element 67.
- Each of the components 71 of FIG. 3 includes a computer that can range in size from small computers, such as standard personal computers (PCs), to large-scale computers, such as mainframes.
- PCs personal computers
- Single and multi-processor computers and single and multi-computer configurations can be employed for each of the one or more components 71.
- two or more components 71 can reside on a single hardware platform formed of one or more computers. Such two or more components on a single hardware platform are considered as logical components that are the equivalent of the physical components that exist when each component resides on a separate hardware platform.
- One or more of the multiple components 71-1, ..., 71-CP connects to the network 13 of FIG. 1 whereby market engine 9 connects to the transaction units 7 and to other market engines as indicated in FIG. 1.
- FIG. 4 depicts an e-commerce system 2 of the FIG. 1 type for performing e-commerce transactions connected by electronic networks 13. Transactions in the system of FIG.4 are initiated, in some instances, with external transaction initiators 10' in a typical transaction unit, designated as transaction initiators lO'-l, ..., lO'-TI.
- Transactions are processed, in some instances, in external transaction processors 12.
- the transaction initiation and processing is supervised by one or more market engines 9, designated as market engines 9-1, ..., 9E.
- market engines 9 are capable of initiating and processing transactions internally and are then characterized as an integrated market engine.
- the transaction initiators 10 are, for example, users that include computers, terminals and other equipment and software useful for persons (individuals or companies) to electronically connect to an e-commerce system.
- the transaction initiators may be brokers. Brokers include computers, terminals and other equipment and software useful for persons
- the transaction initiators in FIG.4 can be of the user-only type of transaction initiator, can be of the broker-user type of transaction initiator or can be of any other type. Any number of such transaction initiators 10 of different types can be used in an electronic system of FIG.4 for initiating electronic transactions.
- hierarchies of brokers, funds, institutions and users are included such as broker-broker, user-user, broker-broker-user-user.
- a hierarchy in any depth or configuration can exist.
- the market engines 9 respond to initiated transactions and supervise interaction among the transaction initiators 10, the transaction processors 12 and the different market engines 9 to control the routing of the initiated transactions, the processing of transactions and the coordinating, gathering, storing and distributing of information useful for transaction supervision and processing.
- historical data is used in this routing process to take advantage of statistical patterns in the processing performed in external transaction processors. Such historical data includes execution price and depth of the market among others things.
- the market engines 9 are able to access and maintain information about transactions collectively as well as about each of the individual transactions being processed in the market engines 9. Where high reliability in transaction handling is required, the connections among transaction units 7 and market engines 9 are redundant or are otherwise configured to ensure high reliability and high availability.
- connections among the transaction initiators 10, the transaction processors 12 and the different market engines is generically shown through networks 13, but it is to be understood that such connections in networks 13 can include direct connections among the transaction initiators 10, the transaction processors 12 and the different market engines 9.
- Each of the market engines 9 typically receives information from all, or a significant subset, of the transaction initiators 10 and the other market engines 9 so that each market engine 9 is able to supervise the routing and control of transactions based upon an overview of the e-commerce system 2.
- the transaction processors 12 include one or more conventional
- the exchanges include, for example, conventional exchanges 24-1, ..., 24-EX, which are, for example, the New York Stock Exchange (NYSE), Chicago Mercantile Exchange, National Association of Securities Dealers Automated Quotation System (NASDAQ), and other similar exchanges.
- the transaction processors include the alternative trading systems (ATS) and particularly, ATS 26-1, ..., 26-AT.
- the transaction processors also include electronic communication networks (ECN) including the ECN 25-1, ..., 25-EC. Any number of other transaction processors 27 are possible in the transaction processors 12 of FIG. 4, and these are generically indicated as the other transaction processors 27-1, ..., 27-OT.
- Other transaction processors include Clearing Houses for example.
- Some of the transaction processors 12 in FIG. 4 include data components for receiving or providing data relevant to transactions and these data components are designated as the data components 28-1, ..., 28-DA.
- Such data components typically provide information about one or more of the other transaction processors such as the exchanges 24, ECNs 25 and the ATSs but also can provide any other type of data such as weather data, company earnings, political and economic data and so forth.
- the data components may store data, provide data for quotations and otherwise act in any capacity to serve or receive data of all types.
- the market engines 9 can include a broker for servicing, for example, any of the transaction initiators 10 whereby the broker is "internal" to the market engine.
- the brokers can be fully independent of the market engines.
- any one or more of the transaction processors 12 of FIG. 4 can also be closely associated with a market engine 9 and hence be
- the particular internal or external configuration of the different transaction initiators 10, including brokers or users, and the different transaction processors 12 with a market engine 9 is a matter of design choice. Generally, “internal" components work efficiently together under common control without need for gateways or other protocol converters. Regardless of the configuration, the market engines are connected in common among all of the transaction initiators 10 and the transaction processors 12 that constitute the electronic system 2. By having the common connection of the market engine to the transaction initiators 10 and transaction processors 12, supervision of all similar transactions that are processed in the electronic system 2 is possible. Such supervision can be used to ensure fairness of transactions across the entire commerce system 2. Fairness is promoted when a market engine 9 has access to and considers information based upon transactions from multiple transaction processors.
- FIG. 4 the functional flow of information is shown by broken lines, while physical connections of the transaction initiators 10, market engines 9and transaction processors 12 are generally through direct connections to the network 13 as shown by solid lines.
- a plurality of market engines 9 are distributed in different groups
- the groups 51 including groups 51-1, 51-2, ... 51-3, 51-G and connect through the networks 13 to form an e-commerce system 2.
- the groups 51 are organized on geographical, company, types of instruments processed (such as stocks, bonds, quotes or information) or other logical basis.
- the group 51-1 includes market engines 9 located in Europe.
- Group 51-2 by way of example, includes market engines 9 located in different countries in Asia.
- Group 51-3 for example, includes market engines 9 located in eastern United States and group 51-G, by way of example, includes market engines 9 located in western United States.
- each of the regions is a predominate region for controlling transactions during the principal business hours of that region thereby implementing follow-the-sun operation.
- each market engine 9 within a group includes a component for controlling the group operation.
- the group control is centered, for example, in routing components, one in each market engine, whereby transactions are routed to different market engines in different groups as a function of time or as a function of other parameters.
- Each routing component in each particular market engine includes a communication process that controls the operation of that particular market engine in accordance with operations common to said group.
- the FIG. 5 world-wide e-commerce system 2 has each of the groups 51 representing different constellations of market engines 9 for a single company or a group of companies.
- group 51-1 includes all of the market engines 9 in a company that service one geographic region (for example, Berlin) while group 51-2 includes all of the market engines 9 in the company that service another geographic region (for example, New York).
- a component for controlling the group operation is the routing component.
- FIG. 5 world-wide e-commerce system 2 has each of the groups 51 representing different constellations of market engines
- group 51-1 includes all of the market engines 9 in a company that service a particular type of instrument (for example, stocks) while group 51-2 includes all of the market engines 9 in the company that service another type of instrument (for example, currency).
- components for controlling the group operation include both a routing component and a stock component for group 51-1 and include both a routing component and a currency component for group 51-2.
- the above examples are illustrative and any combination of components can be used to establish the common control functions within a group and within the e-commerce system.
- FIG. 6 a number of local offices 61, including local offices 61-1, ..., 61- Lo, are distributed around the United States or the world.
- Each local office 61 includes customer work stations 63 used by account executives in the local office 61.
- the transactions of each of the customer work stations 63 in a local office are concentrated by a concentrator 64 and then connected over networks 13 to other local offices 61, to the market engine 9 and to a legacy central offices 65.
- Functions that have historically been performed by local offices 61 and legacy central offices 65 may continue for some time to handle the same transactions. Alternatively, those transactions may be directed to the market engine 9 and the one or more components 71-1, ..., 71-Co.
- the e-commerce system of FIG. 6 integrates the legacy operations for one or more existing companies and enables legacy systems to become part of a world wide e-commerce system formed of or controlled by market engines.
- connection element 67 is a logical entity that provides the necessary physical interconnection of each of the components 71.
- the connection element is a local area network, addressable spaces in the storage component 71-13, a point-to-point switch and using any media including wireline, wireless such as infrared and microwave or any other means of transferring data between components. Regardless of the physical implementation of element 67, it functions to connect both homogeneous as well as heterogeneous components with logical consistency in the transfer of data.
- the components 71 include, for example, a routing component 71 - 1 , a trigger component 71 -2, a crossing component 71 -3 , a scripting component 71 -4, a stock component 71 -5 , a bond component 71 -6, a currency component 71-
- the routing component 71-1 functions to route transactions and process information external to market engine 9 through the TP interface component 71-11 of FIG. 5.
- the routing component 71-1 processes routing instructions.
- the routing component 71-1 also potentially receives inputs from or provides outputs to the trigger component 71-2, the stock component 71-5 and similarly other components 71 of FIG. 7.
- the routing component 71-1 is characterized as an execution component in that it controls remote execution.
- the routing component 71-1 because it actually executes trades externally is not merely a component limited to displaying a list of comparable external prices.
- the routing component also uses information about one or more internal orders and tries to find an optimal execution constellation considering both the internal and external information.
- the routing component is particularly suitable for an institution with many trades. With such internal and external consideration of information, better prices for trades are achieved.
- the operation can be limited to aggregation of internal orders, such as is done by Priceline.com for some particular e-commerce items, for example, the routing component greatly enhances the operation by also considering external markets.
- the consideration of the combination internal markets for efficiency and the external markets for fairness and higher liquidity provides substantial benefit both to the market engine owners and to the customers.
- Trigger Component operates to evaluate instructions and data that are useful in setting conditions for routing by the routing component 71-1 or processing by other components 71 of FIG. 7.
- the trigger component 71-2 observes changes in data in the storage component 71-13, or one of the transaction unit interface components (71-10 or 71-11) or any other component, and observes processing of instructions. Any one of the other components 71 can use the trigger component 71-2 to evaluate conditions in the e-commerce system and provide triggering signals upon satisfaction of conditions.
- Crossing Component The crossing component 71-3 functions to internally cross orders available internally to the market engine 9 and hence functions as an internal ECN.
- the market engine 9 when the market engine 9 is in a market engine owned by a single company, the company can cross orders of its own customers, that is, match a buy order from one of the company's customers with a sell order of another of the company's customers.
- a company-wide order book is maintained in the storage component 71-13.
- each company can cross orders of its own customers, that is, match a buy order from one of the company's customers with a sell order of another of the company's customers.
- each company has its company- wide order book maintained in thestorage component 71-13 in a secure manner that is confidential and not available to other companies unless access to other companies has been granted.
- the crossing component 71-3 has customizable parameters that include, for example, crossing triggers, price determination algorithms and crossing behaviors on a per symbol basis or eviction line or increment on a per order basis.
- the crossing component 71-3 is capable of ensuring fair execution with respect to internal as well as external data references.
- the internal crossing by crossing component 71-3 offers a fast, expedient, and cost-effective order execution mechanism, particularly for companies with large trading volumes.
- the internal crossing component 71 -3 by crossing matching orders internally, avoids the typical execution costs associated with crossing in external exchanges.
- the internal crossing component 71 -3 does not suffer from limited liquidity because it is not limited to only the internal volume that is typically only a fraction of the total available volume in any security or other instrument. Since a lack of liquidity frequently results in sub-optimal execution and/or a reduced opportunity for price improvement, the e-commerce system 2 in FIG. 1 and FIG. 4 overcomes these problems by making available both internal and external crossing.
- the benefits of internal crossing is, in some embodiments, conditioned upon being within a threshold of externally available executions as determined, for example, using the stock component 71-5 to search for available external crossings. By use of the combination of the internal crossing with the stock component 71-5, optimal execution is promoted. Furthermore, exact cost calculations can be applied before routing a trade, taking such things as routing costs, execution costs, order flow into account.
- the stock component 71-5 redirects the order using the routing component 71 - 1 to a more nearly optimal external destination for crossing.
- the stock component also provides an opportunity to execute market orders on a crossing network by treating them as limit orders with the limit constantly adjusted to the best external quote or by immediately executing them at the currently best price internally or externally.
- the customization features of the internal crossing component 71-3 include, for example, control over how orders are crossed, how the crossing price is determined, and the properties of the crossing trigger based on such parameters as time window, volume, number of orders present.
- the market engine owner has control over transactions and can decide how to exercise that control. Optimization is an example of how control can be exercised.
- the market engine owner can cross, for example, to maximize the spread or maximize the volume of orders being executed internally. If internal orders are less expensive to execute, there is an incentive to maximize internal orders.
- internal crossing is about the same cost as external, then a company might choose to cross internally or externally in a manner that optimizes volume. For example, aggressively priced orders might be selected for crossing internally and thereby increase volume relative to what is likely if the orders are placed last in line to execute on an external ECN (using a first-in- first- out algorithm).
- optimization is generally "unfair" to some party.
- Parties in control of the crossing have the ability to define fairness.
- a company owning a market engine with an internal crossing component that is coupled to external information can insure that internal crossings for that company are always made fair relative to crossings on external markets.
- a company is free to set its own policies relative to internal crossings and can make them at least as fair as crossings available on external markets.
- Overtime fairness is promoted even though only some parties benefit in some crossings while other parties benefit in other crossings. The net benefit when averaged over a period of time can be improved even though variances in benefits.
- the companies can share crossing opportunities in a sequential manner. For example, a first company's orders first go to the first company's internal crossing component and then, if not crossed, they go to a shared second crossing component operated together with a second company. If they are not matched in the second crossing component, they go to a third crossing component shared by a still different third group of companies. Every step in the sequence from the first, to the second and to the third crossing components of the first company's order increases the access to more of the other companies' liquidity, but likely reduces the first company's ability to more favorably promote the first companies orders relative to the orders of the second and third group of companies.
- Each company having an internal crossing component can select which external market (or which sequence of external markets) has preference for any order that cannot be crossed internally. Also, the sequencing of orders not crossed internally can be controlled for external submission. The external orders can be rearranged for external placement in a manner that is different than for internal crossing.
- Scripting Component The scripting component 71-4 provides a programmable (scriptable) component for executing trading scripts. Typically, the scripting component 71-4 is implemented with automated trading patterns according to rules chosen by a company from a library of rules. The rules contain simple interfaces to powerful functions. For example, a company can set up a web site with simple pull-down menus that give the retail customer or institutional trader significantly more control over an order than previously possible.
- the scripting component 71-4 serves as a foundation for an alert system that is both portable and highly reactive to arbitrary market conditions and to conditions that arise at any time.
- one implementation involves a subscription component wherein each script subscribes to a subset of the available data feeds and is only awoken upon a change in the subscribed feeds rather than on each event. For example, if a trigger depends on a stock symbol trading at a certain level, it is burdensome for the script to be executed each time the foreign exchange rate fluctuates. Instead, a script is only evaluated once the price of the symbol alters from its previous state.
- scripting component An important feature of the scripting component is ease of cross-product integration. A trading decision can be made with information from multiple sources about multiple financial instruments. This enables a trader to integrate, for example, a covered call with a trailing stop loss into a single script.
- Customers using the scripting component can upload information as simple as parameters or can upload entire programs. Libraries with preestablished scripts can be used or rules can be authored entirely a new. The location of libraries and tool sets for authoring scripts can be placed anywhere in the e-commerce system.
- the stock component 71-5 includes stock algorithms running in the market engine 9 of one or more market engines.
- the stock component 71-5 determines near optimal execution among many of the internal and external liquidity pools which are connected in the e-commerce system 2.
- the stock algorithms are used, for example, in conjunction with an internal crossing component which can be an instance of the crossing component 71 -3 , or which can be a crossing component incorporated directly in the stock component 71-5, to provide pricing references for determining both internal and external crossing potentials.
- the stock algorithms are used standalone to route orders to nearly optimal external execution destinations for remote executions.
- a stock shopping product is used to determine the best combination of publicly-visible orders from open books. More elaborate implementations are possible including finding an optimal execution involving splitting an order, pooling an order with other orders routed by the market engine and using other order scheduling optimization techniques.
- An example algorithm of a stock component involves a multiple- submission technique for examining closed books or reserve orders.
- the technique involves the submission and withdrawal of an order at a number of closed-book markets, in a round-robin fashion.
- the stock component operates quickly and creates an illusion of parallel submission to all destinations. If the order is submitted at a limit that is more desirable than the best quote available from open books, such a round-robin submission can potentially achieve a better execution than any visible quote.
- the bond component 71-6 operates to negotiate trades of corporate and municipal bonds electronically.
- the bond component 71-6 connects to broker/dealers, fund managers, banks and other locations in the e- commerce system 2 of FIG. 1.
- the bond component 71-6 matches to portfolios presented to the bond component and the portfolio can be within the same or a different company.
- the bond component periodically and continuously analyzes bonds in available portfolios and attempts to satisfy as many buy and sell bond orders as possible.
- the bond component operates to minimize the total transaction costs (which typically result from large spreads).
- the bond component need not show a preference for any individual investor and can provide fairness across the e-commerce system.
- the bond component 71-6 is, in one embodiment, targeted to the municipal and corporate bond markets.
- the bond component 71-6 uses "bartering" to reduce the spread on bonds and hence is a promoter of bond transactions.
- the bond component 71-6 operates, by way of example, with a first user posting an available bond profile including a sell list, having the bonds in the portfolio that the user is willing to sell, and a buy list, having the bonds that the first user is interested in buying. If at any point, there is another user that wants exactly the opposite transaction (buy and sell interests reversed), the users exchange the bonds directly, eliminating any cash step, where possible.
- Such an atomic barter transaction saves both parties the spread on two conventional transactions.
- the exchange rate can be determined based on the price relative to treasuries if the bonds in question have the same maturity. If the users involved in the transaction are willing to exchange bonds of mismatching maturities, then a common duration measure is applied.
- the bond component 71-6 also provides a source to purchase or sell municipal and corporate bonds for cash and therefore provides the users with a source of liquidity.
- bond component 71-6 Due to potentially very limited liquidity in any specific bond, it is quite often impossible to find a transaction with exactly opposite interests. In such cases, bond component 71-6 still is frequently able to assemble a chain of transactions involving more than two users of the e-commerce system.
- user A is willing to purchase some instrument that C can trade, but A only offers something that B wants.
- C may want some instrument that A has, but only offers an instrument that wants.
- B By adding B as an intermediary, the bond component 71-6 is able to complete a transaction between A and C. It is also possible with the bond component 71-6 to pool and split individual offers to increase the probability of a match. In that case, a chain becomes more generally a graph.
- smaller quantities of an instrument are available from users A and B and are bundled together to match a larger quantity of the instrument wanted by C.
- every party participating in a barter chain may be required to confirm the transaction.
- the bond component 71-6 operates to acquire and supervise the required confirmations. Under appropriate jurisdictions such as a rule change.
- the market engine operating with the bond component 71-6 continuously looks for barter chains. At any given moment, a user of the bond component 71-6 can have a choice of several potential barter transactions. The greater the number of users of the bond component 71 -6, the greater the liquidity of the municipal and corporate bond markets.
- the currency component 71-7 operates to buy and sell different currencies.
- Currency is another form of an instrument and operates in many ways like the buying and selling of any other instrument.
- the currency component can operate to find the most favorable exchange rate by connecting to various external currency exchanges or can be connected to the currency exchange desk of a major institution.
- Options Component operates to buy and sell different options. Options are another form of an instrument and operate in many ways like the buying and selling of any other instrument.
- the accounting component 71-9 operates to perform the accounting functions of the market engine 9 and includes keeping track of transactions, reporting and billing among other accounting functions, usually be integrating to the backend system of the operator.
- the Tl interface component 71-10 includes gateways and other elements to provide protocol and other conversions that are necessary between the market engine 9 and the transaction initiators 10. Typical interfaces for transaction initiators 10 are FIX and FLXML. TP Interface Component. The TP interface component 71-11 includes gateways and other elements to provide protocol and other conversions that are necessary between the market engine 9 and the transaction processors 12. Typical interfaces for transaction processors 12 are FIX and FIXML. Many other proprietary or non-proprietary protocols are possible. For example, the island ECN uses the proprietary OUCH protocol.
- the DA interface component 71-12 includes gateways and other elements to provide protocol and other conversions that are necessary between the market engine 9 and external data sources.
- the storage component 71-13 provides storage for the market engine 9.
- the storage component 71-13 can be partitioned into an instruction store for storage of instructions and a data store for storage of data or can be a single common storage component.
- the storage component can be used to offer a global view of all trades of an organization or parts of the e-course system 2.
- the supervisor component 71-14 functions to operate when any of the components 71 of FIG. 7 are operating in an abnormal manner or is experiencing other problems.
- the components 71-1, ...71-14 are merely examples and any number of other components 71-15, ..., 71-Co can be included in the FIG. 7 market engine.
- FIG. 8 a typical one of the components 71 of FIG. 7 is shown.
- the component 71 includes one or more computers 43-1, ..., 43-Ha, each computer having an operating system (OS) 42-1, ..., 42-Os, respectively.
- Application processes 41 are distributed to execute on the computers and operating systems 43 and 42 under control of a resource management process 46 for load balancing, fault tolerant operation and other management processes.
- Communications from and to the component 71 of FIG. 8 and the other components in market engine 9 of FIG. 7 are under control of the communication process 45.
- the particular function of the component 71 of FIG. 8 (for example, the routing function of routing component 71-1 of FIG. 7 or any of the functions of the other components 71-2, ..., 71-Co of FIG. 7) are under control of the function processes 44 of FIG. 8.
- the communication processes 45 control the communication with other components of FIG. 7 over the connection element 67 and control the communication external the components of FIG. 7 over the connection element 68.
- the components 71-1, ..., 71-Co are representative of the components 71 of FIG. 7 and FIG. 8 interconnected by the connection element 67.
- the communication processes 45 control the communication among the components of FIG. 8 over the connection element 67 and control the communication external the components of FIG. 7 over the connection element 68.
- the communication processes are ones that are suitable for the connection element 67. Since the connection element 67 is a logical entity that provides the necessary physical interconnection of each of the components 71, the actual processes included in the communication processes 45 are selected to satisfy the types of physical connections implemented.
- the connection element is a local area network, for example, communication processes 45 provide for IP address assignment and addressing as a means to control communication among the components 71.
- communication processes 45 provide for point-to-point switching connections for transferring data between components.
- the communication process 45 have a logically consistent interface between components 71 that permits both homogeneous (for example, using the same hardware computer and operating system) as well as heterogeneous (for example, using different hardware computers and operating systems) components to transfer data.
- the communication process 45 controls communications over the communication element 67. Depending on the implementation of the communication element 67, the communication process 45 uses different mechanisms to communicate with the communication processes 45 of other components. In one particular embodiment, the communication process 45 uses object serialization to transmit message (or other) objects from one communication process 45 to another. This operation is done by initiating a network connection
- connection element for example a TCP/IP connection
- serializing the message object into a datastream which is usually buffered
- the data stream is then transmitted by the transmitting communication process 45 over the TCP/IP connection unity 67 is received by the receiving communication process 45 and is de-serialized at the receiving communication process 45.
- one embodiment sends metadata of a buy/sell order from the Tl interface component 71-10 to the storage component 71-13 and subsequently to the crossing component 71-3.
- the Java Remote Method Invocation (RMI) interface by Sun Microsystems can be used to implement such object serialization communication methods.
- RMI Java Remote Method Invocation
- higher-level (fast) messaging systems are used to communicate between components. Examples include TIBCO or NEON messaging layers which are again able to completely abstract the communication layer from the underlying hardware components and thus effectively act as middleware.
- multiple components run on the same hardware and operating system node using the same memory.
- the same communication mechanisms can be used as described above. Additionally, however, specialized inter-process communication schemes are possible for improved performance and better use of system resources.
- FIG. 10 through FIG. 13 illustrate the distributed component system architecture of market engine 9 using, by way of example, a group of six components 71.
- the six components are specifically supervisor component 71-12,
- Tl interface component 71 - 10 TP interface component 71-11, crossing component 71-3, storage component 71-13 and routing component 71-1.
- a global order book stored in the storage component 71-13, interacts with a transaction initiator 10 through the Tl interface component 71-10.
- the routing component 71-1 routes trades to the "best" external destination using the TP interface component 71-11.
- the crossing component 71 -3 interacts for internal crossing.
- FIG. 13 the interplay between crossing component 71-3 routing component 71 - 1 is shown.
- the data flow diagrams in FIG. 10 through FIG. 13 illustrate one-way interaction during normal operation.
- the supervisor component 71-12 is responsible for system supervision and data flow control.
- This component serves to gracefully shut down components in case of network failure and aids in wide-area fail-over and other administrative tasks that cannot be regularly performed because of the failure.
- a micro-wave, satellite or other external connection 68-12 plugged into one or more workstation computers 81 provides this functionality.
- Tl interface component 71-10 provides an interface to transaction initiators 10 as shown in FIG. 4, for example.
- Tl interface component 71-10 employs a loosely coupled cluster 82 of Sun Sparc workstation computers (computers 43-1 , ..., 43-Ha of FIG. 8) running Solaris operating systems (operating systems 42-1, ..., 42-Os of FIG. 8).
- incoming requests are distributed among front-end processes running on one or more of the nodes (where each hardware 43-1, ..., 43-Ha and corresponding operating systems 42-1 , ..., 42-Os pair of FIG. 8 is a node) of cluster 82 in a round-robin fashion.
- each of the nodes also acts as a firewall to provide data security. In this embodiment, all requests are logged into a store 83 for analysis.
- One important task of the Tl Interface 71-10 is protocol conversion between a transaction initiator 10 protocol and the market engine 9 internal protocol.
- Conversions are typically from FIX/ML, NEON, TIBCO and similar messaging layers or protocols.
- the TP Interface 71-11 is similar to the Tl Interface 71-10 and it is responsible for protocol conversion and proper interaction with exchanges and other transaction processors 12.
- a loosely coupled cluster of workstation computers 84 is employed and interactions are logged into the store 85.
- the crossing component 71-3 includes one or more working clusters 86 and supervisory clusters 87.
- the crossing component 71-3 is built as a tightly coupled cluster of Sun workstations
- each node is responsible for a set of symbols to cross (for example, IBM, Intel, Yahoo). While there are thousands of symbols in the various exchanges, the cluster consists of significantly fewer nodes with each node servicing a plurality of symbols. Designated one of the nodes act as load balancers for assigning symbols to nodes.
- the balancing nodes dynamically reassign symbols to different nodes.
- a very active symbol for example, trades of Yahoo on certain days
- a single node is responsible for a single symbol or the processing of a single symbol can be broken up into multiple nodes if needed
- the supervisory cluster 87 has processes that monitor heartbeats, register failures and are responsible for bringing up nodes after scheduled or unscheduled downtime. Other processes monitor heartbeats of the supervisor. Should the supervisor fail, the first node to detect the failure brings up a new supervisor after a random delay (possibly with exponential back-off). In the unlikely event that two or more supervisors are started, each supervisor detects the presence of the other supervisors and all but the supervisor with the highest priority (for example, in a LAN embodiment, one with the highest IP address and highest process ID) commits suicide.
- the routing component 71-1 includes cluster 84 and store 85 and operates to provide a view of external executions and uses the view information to optimally route trades to external markets.
- the TP interface 71-11 provides an interface between the routing component 71-1 and the external transaction processors 12 (see FIG. 4).
- the granularity of operations is on a per security basis. This granularity is provided to facilitate optimizations (like pooling of orders) that need information about all available trades of a given symbol and the crossing component 71-3.
- the routing component 71-1 has the same basic structure as other components and has designated nodes running reliability processes to enhance reliability.
- the storage component 71-13 functions as a storage and message handling system.
- component 71 - 13 is built upon a buddy system cluster
- SMP Symetric Multiprocessing
- SMP nodes of cluster 88 are responsible for maintaining a reliable storage system. While other components can completely fail without major consequences (jobs are simply re-run), the storage component 71-13 typically is implemented with high reliability and availability including mechanisms for local and wide-area fail-over. In such embodiments, transactions are stored both locally on store 89 as well as remotely, at a remote location over connection element 68-13, for immediate wide-area fail-over. Synchronization mechanisms 92 on a transaction level or a disk level provide a wide range of processes and data exchanges for reliability.
- FIG. 10 through FIG. 13 a group components, a subset of the components of FIG. 7, form a market engine 9.
- the processes in the components of FIG. 10 through FIG. 13 are parameterizable, extendable, highly scaleable and fault tolerant.
- "Parameterizable” in this context means, for example with reference to a crossing component parameters, that different parameters such as crossing algorithms, crossing windows and order eviction policies, can be selected on a per-component, per- symbol or other basis. This operation allows the market engine 9 to customize procedures while avoiding the need for custom programming.
- “Extendable” refers to the ease at which algorithms or other features can be added or replaced.
- Scalable denotes the ease by which multiples of a particular workload can be accommodated by the architecture.
- the architecture scales to each symbol, to an entire node and further to any number of nodes.
- fault tolerant refers to the ability to detect and circumvent failures as they occur. Processes that are not successfully executed must rerun with the same parameters but potentially on a different node.
- Storage Component Operation - FIG. 10 Whenever a transaction initiator 10 (see FIG. 4) enters an order, the order gets stored into a Global Order Book (storage component 71-13).
- the storage component 71-13 provides the reliable storage necessary to ensure no loss of orders.
- attributes of an order can be queried and updated by a transaction initiator 10.
- the storage component 71-13 implements a simple order handling operation whereby transaction initiators 10 can manually control movement of a trade to another component over connection element 67 (for example, move to the crossing component 71-3 for internal execution) or, alternatively, a trade can be assigned to an standard automated order handling routine.
- An automated order handling routine supervises a particular automated sequence of submissions to the various components 71. For example, in one order handling routine, all retail trades of an institution are first sent to the internal crossing component 71-3 for internal crossing, followed by a submission of uncrossed orders to the best external destination via routing component 71-1. In another order handling routine, an institution exercises control over institutional trades and directs that they be submitted to a particular exchange 24 (see FIG. 4).
- the storage component 71-13 provides such flexibility.
- the order handling routine illustrated in FIG. 10 starts with a transaction initiator 10 submitting an order/request through the front-end network connection element 68-10 at Al .
- One of the Tl interface component 71-10 nodes in cluster 82 at A2 picks up the order/request, verifies the source, logs it to a store 83 at A3 and converts the format to an internal format and sends it off as a message over the connection element 67 at A4.
- the order/request is then transmitted to the storage component 71-13 and is received at A5 by one of the SMP nodes of cluster 88.
- the storage component 71-13 checks for consistency and conformity and then stores the order/request into reliable storage, both locally in store 89 and over remote connection element 68-13 to a redundant remote store (not shown).
- the synchronization procedures are subject to parameter settings. The same sequence is evoked in reverse for a response from the storage component 71-13 to the Tl interface component 71-10.
- the storage component 71-13 provides a global, enterprise-wide view
- Component 71-13 is designed as a data store with both local and wide-area redundancy and provides follow-the-sun capabilities.
- the storage component 71-13 is one of the execution components and execution is performed with one or more of the features and functions of the following TABLE 71-13.
- APIs Application Programming Interfaces
- Routing Component Operation FIG. 11.
- the trade is "moved" from the storage component 71 - 13 to the routing component
- FIG. 11 illustrates the process of using the routing component 71-1 for automated optimal submission to external markets.
- the sequence A1-A5 remains unchanged from FIG. 10 since it represents an interaction between a transaction initiator 10 and the storage component 71-13.
- the sequence in FIG. 11 shows both the submission of the trade to market engine 9 for storage in storage component 71-13 as well as the decision to move the trade to the routing component 71-1.
- the trade is taken from the storage 89 at Bl through the storage component 71-13 handler node of cluster 88 at B2 onto the connection element 67 at B3.
- the trade is then transferred to one of the nodes in cluster 91, at B4, of the routing component 71-1.
- Component 71-1 uses cached knowledge in store 93 about the symbol distribution to pass the trade on to the target node in cluster 91 in charge or the symbol that is being traded.
- the supervisor is used to update the internal cache 93 and to send the trade to the currently correct destination node in cluster 91.
- the trade is then processed according to the internal optimization algorithms specified in the parameter setting (see TABLE 71-1 below).
- the optimal destination is determined and the order is ready to be placed to the target market.
- the order is placed back onto the internal connection element 67, at C2, from where it is transported to the TP interface component 71-11.
- Component 71-11 immediately logs the requested order into a store 85, at C3, after which one of the nodes in cluster 84 responsible for the specific exchange or other transaction processor 12, at C4, translates the order into the protocol of the selected transaction processor and sends it off, at C59 over connection element 68-11, according to the market's submission policies.
- routing component 71-1 determines the optimal external execution strategy and routes orders accordingly. Combined with a crossing component 71-3 and storage component 71-13, complete order-handling is provided.
- the routing component 71-1 is one of the execution components and execution is performed with one or more of the features and functions of the following TABLE 71-1.
- Order pooling (schedule of priorities, by transaction initiator 10)
- APIs Application Programming Interfaces
- the crossing component 71-3 attempts to match orders from a transaction initiator 10 (see FIG. 4) before the orders are submitted to an external transaction processor 12 (for example, an exchange in FIG. 4).
- the crossing component 71-3 attempts to cross buy and sell orders (for example for stocks, bonds or any other widget) using a variety of algorithms. Moving a trade from the Global Order Book to the Crossing component 71-3 is similar to moving a trade to the routing component 71 - 1 or directly to the external markets.
- the steps A1-A5 represent order entry together with any commands, including the command to move the order to the crossing component 71-3. This procedure is manual or part of an automated order handling routine.
- the order is taken from the storage 89, at DI, and moved by one of the SMP nodes of cluster 88, at D2, to the connection element, at D3. The order is then picked up by one of the nodes of cluster 88, at D4, in the crossing component
- the crossing component 71-3 crosses orders with reference to external market conditions.
- the storage component 71-3 is one of the execution components and execution is performed with one or more of the features and functions of the following TABLE 71-3.
- Fairness Operation - FIG. 13 This component system fairness operation is illustrated in FIG. 13.
- a node at E2 of the cluster 91 of fair crossing routing component 71-1 possibly with assistance from a supervisor node, of cluster 92 at El, passes the quote update to the connection element 67.
- the quote update is then passed to one of the nodes, at E4, of the crossing component 71-3.
- This node determines which node is in charge of the symbol in question. If the local cache does not contain the most up-to-date information, the supervisor, at E5, is consulted.
- the crossing component 71 -3 guarantees that the order to be executed. For additional protection against potential bad quotes, other parameters can be adjusted appropriately.
- One of benefits of the distributed component system architecture of market engine 9 is the synergy that exists between components.
- the direct order function could also be implemented using an entirely different component (not shown).
- a significant function of the routing component 71-1 is the quote server operation of FIG. 13.
- the routing component 71-1 aggregates data from the various markets and creates a global view of the external world. Along with a streaming component (not shown), these components are used together to stream quotes to websites, for example, so that users can compare the distributed Component System quotes with standard quote streams of others.
- quotes are also used to provide thresholds ranges or other bands for the crossing component 71-3 to determine if internal or external crossings should be executed.
- the bounds can be dynamically adjusted according to the latest information about external conditions. Using these techniques, fair internal executions are established with reference to external markets.
Abstract
Description
Claims
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2001233020A AU2001233020A1 (en) | 2000-01-26 | 2001-01-26 | Market engines having extendable component architecture |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US49170400A | 2000-01-26 | 2000-01-26 | |
US09/491,704 | 2000-01-26 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2001055938A2 true WO2001055938A2 (en) | 2001-08-02 |
WO2001055938A3 WO2001055938A3 (en) | 2001-12-06 |
Family
ID=23953305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2001/002637 WO2001055938A2 (en) | 2000-01-26 | 2001-01-26 | Market engines having extendable component architecture |
Country Status (2)
Country | Link |
---|---|
AU (1) | AU2001233020A1 (en) |
WO (1) | WO2001055938A2 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10304097B2 (en) | 2004-01-29 | 2019-05-28 | Bgc Partners, Inc. | System and method for controlling the disclosure of a trading order |
US10395310B2 (en) | 2005-08-04 | 2019-08-27 | Bgc Partners, Inc. | System and method for apportioning trading orders based on size of displayed quantities |
US10424015B2 (en) | 2005-08-05 | 2019-09-24 | Bgc Partners, Inc. | Managing trading orders based on priority |
US10817938B2 (en) | 2005-06-07 | 2020-10-27 | Bgc Partners, Inc. | Systems and methods for routing trading orders |
US11010834B2 (en) | 2006-04-04 | 2021-05-18 | Bgc Partners, Inc. | System and method for optimizing execution of trading orders |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5873071A (en) * | 1997-05-15 | 1999-02-16 | Itg Inc. | Computer method and system for intermediated exchange of commodities |
US5924082A (en) * | 1994-08-17 | 1999-07-13 | Geneva Branch Of Reuters Transaction Services Limited | Negotiated matching system |
EP0971298A1 (en) * | 1998-07-08 | 2000-01-12 | BRITISH TELECOMMUNICATIONS public limited company | Requirements matching |
-
2001
- 2001-01-26 WO PCT/US2001/002637 patent/WO2001055938A2/en active Application Filing
- 2001-01-26 AU AU2001233020A patent/AU2001233020A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5924082A (en) * | 1994-08-17 | 1999-07-13 | Geneva Branch Of Reuters Transaction Services Limited | Negotiated matching system |
US5873071A (en) * | 1997-05-15 | 1999-02-16 | Itg Inc. | Computer method and system for intermediated exchange of commodities |
EP0971298A1 (en) * | 1998-07-08 | 2000-01-12 | BRITISH TELECOMMUNICATIONS public limited company | Requirements matching |
Non-Patent Citations (2)
Title |
---|
ANONYMOUS: "5th Market to Provide Business-To_Business E-Commerce Software; 5th Market Announces Generalized Vertical Market Exchange Software" INTERNET ARTICLE, [Online] 27 September 1999 (1999-09-27), XP002166211 Retrieved from the Internet: <URL:http://industry.java.sun.com/javanews /stories/print/0,1797,18968,00.html> [retrieved on 2001-04-26] * |
MARY SCHROEDER: "In Insider's Guide" INTERNET ARTICLE, [Online] 17 January 2000 (2000-01-17), XP002166212 Retrieved from the Internet: <URL:http://www.securitiesindustry.com/iss ue.ctm?id=140&aid=5178> [retrieved on 2001-04-26] * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10304097B2 (en) | 2004-01-29 | 2019-05-28 | Bgc Partners, Inc. | System and method for controlling the disclosure of a trading order |
US11244365B2 (en) | 2004-01-29 | 2022-02-08 | Bgc Partners, Inc. | System and method for controlling the disclosure of a trading order |
US10817938B2 (en) | 2005-06-07 | 2020-10-27 | Bgc Partners, Inc. | Systems and methods for routing trading orders |
US11625777B2 (en) | 2005-06-07 | 2023-04-11 | Bgc Partners, Inc. | System and method for routing a trading order based upon quantity |
US10395310B2 (en) | 2005-08-04 | 2019-08-27 | Bgc Partners, Inc. | System and method for apportioning trading orders based on size of displayed quantities |
US11094004B2 (en) | 2005-08-04 | 2021-08-17 | Espeed, Inc. | System and method for apportioning trading orders based on size of displayed quantities |
US10424015B2 (en) | 2005-08-05 | 2019-09-24 | Bgc Partners, Inc. | Managing trading orders based on priority |
US11030693B2 (en) | 2005-08-05 | 2021-06-08 | Bgc Partners, Inc. | System and method for matching trading orders based on priority |
US11010834B2 (en) | 2006-04-04 | 2021-05-18 | Bgc Partners, Inc. | System and method for optimizing execution of trading orders |
Also Published As
Publication number | Publication date |
---|---|
WO2001055938A3 (en) | 2001-12-06 |
AU2001233020A1 (en) | 2001-08-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8612321B2 (en) | System and method for the automated brokerage of financial instruments | |
US8015096B2 (en) | Network-based sub-allocation systems and methods for swaps | |
US8996612B1 (en) | System and method for transferring data between a user space and a kernel space in a server associated with a distributed network environment | |
AU2011101785A4 (en) | Method and system of trading a security in a foreign currency | |
US20070022041A1 (en) | Method and System for Improving Exchange Performance | |
US20110307365A1 (en) | Computer Method and System for Intermediated Exchanges | |
US20180268486A1 (en) | Method and system for integrating trade executions among multiple market participant types | |
EP1208510A1 (en) | Automated system for conditional order transactions in securities or other items in commerce | |
WO1999031613A1 (en) | A method and apparatus for bundled asset trading | |
US20230206330A1 (en) | System and Method for Multi-Market Risk Control in a Distributed Electronic Trading Environment | |
US20110010287A1 (en) | Systems, methods and computer program products for redirecting electronic trade orders | |
WO2001033316A2 (en) | Method and system for trading user-definable baskets of fungible goods such as securities | |
US11354742B2 (en) | Fee/rebate contingent order matching system and method | |
US20210004903A1 (en) | Method and System for Internal Matching | |
WO2001059661A2 (en) | Apparatus, method and program for a fixed income trading system | |
WO2001055938A2 (en) | Market engines having extendable component architecture | |
WO2001061549A2 (en) | Market engine having optimization | |
WO2001061547A2 (en) | Market engine having customizable crossing components | |
WO2001018711A2 (en) | Electronic systems formed of market engines having integrated transaction units | |
WO2001007983A2 (en) | Electronic systems with supervision of transactions among transaction initiators and transaction processors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
AK | Designated states |
Kind code of ref document: A3 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: COMMUNICATIONS PURSUANT TO RULE 85A(1) EPC AND RULES 85A AND 85B EPC ( EPO FORMS 1217N AND 1218N DATED 11.02.03 ). |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE69(1) EPC , EPO FORM 1205A DATED 19.11.03 |
|
122 | Ep: pct application non-entry in european phase | ||
NENP | Non-entry into the national phase in: |
Ref country code: JP |