WO2001011453A2 - Method and apparatus for simulating security transactions based on information from actual market transactions for corresponding securities - Google Patents

Method and apparatus for simulating security transactions based on information from actual market transactions for corresponding securities Download PDF

Info

Publication number
WO2001011453A2
WO2001011453A2 PCT/US2000/022140 US0022140W WO0111453A2 WO 2001011453 A2 WO2001011453 A2 WO 2001011453A2 US 0022140 W US0022140 W US 0022140W WO 0111453 A2 WO0111453 A2 WO 0111453A2
Authority
WO
WIPO (PCT)
Prior art keywords
transactions
transaction
information
actual
user entered
Prior art date
Application number
PCT/US2000/022140
Other languages
French (fr)
Other versions
WO2001011453A8 (en
Inventor
Edward E. Murphy
Original Assignee
Paradigm Investment Services, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to US14828999P priority Critical
Priority to US60/148,289 priority
Application filed by Paradigm Investment Services, Inc. filed Critical Paradigm Investment Services, Inc.
Publication of WO2001011453A2 publication Critical patent/WO2001011453A2/en
Publication of WO2001011453A8 publication Critical patent/WO2001011453A8/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/06Investment, e.g. financial instruments, portfolio management or fund management
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Exchange, e.g. stocks, commodities, derivatives or currency exchange

Abstract

A method and apparatus for simulating stock or security transactions determines a security value based on the trading price of that security in an immediately succeeding actual transaction. Initially, a participant of a stock simulation or competition (e.g., where each competition participant attempts to achieve the greatest monetary worth and/or portfolio value relative to the other participants under the same or similar conditions) places an order to buy or sell a security using a web site interface hosted on a trade system web server. The order is subsequently forwarded to a transaction processing server and placed on a "queue" until an actual market trade is processed for that particular security. The processing server receives actual market quote or price information, while each order is matched and processed at the price of the first subsequent actual market trade corresponding to that order. In addition, orders are verified against secondary quote information supplied to a trade system update server at the end of a day. Once the trades are verified and processed, the update server posts the trades for each corresponding participant to database tables.

Description

METHOD AND APPARATUS FOR SIMULATING SECURITY

TRANSACTIONS BASED ON INFORMATION FROM ACTUAL

MARKET TRANSACTIONS FOR CORRESPONDING SECURITIES

CROSS-REFERENCE TO RELATED APPLICATIONS This application claims priority from U.S. Provisional Patent Application Serial No. 60/148,289, entitled "Method and Apparatus for Pricing and Executing Securities Simulation/Competition Trade Orders" and filed August 11, 1999. The disclosure of that provisional application is incorporated herein by reference in its entirety. BACKGROUND OF THE INVENTION 1. Technical Field The present invention relates generally to systems simulating security transactions. In particular, the present invention pertains to a method and apparatus for simulating security transactions (e.g., trade orders) based on information from actual market transactions for corresponding securities. 2. Discussion of the Related Art The market for Internet-based financial information and services among individual investors has been growing rapidly due to several factors, including: increased Internet penetration; convenience, control and cost; and growth in the individual investor segment. In particular, the number of Internet users in the U.S. is expected to reach and exceed eighty- five million with approximately 45% of Internet users utilizing the web to access financial information and services. These services provide individual investors with fast and convenient access to financial information (e.g., quotes, news, research, brokerage services, etc.) at substantially lower cost. For example, stock trading commissions on the Internet range from $ 10 - $30, compared to the hundreds of dollars that traditional brokerage firms charge. As a result, the quantity of online accounts is expected to reach and exceed 14.8 million, while online trades have recently accounted for approximately 50% of all retail trades. In addition, individuals are taking an active role in managing their investments due to the increasing number of companies providing 40 IK benefits and awareness among individuals that social security benefits are inadequate to maintain their current lifestyle. Since investors have asserted greater control of their investments, a greater need exists to educate investors about the risks and rewards of investing. While the Internet has empowered the individual investor with financial information, it has also created a need for greater consumer education of the risks and rewards associated with investing, particularly as investors shift away from traditional broker relationships. Accordingly, companies, such as Virtual Stock Exchange and Investment Challenge, have created Internet stock simulations that allow investors to trade a virtual portfolio and learn about investing in a risk free format. Typically, the stock simulation systems utilize actual stock market data to perform the simulations, thereby allowing participants to conduct virtual trades of securities of publicly listed companies and to experience gains and losses associated with each securities holding that correspond with actual market performance. However, various techniques are employed by the stock simulation systems to price and process stock orders. These techniques directly impact the level of realism that the simulation achieves. For example, some systems price and process orders once a day using end of day prices, while other systems price and process trades on a continuous, intra-day basis using a delayed ask price (e.g., price requested by seller) to process buy type orders and a delayed bid price (e.g., price requested by buyer) to process sell type orders. These processing and pricing techniques suffer from several disadvantages since they do not closely replicate the manner in which real market stock orders are processed. In addition, the techniques do not prevent participants from gaining unfair advantages (e.g., the techniques do not compensate for the differences between asking and bidding prices for stocks) as they compete against other participants for prizes (when available). OBJECTS AND SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to simulate security transactions utilizing current data from actual market transactions for corresponding securities. It is another object of the present invention to simulate security transactions in a manner that closely resembles actual market transactions. Yet another object of the present invention is to simulate security transactions utilizing information from the next occurring actual market transactions for the securities specified in the simulated transactions. The aforesaid objects may be achieved individually and/or in combination, and it is not intended that the present invention be construed as requiring two or more of the objects to be combined unless expressly required by the claims attached hereto. According to the present invention, a method and apparatus for simulating stock or security transactions determines a security value based on the trading price of that security in an immediately succeeding actual transaction. This results in realistic transaction or trade order processing within stock or securities market simulations. Initially, a participant of a stock simulation or competition (e.g., where each competition participant attempts to achieve the greatest monetary worth and/or portfolio value relative to the other participants under the same or similar conditions) places an order to buy or sell a security using a web site interface hosted on a trade system web server. The order is subsequently forwarded to a transaction processing server and placed on a "queue" until an actual market trade is processed for that particular security. The processing server receives actual market quote or price information, while each order is matched and processed at the price of the first subsequent actual market trade corresponding to that order. In addition, orders are verified against secondary quote information supplied to a trade system update server at the end of a day. Once the trades are verified and processed, the update server posts the trades for each corresponding participant to database tables. The above and still further objects, features and advantages of the present invention will become apparent upon consideration of the following detailed description of specific embodiments thereof, particularly when taken in conjunction with the accompanying drawings wherein like reference numerals in the various figures are utilized to designate like components. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a schematic block diagram of a trade simulation system of the present invention in communication with end-user systems via a network. Fig.2 is a block diagram of the trade simulation system of Fig. 1 according to the present invention. Fig. 3A is a procedural flow chart illustrating the manner in which security transactions are simulated according to the present invention. Fig. 3B is a procedural flow chart illustrating the manner in which simulated transactions are verified and adjusted at a predetermined time interval according to the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An exemplary configuration for end-user systems to access a trade simulation system of the present invention is illustrated in Fig. 1. Specifically, the configuration includes a trade simulation system 2, a network 4 and one or more end-user systems 6. The trade simulation system and end-user systems are coupled to and communicate with each other via network 4, while any type of communications devices (e.g., modem, network card, gateway, router, etc.) may be utilized to couple the trade simulation and end-user systems to the network. Network 4 is preferably implemented by a wide area network (WAN), such as the Internet, but any type of network (e.g., LAN, WAN, Intranet, etc.) may be employed. Alternatively, any type of communications medium (e.g., wireless, modem, dumb terminal and host arrangement, etc.) may be utilized to couple the trade simulation system and end-user systems. The trade simulation system simulates security transactions (e.g., trade orders) by processing the transactions utilizing actual market information provided to the trade system as described below. Thus, end- users may participate in virtual security transactions in a relatively risk-free environment and observe the results of their transactions. The trade simulation system may simulate transactions for individual investors, or provide the simulation in the form of a competition among plural investors where each investor attempts to achieve the greatest monetary worth and/or portfolio value relative to the other participants under the same or similar conditions (e.g., initial capital, trading rules, quantity of trades, etc.). End-user systems 6 are each typically implemented by a conventional personal or other suitable computer system preferably equipped with a display or monitor 14, a base 16 (i.e., including the processor, memories and internal or external communications devices (e.g., modem, network cards, etc.)), a keyboard 18 and optional mouse 19 or other input device. The end-user systems each include software (e.g., operating system, Internet browser or other network navigation tool, etc.) to communicate with the trading system, and appropriate components (e.g., processor, disk storage or hard dive, RAM, etc.) having sufficient processing and storage capabilities to effectively execute the software. The end-user systems may utilize any of the conventional or commercially available platforms (e.g., Linux, Macintosh, Unix, OS2, Windows, etc.). The trade simulation system includes a web server 10, middleware 20 and databases 30. The middleware and databases basically process security transactions, while the web server handles communication with the end-user systems as described below. The web server, middleware and databases may be implemented by any quantity of (e.g., one or more) computer systems. By way of example only, web server 10, middleware 20 and database 30 are each implemented by a respective computer system having appropriate software and communications devices (e.g., modem, network card, etc.) to facilitate communications between the respective systems (e.g., via hardwire or wireless connection, modem connection, LAN, WAN, etc.). These computer systems may be disposed locally or remotely from each other and are each typically implemented by a conventional personal or other computer system preferably equipped with a display or monitor, a base (i.e., including the processor, memories and internal or external communication devices (e.g., modem, network cards, router, etc.)), a keyboard and optional mouse or other input device. The trade system includes software (e.g., operating systems, server software, trade processing software, etc.) to communicate with end-user systems 6 and process transaction requests, while the respective computer systems of the trade system each include appropriate components (e.g., processor (e.g., generally at least a Pentium or compatible processor), disk storage or hard drive, RAM, etc.) having sufficient processing and storage capabilities to effectively execute the corresponding server and/or trade processing software. Further, the respective computer systems may utilize any of the commercially available operating systems and/or server software and, under software control, implement the trade system of the present invention for processing simulated security transactions initiated from the end-user computer systems. Referring to Fig. 2, web server 10 typically includes conventional or commercially available web server software and distributes web pages containing text and graphics to end-user systems 6 via network 4 (Fig. 1 ). A browser residing on an end- user system interprets the web pages and displays a graphical user interface (GUI) to a user for initiating a transaction. Further, each end-user system may receive information from a corresponding user for web pages or forms associated with a specific transaction (e.g., buy page, sell page, etc.) and may enable viewing of various information (e.g., pending trades, portfolio holdings, transaction history, etc.) from the trade system. Web server 10 further includes software in the form of a "plug-in" 12 (e.g., software that extends the basic features of a software package as though it is part of that package) to authorize user access to the trade system and handle system specific customizations. Web server 10 receives transaction information from end-user systems 6 and forwards the received information to middleware 20 for processing. Middleware 20 is in communication with databases 30 that store information for transaction processing. In particular, databases 30 include a portfolio database 32, a competition database 34, a company database 36 and a quote server database 38. The databases may be implemented by any conventional or other database or storage structure (e.g., files, data structures, etc.), and each database typically resides on the database computer system. However, the databases may reside on any quantity of computer systems as described above. Portfolio database 32 includes a pending transaction table 42, an order table 44, a transaction table 46 and a portfolio table 48 that collectively store trade order and position (e.g., standings with respect to participants in a competition) information. Competition database 34 includes a family table 41 that stores a set of trading rules for each competition or simulation to verify pending transactions. Company database 36 includes a master table 43 that stores company information (e.g., including a CUSIP or unique identification commonly associated with financial instruments or securities) utilized for verification against the trading rules, while quote server database 38 stores stock or security quote information (e.g., current market price quotes) received from an outside or external information source. Middleware 20 receives transaction information from web server 10 and processes transactions requested by end-user systems 6. Specifically, middleware 20 includes a transaction manager server 22, a transaction processing server 24 and an update server 26. These servers are typically implemented in software and, by way of example only, reside on the middleware computer system. However, the middleware servers may reside on any quantity of computer systems as described above. Manager server 22 generates customized web (e.g., HTML) pages containing information for display on end-user systems 6, and accepts instructions from the end-user systems for processing transactions. The manager server verifies received transactions against the appropriate rule set stored in the competition database (e.g., for an individual simulation or competition) and enters valid transactions into order table 44 of portfolio database 32 for processing by processing server 24. Processing server 24 simulates each transaction in order table 44 by utilizing the trade price from the next occurring actual market transaction for the security specified in the simulated transaction. In particular, processing server 24 determines the presence of a quote (e.g., price) in quote server database 38 for a security specified in a transaction, and verifies each outstanding transaction stored in the order table against the appropriate rule set stored in the competition database (e.g., for an individual simulation or competition) as described below. Quote information is generally requested from an external source of market information and is stored in quote server database 38. The quote information may further be stored in a cache-type memory device (not shown) on the database or middleware computer systems to enhance information retrieval. The information in quote server database 38 and/or the cache is updated frequently due to changing market conditions. Information may be placed in and removed from the cache based on any conventional or other techniques (e.g., frequently used, first-in first out, etc.). The processing server initially requests quote information from the cache, and proceeds to access the quote server database in the event that the quote information is not currently residing in the cache. Since the cache performs rapid information retrieval relative to the quote server database, use of the cache enhances the rate of information retrieval for the trade system. The request for quote information may be performed on an immediate or real-time basis, or be delayed by any desired time interval (e.g., seconds, minutes, hours, etc.). By way of example only, the trade system employs a twenty minute delay for requesting quote information. The processing server determines the presence of quote information for the specified security approximately once every minute to provide a realistic price for the transaction. In addition, a trigger or notification mechanism may be employed to notify the processing server of changes in quote information. When quote information is received for the transaction, and the transaction complies with the appropriate rule set, the processing server processes the transaction and stores the transaction and associated price in pending transaction table 42 for verification by update processor 26 as described below. This database update may be accomplished on an immediate or real-time basis, or be delayed by any desired time interval. Update server 26 verifies transactions within pending transaction table 42 against market information received from a secondary source (e.g., typically different from the external source described above), preferably at the end of each day. However, this verification may be performed at any desired time interval. If a transaction includes a price beyond an acceptable range from the market information corresponding to that transaction, the update server adjusts the transaction price to be commensurate with the market information and re-processes the transaction with the adjusted price. Valid and adjusted transactions or trades are stored by the update server in transaction table 46 and permanent holding or portfolio table 48 of portfolio database 32. The manner in which the trade system processes user requested transactions is illustrated in Fig. 3 A. Initially, a user utilizes an end-user system 6 to access the trade system via network 4 (Fig. 1), and enters transaction or trade order information on appropriate web pages or forms at step 60. The entered transaction information generally includes the security ticker symbol, requested action (e.g., buy, sell, short sell, short cover, etc.), order amount (e.g., quantity of shares, dollar value, percentage of equity, etc.), order type (e.g., market, limit, stop loss, etc.), limit price (e.g., if a limit or stop loss order), order duration (e.g., quantity of days) and allowance of partial order fill (e.g., all or none) . The transaction information may alternatively include any information desired and/or required to process the transaction. The web server and plug-in perform user authorization and interact with the end-user system to display information to and retrieve information from the user as described above. The transaction manager server receives the entered transaction information from the web server and verifies the transaction against the appropriate trading rules stored in the competition database (e.g., for individual simulations or a competition) at step 62. A specific rule set stored in the competition database is typically utilized for competitions, while a default rule set is generally utilized for transaction simulations of individual investors (e.g., investors not participating in a competition). The trading rules may include various criteria for determining valid transactions (e.g., allowance of short selling, stock price within order price limits, market capitalization of security within market capitalization limits, dollar volume of stock order within a percentage of historical trading volume limits, dollar value of order within a percentage of total portfolio dollar value limits, stock symbol allowed for trading by competition rules, etc.). If the transaction is invalid as determined at step 64, the user is prompted to re-enter transaction information. In response to a valid transaction, the manager server, at step 66, stores the transaction in order table 44 of portfolio database 32 for processing by the transaction processing server. The processing server retrieves the transactions from the order table and places each transaction in a queue or table until an actual trade price for the security specified in that transaction is available (e.g., an actual market trade for the specified security has occurred and the price is available in the quote server database and/or cache). The processing server repeatedly requests and/or is notified of price or quote information for the specified security within quote server database 38 and/or cache at step 68. The information may be available on an immediate or real-time basis, or on a delayed basis as described above. When the information is available and retrieved as determined at step 70, the processing server again verifies the transaction against the appropriate trading rules. If the transaction is invalid as determined at step 72, the user is notified of the invalid transaction at step 73 and processing for that transaction terminates. The user may subsequently enter transaction information associated with additional transactions for processing as described above. If the transaction complies with the appropriate rule set as determined at step 72, the processing server processes the transaction in accordance with the actual market price obtained from quote server database 38 and/or cache at step 74, and stores the processed transaction and price in pending transaction table 42 of portfolio database 32 at step 76. When additional transactions are desired as determined at step 77, the transactions may be entered by the user and processed by the trade system as described above. When a predetermined time interval has expired (e.g., such as at the end of a day), update server 26 verifies the accuracy of transactions within pending transaction table 42 by comparing them against actual market information received from a secondary information source (e.g., preferably different than the external source providing information to quote server database 38) as illustrated in Fig.3B . Specifically, the update server retrieves a transaction from the pending transaction table at step 78 and compares the transaction to the actual market information corresponding to that transaction. If the transaction is invalid (e.g., the transaction price is beyond an acceptable range from the market information) as determined at step 80, the transaction price is adjusted to be commensurate with the market information and the transaction is re-processed by the update server with the adjusted price at step 82. Further, the adjusted transactions are indicated on an exception report, and may alternatively be resolved manually. When additional transactions within pending transaction table 42 require processing as determined at step 83, the transactions are retrieved, verified and adjusted (if necessary) by the update server as described above. In response to processing each transaction within the pending transaction table, the update server stores the valid and adjusted transactions in transaction table 46 and permanent holding or portfolio table 48 of portfolio database 32 at step 84. Transactions for participants of a competition are processed in substantially the same manner described above, but utilize a rule set associated with the particular competition. In addition, the trade system maintains information relating to the position or standing of each participant relative to other participants within the competition. The trade processing software of the trade system of the present invention is preferably implemented in the 'C programming language, but may be implemented in any suitable computer language. Further, the software of the present invention may be developed by one of ordinary skill in the computer and/or programming arts based on the functional description contained herein and the flow charts illustrated in the drawings. Moreover, references herein of software performing various functions generally refer to computer or processing systems performing those functions under software control. It will be appreciated that the embodiments described above and illustrated in the drawings represent only a few of the many ways of implementing a method and apparatus for simulating security transactions based on information from actual market transactions for corresponding securities. The computer systems of the end-user and trade systems may be implemented by any quantity of any personal or other type of computer system (e.g., IBM-compatible, Apple, Macintosh, laptop, palm pilot, etc.). These computer systems may include any commercially available operating system (e.g., Windows, OS/2, Unix, Linux, etc.), any commercially available or custom software (e.g., server software, browser software, trade processing software, etc.) and any types of input devices (e.g., keyboard, mouse, voice recognition, etc.). It is to be understood that the trade processing software of the trade system may be implemented in any desired computer language. The computer systems of the end-user and trade systems may alternatively be implemented by hardware or other processing circuitry. The various functions of the web server, middleware and databases may be distributed in any manner among any quantity (e.g., one or more) of computer or processing systems or circuitry where the computer systems may be disposed locally or remotely of each other and communicate via any suitable communications medium (e.g., LAN, WAN, Intranet, Internet, hardwire, modem connection, wireless, etc.). The software and/or algorithms described above and illustrated in the flow charts may be modified in any manner that accomplishes the functions described herein. The network may be implemented by any communications network or medium (e.g., LAN, WAN, Internet, Intranet, direct connection, modem connection, wireless, etc.). The trade system and end-user systems may include any conventional or other communications devices to communicate over the network. The web server may accommodate any quantity of end-user systems, and include any conventional or other web server software. The plug-in module may alternatively be implemented as a separate stand-alone program or software module. Further, the web server may accommodate any type of web page or form, and provide any type of user interface to the end-user systems. The user interface may provide or obtain any desired information from the user. The functions of the middleware servers (e.g., manager, processing and update servers) may be distributed in any manner among any quantity (e.g., one or more) of computer or processing systems or circuitry. The computer systems implementing the middleware servers may be disposed locally or remotely of each other and communicate via any suitable communications medium (e.g., LAN, WAN, Intranet, Internet, hardwire, modem connection, wireless, etc.). The middleware servers may access the databases via any suitable communications medium, devices, query language or protocols . The update server may verify the transactions at any desired time interval (e.g., hourly, daily, etc.). The processing server may request quote information at any desired interval (e.g., seconds, minutes, etc.) and/or be notified of quote information changes by any conventional or other mechanisms. The databases of the present invention (e.g., portfolio, competition, company, quote server, etc.) may be implemented by any quantity of conventional or other databases or storage structures (e.g., file, data structure, etc.), may be arranged in any fashion and may store any desired information. The databases may reside on any quantity of computer or processing systems disposed locally or remotely of each other and communicating via any suitable communications medium, devices and protocols (e.g., LAN, WAN, Intranet, Internet, hardwire, modem connection, wireless, etc.). The databases may each include any quantity of tables containing any desired information. The quote server database may be refreshed or updated at any desired intervals (e.g., seconds, minutes, hours, etc.), while market information for the quote server database and update server may be obtained from any desired information source. The information sources for the quote server database and update server may be the same or different sources. Further, any quantity of information sources may be utilized to perform any quantity of verifications at any desired time intervals. The information from a source may be requested or available on an immediate or real time basis, or be available on a * delayed basis utilizing any desired time interval. The cache may be implemented by any "' type of memory device and/or specific memory locations within computer system memory, may store any desired information, and may have any desired storage capacity. The cache information may be updated at any desired interval, while information may be replaced in the cache utilizing any conventional or other techniques (e.g., frequently used, first in first out (FIFO), etc). The trade system may be implemented with or without the cache. The trade system software may be available on a recorded medium (e.g., floppy diskettes, CD-ROM, memory devices, etc.) for use on stand-alone systems or systems connected by a network, or may be downloaded (e.g., in the form of carrier waves, packets, etc.) to systems from a network. The rule sets for the trade system may include any quantity of any types of conditions or constraints to determine valid transactions. The trade system may utilize any quantity of rule sets, and may utilize the same or different rule sets for individual simulations or competitions. The competitions may accommodate any quantity of participants. The user may enter any desired information in any fashion to initiate a transaction. The transactions may be processed by using any actual trade price (e.g., at any prior, current or delayed interval) or any quantity of actual trade prices that may be combined in any fashion to arrive at a trade price (e.g., averaging trade prices, etc.). The adjustment by the update server may be accomplished in any desired manner utilizing any desired technique to analyze the market information and arrive at an acceptable price (e.g., averaging, high and low prices, etc.). Further, the offset from the market information for determining acceptable trade prices may be any desired range or offset. In addition, any desired market information may be utilized by the update server to determine transaction validity. The present invention is not limited to the specific applications disclosed herein, but may be utilized in substantially the same manner described above to simulate transactions or other events based on actual occurrence of corresponding events from which information may be obtained. The functions of the web server, middleware server and databases may be combined, separated and/or distributed in any manner among any quantity of software modules and/or computer systems. The queue may be implemented by any suitable data structure (e.g., stack, list, array, etc.), file, database or other storage structure. From the foregoing description it will be appreciated that the invention makes available a novel method and apparatus for simulating security transactions based on information from actual market transactions for corresponding securities wherein security transactions are simulated by utilizing information from the next occurring actual market transactions for the securities specified in the simulated transactions. Having described preferred embodiments of a new and improved method and apparatus for simulating security transactions based on information from actual market transactions for corresponding securities, it is believed that other modifications, variations and changes will be suggested to those skilled in the art in view of the teachings set forth herein. It is therefore to be understood that all such variations, modifications and changes are believed to fall within the scope of the present invention as defined by the appended claims.

Claims

What is Claimed is: 1. A system for simulating user entered transactions based on information from actual transactions corresponding to said user entered transactions comprising: an interface unit to communicate with at least one end-user system and provide information to and receive transactions entered into each end-user system by a corresponding user; a database system to store information pertaining to said user entered transactions and said actual transactions, wherein said actual transaction information is received by said database system from a first external information source at particular time intervals; and a transaction simulator in communication with said interface unit and said database system to retrieve said user entered transactions from said interface unit and process each retrieved transaction in accordance with said actual transaction information stored in said database system associated with a next occurring actual transaction corresponding to that retrieved transaction.
2. The system of claim 1 wherein said each end-user system and said interface unit communicate over a network.
3. The system of claim 1 wherein said database system receives said actual transaction information from said first external information source on a real time basis.
4. The system of claim 1 wherein said user entered and actual transactions include security transactions.
5. The system of claim 4 wherein said security transactions include buy and sell orders, and said transaction simulator utilizes price information within said actual transaction information associated with securities specified in said user entered transactions to process said user entered transactions.
6. The system of claim 1 wherein said transaction simulator includes: a manager processor to receive and verify said user entered transactions, said manager processor including: a manager retrieval module to retrieve said user entered transactions from said interface unit; a manager verification module to verify said received fransactions against valid transaction criteria stored in said database system; and a manager storage module to store said verified transactions in said database system; a transaction processor to process said verified transactions, said transaction processor including: a database access module to retrieve said verified transactions from said database system; a transaction processing module to process each retrieved verified transaction in accordance with said actual transaction information pertaining to said next occurring actual transaction corresponding to that retrieved verified transaction; a verification module to verify said processed fransactions against said valid transaction criteria; and a storage module to store said verified processed transactions in said database system; and an adjustment processor to verify and adjust said processed transactions at predetermined time intervals, said adjustment processor including: an adjustment retrieval module to retrieve said processed transactions from said database system; an adjustment verification module to verify said processed transactions against information relating to actual transactions received by said update processor from a second external information source; a transaction adjustment module to adjust transaction information of each invalid transaction in accordance with said received transaction information from said second information source and to re-process that invalid transaction with said adjusted transaction information; and an adjustment storage unit to store valid and adjusted transactions in said database system.
7. The system of claim 6 wherein said adjustment processor verifies and adjusts said processed transactions at the end of a day.
8. The system of claim 6 wherein said first and second external information sources are different.
9. The system of claim 6 wherein said database system includes: a portfolio database to store information pertaining to said user entered, verified processed, valid and adjusted transactions; a competition database to store said valid transaction criteria; a company database to store information pertaining to companies associated with said user entered transactions for use in verifying those transactions against said valid transaction criteria stored in said competition database; and a quote database to store information pertaining to said actual transactions for use by said transaction processor to process said verified transactions.
10. The system of claim 1 further including a cache memory device having a greater information retrieval rate than said database system and selectively storing information pertaining to said actual transactions, wherein said transaction simulator accesses said cache for said actual transaction information corresponding to said each retrieved transaction and subsequently proceeds to access said database system for that actual fransaction information in response to that actual transaction information not residing in said cache.
11. The system of claim 1 further including a competition processor to accommodate plural users and facilitate transaction simulations in the form of a competition among said plural users, wherein said competition module maintains information relating to the standing of each user within said competition.
12. A program product apparatus having a computer readable medium with computer program logic recorded thereon for facilitating simulation of user entered transactions based on information from actual transactions corresponding to said user entered transactions, said program product apparatus comprising: an interface unit to communicate with at least one end-user system and provide information to and receive transactions entered into each end-user system by a corresponding user; a database system to store information pertaining to said user entered transactions and said actual transactions, wherein said actual transaction information is received by said database system from a first external information source at particular time intervals; and a transaction simulator in communication with said interface unit and said database system to retrieve said user entered transactions from said interface unit and process each retrieved transaction in accordance with said actual transaction information stored in said database system associated with a next occurring actual transaction corresponding to that retrieved transaction.
13. The program product apparatus of claim 12 wherein said database system receives said actual transaction information from said first external information source on a real time basis.
14. The program product apparatus of claim 12 wherein said user entered transactions include buy and sell orders for securities, and said transaction simulator utilizes price information within said actual transaction information associated with securities specified in said user entered transactions to process said user entered transactions.
15. The program product apparatus of claim 12 wherein said transaction simulator includes: a manager processor to receive and verify said user entered transactions, said manager processor including: a manager retrieval module to retrieve said user entered transactions from said interface unit; a manager verification module to verify said received transactions against valid transaction criteria stored in said database system; and a manager storage module to store said verified transactions in said database system; a transaction processor to process said verified transactions, said transaction processor including: a database access module to retrieve said verified transactions from said database system; a transaction processing module to process each retrieved verified transaction in accordance with said actual fransaction information pertaining to said next occurring actual transaction corresponding to that retrieved verified transaction; a verification module to verify said processed transactions against said valid transaction criteria; and a storage module to store said verified processed transactions in said database system; and an adjustment processor to verify and adjust said processed transactions at predetermined time intervals, said adjustment processor including: an adjustment retrieval module to retrieve said processed transactions from said database system; an adjustment verification module to verify said processed transactions against information relating to actual transactions received by said update processor from a second external information source; a transaction adjustment module to adjust transaction information of each invalid transaction in accordance with said received transaction information from said second information source and to re-process that invalid transaction with said adjusted transaction information; and an adjustment storage unit to store valid and adjusted transactions in said database system.
16. The program product apparatus of claim 15 wherein said database system includes: a portfolio database to store information pertaining to said user entered, verified processed, valid and adjusted transactions; a competition database to store said valid transaction criteria; a company database to store information pertaining to companies associated with said user entered transactions for use in verifying those transactions against said valid transaction criteria stored in said competition database; and a quote database to store information pertaining to said actual transactions for use by said transaction processor to process said verified transactions.
17. The program product apparatus of claim 12 further including a competition processor to accommodate plural users and facilitate transaction simulations in the form of a competition among said plural users, wherein said competition module maintains information relating to the standing of each user within said competition.
18. A method of simulating user entered transactions based on information from actual fransactions corresponding to said user entered transactions comprising the steps of: (a) communicating with at least one end-user system and providing information to and receiving transactions entered into each end-user system by a corresponding user; (b) storing information within a database system pertaining to said user entered transactions and said actual transactions, wherein said actual transaction information is received by said database system from a first external information source at particular time intervals; and (c) processing each user entered transaction in accordance with said actual transaction information stored in said database system associated with a next occurring actual transaction corresponding to that user entered transaction.
19. The method of claim 18 wherein step (a) further includes: (a.1) communicating with each end-user system over a network.
20. The method of claim 18 wherein step (b) further includes: (b.l) receiving said actual transaction information from said first external information source on a real time basis.
21. The method of claim 18 wherein said user entered and actual transactions include security transactions.
22. The method of claim 21 wherein said security transactions include buy and sell orders, and step (c) further includes: (c.l) utilizing price information within said actual transaction information associated with securities specified in said user entered transactions to process said user entered transactions.
23. The method of claim 18 wherein step (c) includes: (c.l) verifying said user entered transactions against valid transaction criteria stored in said database system; (c.2) processing each verified fransaction in accordance with said actual fransaction information pertaining to said next occurring actual transaction corresponding to that verified fransaction; (c.3) verifying said processed transactions against said valid transaction criteria; and (c.4) verifying and adjusting said processed transactions at predetermined time intervals, wherein step (c.4) further includes: (c.4.1 ) verifying said processed transactions against information relating to actual transactions received from a second external information source; (c.4.2) adjusting transaction information of each invalid transaction in accordance with said received transaction information from said second information source and re-processing that invalid transaction with said adjusted transaction information; and (c.4.3) storing said valid and adjusted transactions in said database system.
24. The method of claim 23 wherein step (c.4) includes verifying and adjusting said processed transactions at the end of a day.
25. The method of claim 23 wherein said first and second external information sources are different.
26. The method of claim 18 wherein step (b) further includes: (b.1) selectively storing information pertaining to said actual transactions in a cache memory device having a greater information retrieval rate than said database system; and step (c) further includes: (c.l) accessing said cache memory device for said actual transaction information corresponding to said each user entered transaction and subsequently proceeding to access said database system for that actual transaction information in response to that actual transaction information not residing in said cache memory device.
27. The method of claim 18 further including the steps of: (d) accommodating plural users and facilitating fransaction simulations in the form of a competition among said plural users; and (e) determining and maintaining information relating to the standing of each user within said competition.
28. A method of simulating user entered transactions based on information from actual transactions corresponding to said user entered transactions comprising the step of: (a) processing each user entered transaction in accordance with actual transaction information stored in a database system and associated with a next occurring actual transaction corresponding to that user entered transaction, wherein said actual transaction information is received by said database system from an external information source at particular time intervals.
29. The method of claim 28 wherein step (a) further includes: (a.1 ) receiving said actual transaction information from said external information source on a real time basis.
30. The method of claim 28 wherein said user entered transactions include buy and sell orders for securities, and step (a) further includes: (a.l) utilizing price information within said actual transaction information associated with securities specified in said user entered transactions to process said user entered transactions.
31. A system for simulating user entered transactions based on information from actual transactions corresponding to said user entered transactions comprising: an interface unit to communicate with at least one end-user system and provide information to and receive transactions entered into each end-user system by a corresponding user; a database system to store information pertaining to said user entered transactions and said actual transactions, wherein said actual transaction information is received by said database system from a first external information source at particular time intervals; a transaction simulator in communication with said interface unit and said database system to retrieve said user entered transactions from said interface unit and process each retrieved transaction in accordance with said actual transaction information; and an adjustment processor to verify said processed transactions at a predetermined time interval against information relating to actual transactions received from a second external information source and to adjust transaction information of each invalid transaction in accordance with said received transaction information from said second information source for re-processing that invalid transaction with said adjusted fransaction information.
32. The system of claim 31 wherein said user entered and actual transactions include security transactions.
33. A method of simulating user entered transactions based on information from actual transactions corresponding to said user entered transactions comprising the steps of: (a) processing each user entered transaction in accordance with actual transaction information stored in a database system, wherein said actual transaction information is received by said database system from an external information source at particular time intervals; (b) verifying said processed fransactions against information relating to actual transactions received from a second external information source at a predetermined time interval; and (c) adjusting transaction information of each invalid transaction in accordance with said received fransaction information from said second information source and re- processing that invalid transaction with said adjusted transaction information.
34. The method of claim 33 wherein said user entered and actual transactions include security transactions.
PCT/US2000/022140 1999-08-11 2000-08-11 Method and apparatus for simulating security transactions based on information from actual market transactions for corresponding securities WO2001011453A2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US14828999P true 1999-08-11 1999-08-11
US60/148,289 1999-08-11

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
AU67683/00A AU6768300A (en) 1999-08-11 2000-08-11 Method and apparatus for simulating security transactions based on information from actual market transactions for corresponding securities

Publications (2)

Publication Number Publication Date
WO2001011453A2 true WO2001011453A2 (en) 2001-02-15
WO2001011453A8 WO2001011453A8 (en) 2002-09-26

Family

ID=22525115

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/022140 WO2001011453A2 (en) 1999-08-11 2000-08-11 Method and apparatus for simulating security transactions based on information from actual market transactions for corresponding securities

Country Status (2)

Country Link
AU (1) AU6768300A (en)
WO (1) WO2001011453A2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7110973B1 (en) * 1999-09-29 2006-09-19 Charles Schwab & Co., Inc. Method of processing customer transactions
US8694414B2 (en) 2002-02-19 2014-04-08 Trading Technologies International, Inc System and method for simulating an electronic trading environment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
No Search *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7110973B1 (en) * 1999-09-29 2006-09-19 Charles Schwab & Co., Inc. Method of processing customer transactions
US7870032B2 (en) 1999-09-29 2011-01-11 Charles Schwab & Co., Inc. Method of and system for processing transactions
US8195521B1 (en) * 1999-09-29 2012-06-05 Charles Schwab & Co., Inc. Method of and system for processing transactions
US8694414B2 (en) 2002-02-19 2014-04-08 Trading Technologies International, Inc System and method for simulating an electronic trading environment
US10304131B2 (en) 2002-02-19 2019-05-28 Trading Technologies International, Inc. System and method for simulating an electronic trading environment

Also Published As

Publication number Publication date
WO2001011453A8 (en) 2002-09-26
AU6768300A (en) 2001-03-05

Similar Documents

Publication Publication Date Title
Cox et al. Theory and behavior of single object auctions
Aldridge High-frequency trading: a practical guide to algorithmic strategies and trading systems
US7272580B2 (en) Network and method for trading derivatives by providing enhanced RFQ visibility
AU773485B2 (en) Automated trading exchange system having integrated quote risk monitoring and integrated quote modification services
US7818248B2 (en) Network and method for trading derivatives
US8478687B2 (en) Automated trading system in an electronic trading exchange
US8756142B1 (en) Computer-implemented securities trading system
US7467110B2 (en) Method for market making
US7617144B2 (en) Auction market with price improvement mechanism
US6687681B1 (en) Method and apparatus for tax efficient investment management
AU2007309219B2 (en) System and method for prioritized data delivery in an electronic trading environment
US7340430B2 (en) Real-time trading system
US5101353A (en) Automated system for providing liquidity to securities markets
US8751363B2 (en) System and method for executing strategy security trading
US8583535B2 (en) Operation of auctions over computer networks
US7974906B2 (en) System and method for estimating and optimizing transaction costs
US20020013753A1 (en) Order matching system
US10304097B2 (en) System and method for controlling the disclosure of a trading order
US7991685B2 (en) Methods and systems for purchase of commodities
US20050144061A1 (en) Method of and apparatus for forecasting the price of a commodity
US20070055607A1 (en) Midpoint matching system
US7739182B2 (en) Machine learning automatic order transmission system for sending self-optimized trading signals
McGowan The rise of computerized high frequency trading: use and controversy
AU2005208977B2 (en) System and method for matching trading orders
CA2558315C (en) Method and system for optimal pricing and allocation

Legal Events

Date Code Title Description
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 BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

AK Designated states

Kind code of ref document: A2

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR 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 NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

121 Ep: the epo has been informed by wipo that ep was designated in this application
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

AL Designated countries for regional patents

Kind code of ref document: C1

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 BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

D17 Declaration under article 17(2)a
AK Designated states

Kind code of ref document: C1

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR 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 NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS (R.69(1) EPC) (EPO FORMS 2524 DATED11.04.03 AND 16.05.03)

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase in:

Ref country code: JP