U.S. patent application number 13/839029 was filed with the patent office on 2013-10-24 for acquiring people.
This patent application is currently assigned to CFPH, LLC. The applicant listed for this patent is CFPH, LLC. Invention is credited to Michael R. Burns, Timothy M. Keiser.
Application Number | 20130282551 13/839029 |
Document ID | / |
Family ID | 46279418 |
Filed Date | 2013-10-24 |
United States Patent
Application |
20130282551 |
Kind Code |
A1 |
Keiser; Timothy M. ; et
al. |
October 24, 2013 |
ACQUIRING PEOPLE
Abstract
Systems and methods are disclosed for displaying to a user,
names associated with a plurality of real persons, wherein each
person can be acquired by the user at a respective monetary value,
displaying to the user a value of an account, receiving from the
user a request to acquire a person, responsive to the request,
reducing the value of the account by a monetary value of the
acquired person, and displaying to the user the name of the
acquired person.
Inventors: |
Keiser; Timothy M.; (Los
Angeles, CA) ; Burns; Michael R.; (Los Angeles,
CA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
CFPH, LLC; |
|
|
US |
|
|
Assignee: |
CFPH, LLC
New York
NY
|
Family ID: |
46279418 |
Appl. No.: |
13/839029 |
Filed: |
March 15, 2013 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
09465607 |
Dec 17, 1999 |
|
|
|
13839029 |
|
|
|
|
09184571 |
Nov 2, 1998 |
6505174 |
|
|
09465607 |
|
|
|
|
08620906 |
Mar 25, 1996 |
5950176 |
|
|
09184571 |
|
|
|
|
Current U.S.
Class: |
705/37 |
Current CPC
Class: |
G06Q 10/063 20130101;
G06Q 40/00 20130101; G06Q 40/06 20130101; G06Q 40/04 20130101 |
Class at
Publication: |
705/37 |
International
Class: |
G06Q 40/04 20060101
G06Q040/04 |
Claims
1. A method comprising, displaying by one or more servers to a user
a list of names associated with a plurality of real persons,
wherein each person can be acquired by the user at a respective
monetary value, and wherein multiple different users can acquire
the same person; displaying by the one or more servers to the user
a portfolio of persons acquired by the user; displaying by the one
or more servers to the user a value of an account, wherein the
value of the account represents virtual currency; receiving by the
one or more servers from the user a request to acquire another
person from the displayed list of names; responsive to the request:
reducing by the one or more servers the value of the account by a
monetary value of the another person; and adding by the one or more
servers the another person to the portfolio; and displaying by the
one or more servers to the user the portfolio of persons acquired
by the user, wherein the displayed portfolio includes the another
person.
2. The method of claim 1, further comprising, responsive to an
action by the user, removing an acquired person from the portfolio
and increasing the value of the account.
3. An apparatus comprising, one or more processors; and a tangible
computer readable medium having one or more programs stored thereon
that when executed by the one or more processors direct the one or
more processors to: display to a user a list of names associated
with a plurality of real persons, wherein each person can be
acquired by the user at a respective monetary value, and wherein
multiple different users can acquire the same person; display to
the user a portfolio of persons acquired by the user; display to
the user a value of an account, wherein the value of the account
represents virtual currency; receive from the user a request to
acquire another person from the displayed list of names; responsive
to the request: reduce the value of the account by a monetary value
of the another person; and add the another person to the portfolio;
and display to the user the portfolio of persons acquired by the
user, wherein the displayed portfolio includes the another
person.
4. The apparatus of claim 3, wherein the one or more programs, when
executed by the one or more processors, further direct the one or
more processors to: responsive to an action by the user, remove an
acquired person from the portfolio and increasing the value of the
account.
5. A method comprising, displaying by one or more servers to a
user, names associated with a plurality of real persons, wherein
each person can be acquired by the user at a respective monetary
value; displaying by the one or more servers to the user a value of
an account; receiving by the one or more servers from the user a
request to acquire a person; responsive to the request, reducing by
the one or more servers the value of the account by a monetary
value of the acquired person; and displaying by the one or more
servers to the user the name of the acquired person.
6. The method of claim 5, further comprising displaying to the user
a list of names of persons acquired by the user.
7. The method of claim 5, further comprising displaying to the user
a list of names of persons acquired by the user and a monetary
value at which the respective person was acquired.
8. The method of claim 5, further comprising adding the acquired
person to a portfolio of persons acquired by the user.
9. The method of claim 8, further comprising, responsive to an
action by the user, removing the acquired person from the portfolio
and increasing the value of the account.
10. The method of claim 5, wherein the value of the account
represents virtual currency.
11. The method of claim 5, wherein multiple different users can
acquire the same person.
12. The method of claim 5, wherein the one or more servers
determine, at least in part, the monetary value at which the user
acquires the acquired person.
13. The method of claim 5, wherein the monetary value at which the
user acquires the acquired person is based at least in part on data
about the person.
14. An apparatus comprising, one or more processors; and a tangible
computer readable medium having one or more programs stored thereon
that when executed by the one or more processors direct the one or
more processors to: display to a user, names associated with a
plurality of real persons, wherein each person can be acquired by
the user at a respective monetary value; display to the user a
value of an account; receive from the user a request to acquire a
person; responsive to the request, reduce the value of the account
by a monetary value of the acquired person; and display to the user
the name of the acquired person.
15. The apparatus of claim 14, wherein the one or more programs,
when executed by the one or more processors, further direct the one
or more processors to display to the user a list of names of
persons acquired by the user.
16. The apparatus of claim 14, wherein the one or more programs,
when executed by the one or more processors, further direct the one
or more processors to display to the user a list of names of
persons acquired by the user and a monetary value at which the
respective person was acquired.
17. The apparatus of claim 14, wherein the one or more programs,
when executed by the one or more processors, further direct the one
or more processors to add the acquired person to a portfolio of
persons acquired by the user.
18. The apparatus of claim 14, wherein the one or more programs,
when executed by the one or more processors, further direct the one
or more processors to: responsive to an action by the user, remove
the acquired person from the portfolio and increasing the value of
the account.
19. The apparatus of claim 14, wherein the value of the account
represents virtual currency.
20. The apparatus of claim 14, wherein multiple different users can
acquire the same person.
21. The apparatus of claim 14, wherein the apparatus determines, at
least in part, the monetary value at which the user acquires the
acquired person.
22. The apparatus of claim 14, wherein the monetary value at which
the user acquires the acquired person is based at least in part on
data about the person.
Description
[0001] This application is a continuation of U.S. application Ser.
No. 09/184,571, filed Nov. 2, 1998 which is a continuation-in-part
of U.S. Pat. No. 5,950,176, issued Sep. 7, 1999.
BACKGROUND OF THE INVENTION
[0002] This invention relates in general to computer-implemented
financial systems, and in particular to an improved automated
securities trading system.
[0003] Computer-implemented securities trading systems are well
known in the art. One such system is that disclosed in U.S. Pat.
No. 4,674,044, issued to Kalmus et al., entitled "Automated
Securities Trading System", and incorporated by reference herein.
These computer-implemented securities trading systems obtain bid
and asked trades based on the bid and asked prices. However, there
is generally still a human component to such systems.
[0004] For example, most financial markets also employ one or more
market makers called "specialists." These specialists fill customer
orders from the specialist's inventory position if there are no
matches for the customer orders in the open market. In the prior
art, the specialist function is not automated, but is performed by
a firm or individual. Thus there is a need in the art for an
improved computer-implemented trading system that includes an
automated specialist function to create a market for the securities
traded and to lessen the volatility of smaller securities
markets.
BRIEF SUMMARY OF THE INVENTION
[0005] To overcome the limitations in the prior art described
above, and to overcome other limitations that will become apparent
upon reading and understanding the present specification, the
present invention discloses method, apparatus and article of
manufacture for a computer-implemented financial management system
that permits the trading of securities via a network. In accordance
with the present invention, a server computer receives buy and sell
orders for derivative financial instruments from a plurality of
client computers. The server computer matches the buy order to the
sell orders and then generates a market price through the use of a
virtual specialist program executed by the server computer. The
virtual specialist program responds to an imbalance in the matching
of the buy and sell orders.
[0006] An object of the present invention is to lessen the price
volatility of derivative financial instruments traded in narrower
markets.
[0007] A feature of the present invention is a virtual specialist
program that engages in trading in the market to offset the price
volatility and to provide liquidity to the market.
BRIEF DESCRIPTION OF THE DRAWINGS
[0008] Referring now to the drawings in which like reference
numbers represent corresponding parts throughout:
[0009] FIG. 1 shows a block diagram of an exemplary hardware
environment of the present invention;
[0010] FIG. 2 shows a flowchart illustrating the general logic of a
first embodiment of the present invention;
[0011] FIG. 3 shows a flowchart illustrating the logic of the
pricing/trading program of the first embodiment of the present
invention;
[0012] FIG. 4 shows a flowchart illustrating the logic of the
generate market price program of the first embodiment of the
present invention;
[0013] FIG. 5 shows a flow diagram illustrating the logic of the
virtual specialist program of the first embodiment of the present
invention;
[0014] FIG. 6 shows a flow diagram illustrating the logic of the
stop trading program of the first embodiment of the present
invention;
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0015] According to the present invention, a computer-implemented
trading system is provided for derivative financial instruments.
The computer-implemented trading system accepts buy and sell orders
from traders for the derivative financial instruments, sets a
market price based on the supply and demand, and participates in
the market as a trader in order to minimize price volatility. One
embodiment of the present invention is a computer-implemented
Hollywood Stock Exchange (HSX), which may be implemented as a
simulation (i.e., game) or as an actual trading system for
derivative financial instruments representing movies, talent, CDs,
and television programs. These derivatives could be purchased with
virtual currency known as Hollywood dollars (H$) which are
controlled by a virtual reserve bank program.
[0016] In one representative embodiment of the present invention,
the derivative financial instruments are identified by a Current
Trading List displayed for the traders that comprises a list of
movies in various stages of production, talent, and other
entertainment-oriented assets. The list contains: [0017] name of
the derivative financial instrument; [0018] genre of the movie
(action-adventure, mystery, western, comedy, etc.); [0019]
production status (scripting, pre-production, filming, editing,
release, home-video, etc.); [0020] number of shares in circulation;
[0021] last trading price (printed every 15 minutes) [0022] price
movement (i.e. +/-H$) since the previous midnight (PST); [0023]
price movement since the previous mid-day; price movement year to
date;
[0024] Traders can view the list sorted by:
[0025] name, alphabetically; [0026] genre, alphabetically; [0027]
productions status, alphabetically; [0028] most active (number of
shares traded yesterday);
[0029] biggest gainers;
[0030] biggest losers; and
[0031] fastest movers today (e.g., fastest 20 movers up and fastest
20 movers down).
[0032] Similar information would be provided for other derivative
financial instruments offered on the Hollywood Stock Exchange.
[0033] Each trader's portfolio is identified by a Portfolio data
structure that comprises the trader's account status. This
information includes:
[0034] the amount of cash in the trader's account (paid interest at
the system discount rate plus some increment, compounded
daily);
[0035] current percentage rate paid on cash balances;
[0036] the total value of held stocks at the last selling
price;
[0037] the total value of held bonds at the last selling price;
[0038] total portfolio value (TPV) (cash+bonds+stocks);
[0039] percentage of TPV in cash;
[0040] percentage of TPV in bonds; and
[0041] percentage of TPV in stocks.
[0042] Traders can generate any number of different reports for
display, including: [0043] Lists of stocks and bonds being traded
(see above); index of total Hollywood stocks (HSXI) expressed as a
number, with 1000 defined as the aggregate total stock price value
on opening day, wherein HSXI=(today's gross stock-value)/(opening
day gross stock-value); [0044] index of total Hollywood bonds
(HBXI) expressed as a number, with 1000 defined as the aggregate
total bond price value on opening day, wherein HBXI=((today's gross
bond-value)/(opening day gross bond-value)); [0045] index of total
Hollywood Stock Exchange (HMXI) comprised of all stocks and bonds,
and expressed as a number, with 1000 as the aggregate total stock
price value on opening, wherein HMXI=((today's gross
market-value)/(opening day gross market-value)); [0046] lists of
the top market performers, e.g., the top 10 traders in percentage
portfolio growth calculated as net portfolio value-change=(% change
of cash)+(% change of stocks)+(% change of bonds), and for each of
the categories: yesterday (midnight to midnight), last week (7
days, ending midnight, each Thursday), last month (closes at
midnight last calendar day of month), last quarter (closes at
midnight on last day of last month/quarter), year-to-date (running
daily total of percentage value changes)/(days for year-to-date),
and annually (closes at midnight on December 31 each year); [0047]
overall market condition report, including a list of stopped issues
with:
[0048] name;
[0049] last trading price;
[0050] time that stop-trade condition occurred;
[0051] percentage the issue actually moved on-the-day before the
stop-trade;
[0052] number of total shares and/or bonds traded today;
[0053] dollar value of total trades today;
[0054] number of buy and sell trades today; and
[0055] number of buy and sell trades this month.
[0056] Use of the above information guides traders in making future
buy and sell orders:
[0057] With reference to FIG. 1, a block diagram illustrates an
exemplary hardware environment for one embodiment of the present
invention. More particularly, a typical distributed computer system
is illustrated, which uses the Internet 10 to connect client
computers 12 executing for example, Web browsers, to server
computers 14 executing a computer program embodying the present
invention. A typical combination of resources may include client
computers 12 that are personal computers or work stations connected
via the Internet 10 to server computers 14 that are personal
computers, work stations, minicomputers, or mainframes.
[0058] Generally, both the client computers 12 and the server
computers 14 are comprised of one or more CPUs 16, various amounts
of RAM storing computer programs 20 and other data, and other
components typically found in computers. In addition, both the
client computers 12 and the server computers 14 may include one or
more monitors, and fixed or removable data storage devices 20 such
as hard disk drives, floppy disk drives, and/or CD-ROM drives.
Also, input devices, such as mouse pointing devices and keyboards,
may be included.
[0059] Both the client computers 12 and the server computers 14
operate under the control of an operating system, such as Windows,
Macintosh, UNIX, etc. Further, both the client computers 12 and the
server computers 14 each execute one or more computer programs 18
under the control of their respective operating systems. The
present invention is preferably implemented as one or more computer
programs 18 executed by the server computer 14, although in
alternative embodiments these computer programs 18 may also be
executed on the client computer 12.
[0060] Generally, the computer programs 18 implementing the present
invention are tangibly embodied in a computer-readable medium,
e.g., one or more of the fixed and/or removable data storage
devices 20 attached to the computer. Under control of the operating
system, the computer programs 18 may be loaded from the data
storage devices 20 into the RAM of the computer for subsequent
execution by the CPU 16. The computer programs 18 comprise
instructions which, when read and executed by the computer; causes
the computer to perform the steps necessary to execute the steps or
elements of the present invention.
[0061] Those skilled in the art will recognize that the exemplary
environment illustrated in FIG. 1 is not intended to limit the
present invention. Indeed, those skilled in the art will recognize
that other alternative hardware environments may be used without
departing from the scope of the present invention.
[0062] With reference to FIG. 2, a flowchart illustrates the
general logic of one embodiment of the present invention. Block 200
represents the server computer 14 waiting for the next event to
occur. Once the event occurs, control is transferred to blocks
202-224 to identify the event and respond accordingly.
[0063] Block 202 is a decision block that represents the server
computer 14 determining whether it received a request to display
data from the client computer 12. If so, block 204 represents the
server computer 14 transmitting data to the client computer 12 for
subsequent display. The data transmitted for display preferably
includes at least three types of data: the current list of trading
derivative financial instruments, the trader's portfolio, and other
reports generated by the server computer 14.
[0064] Block 206 is a decision block that represents the server
computer 14 determining whether it received a request to submit a
buy order from the client computer 12 for a particular derivative
financial instrument, e.g., stock or bond. If so, block 208
represents the server computer 14 processing the buy order by
placing it in a queue in the memory of the server computer 14. The
buy order is a data structure comprising: [0065] trader's account
number; [0066] trader's name; [0067] the time and date of the
order; [0068] the stock or bond to buy; [0069] the cash balance in
the trader's account; and [0070] a text-field where the trader may
enter the total number to buy (generally in multiples of 100).
[0071] In one embodiment of the present invention, the buy order
waits in the queue for the expiration of a predetermined "sweep
pricing cycle." The sweep pricing cycle occurs periodically, such
as every 15 minutes, or during another specified time interval. The
market price the trader actually pays for the derivative financial
instrument is determined by the aggregate supply/demand for the
derivative financial instrument at the end of the sweep pricing
cycle during which the order was placed.
[0072] The market price is set by the pricing/trading program
executed by the server computer, which is described below in FIG.
3. The trader's account is then charged the market price for the
derivative financial instrument. If the purchase uses up all
available cash in the trader's account, the trader is "loaned"
enough money to pay for the purchase, and their account is charged
interest at a predetermined rate, e.g., 18% a year compounded
daily, on the negative account balance. The interest is charged
against the trader's account until they accumulate more cash to
zero out the balance, either by selling stocks or buying
dollars.
[0073] Block 210 is a decision block that represents the server
computer 14 determining whether it received a request to submit a
sell order from the client computer 12. If so, block 212 represents
the server computer 14 processing the sell order by placing it in
queue in the memory of the server computer 14. The sell order is a
data structure comprising: [0074] trader's account number; [0075]
trader's name; [0076] the time and date of the order; [0077] the
stock or bond to sell; [0078] the amount of the stock or bond in
the trader's account; and [0079] a text-field where the trader may
enter the total number to sell (generally in multiples of 100).
[0080] Like the buy order, the sell order waits in the queue for
the expiration of the predetermined sweep pricing cycle. The market
price at which the trader actually sells the derivative financial
instrument is determined by the aggregate supply/demand for the
derivative financial instrument at the end of the sweep pricing
cycle during which the order was placed. The market price is set by
the pricing/trading program executed by the server computer, which
is described below in FIG. 3. The trader's account is then credited
with the market price for the derivative financial instrument.
[0081] The sell order can be either produced by a trader or
generated by the server computer 14, as will be explained in more
detail below. For a sell order produced by a trader, he views his
list of stocks or bonds on a monitor attached to the client
computer and chooses to sell a quantity at the market price.
[0082] When the trader requests to view the list of stocks, the
server computer 14 transmits certain information to the client
computer 12 for display, including, for each stock owned, the last
trading price (LTP), the quantity of stocks, the purchase price,
and the date purchased, Similarly, when viewing the list of bonds,
the server computer 14 transmits certain information to the client
computer 12 for display, including, for each bond owned, the last
trading price (LTP), the interest rate being earned for each kind
of bond, the quantity of bonds, the purchase price, and the date
purchased.
[0083] Block 214 is a decision block that represents the server
computer 14 determining whether an internal timer for the sweep
pricing cycle has expired. If so, block 216 represents the server
computer 14 executing a pricing/trading program as described in
FIG. 3.
[0084] Block 218 is a decision block that represents the server
computer 14 determining whether it received a request to change the
discount rate. If so, block 220 represents the server computer 14
executing a discount rate program. In order to add or subtract
liquidity, the server computer 14 occasionally steps in to act as a
virtual reserve bank program and adjust the discount rate. The
discount rate is adjusted based on the performance of the specific
industry of the market. For the Hollywood Stock Exchange, the
discount rate is adjusted to add or subtract liquidity to affect
the growth of the entertainment industry. When the server computer
14 lowers the discount, all the bonds seem to be a better deal,
because the bonds are paying a fixed rate interest that never
changes. This encourages traders to buy more bonds, and such surge
in buying demand causes a correlated increase in bond prices as
described above. The same thing happens to stocks, because traders
are making less money on the interest being paid on the cash
balance in their trading account. When the server computer 14
raises the discount rate, the bonds seem to be a worse deal, since
their advantage over the discount is smaller. Thus, the server
computer 14 relaxes the buying pressures or demands for bonds,
which should result in additional sell orders, or at least slow the
buying of bonds, thus decreasing their prices as they trade in the
market. Likewise, stocks seem less attractive, since traders could
make more money by keeping cash in their accounts and getting
interest on it.
[0085] Block 222 is a decision block that represents the server
computer 14 determining whether it received a request to revise the
derivative list. If so, block 224 represents the server computer 14
executing a listing program. The server computer 14 determines
whether the list of derivatives trading in the system should be
revised. The list could be revised to reflect new derivative
offerings, expired derivatives, and delisted derivatives.
[0086] When a new derivative is offered, the price is based on the
derivative's potential value. For example, for a new stock
offering, which represents a movie on the Hollywood Stock Exchange,
the initial price of the stock could be based on the movie's
potential box office revenue. For a bond offering, which represents
talent on the Hollywood Bond Exchange, the price of the bond could
be based on the Hollywood Reporter's Star Power Index. A bond
representing a talent with a low Star Power Index of 15 would be
issued with a higher yield than a bond representing a talent with a
high Star Power Index rating.
[0087] A warrant with a strike price is attached to the new
derivative when it is offered. When the derivative and warrant are
first issued, the warrant is of no value until the strike price is
reached. For a stock, the strike price could be reached after the
movie has grossed a certain level of revenue. When a derivative is
delisted from the exchange, a stock due to the movie ending its
production run or a talent due to retirement or death, for example,
the warrants are called and the traders are paid the value of the
warrants, thus providing off-balance sheet financing for
studios.
[0088] With reference to FIG. 3, a flowchart illustrating the logic
of the pricing/trading program of the present invention is shown.
Block 300 represents the server computer 14 retrieving the buy and
sell orders that have accumulated in the queue during the period
since the prior sweep pricing cycle. Block 302 represents the
server computer 14 matching the buy orders with the sell orders,
although it is likely than an identical number of buy and sell
orders would not have accumulated in the queue during the period.
Block 304 represents the server computer 14 executing the generate
market price program described in FIG. 4 to determine the market
price for the derivative financial instruments. After the market
price is determined, block 306 represents the server computer 14
updating the traders' portfolios to reflect the buy and sell orders
in the queue being processed at the market price. Block 308
represents the end of the pricing/trading program.
[0089] With reference to FIG. 4, a flowchart illustrating the logic
of the generate market price program of the present invention is
shown. One purpose of the generate market price logic is to
generate a market price for a derivative financial instrument that
reflects the demand or lack of demand for the derivative financial
instrument in the market. Block 400 represents the server computer
14 measuring the imbalance between the buy and sell orders during
the period since the prior sweep pricing cycle. Block 402
represents the server computer 14 determining the price movement of
a derivative financial instrument caused by the imbalance in buy
and sell orders. Block 404 represents the server computer 14
executing a virtual specialist program as described in FIG. 5 to
provide stability and liquidity to the market. Block 406 represents
the server computer 14 executing the stop trade program, as
described in FIG. 6, to stop trading in a derivative financial
instrument if the projected price movement is excessive during the
trading day and threatens the integrity of the market for that
instrument. Block 408 represents the server computer 14 setting the
market price, which becomes the price the pricing/trading program
uses to update the traders' portfolios. Block 410 represents the
end of the generate market price program.
[0090] In measuring the imbalance between buy and sell orders, as
represented by block 400, the absolute difference between the
number of sells and the number of buys is defined as the net
movement in sweep (NMS). A sweep increment variable (SIV) is
defined as the increase or decrease in price caused by an
incremental imbalance in the number of buy orders and sell orders.
A lot movement variable (LMV) represents the incremental lot size
that will result in a price increase or decrease of one SIV. The
projected price movement (PM) can be expressed as:
PM=(NMS/LMV)*SIV.
[0091] For example, with 42,000 buy orders and 30,000 sell orders
for a particular stock, the NMS=(42,000-30,000)=12,000. With
SIV=$0.25 and LMV=5000, the price movement of the particular stock
will be (12,000/5,000)*0.25=$0.50. Thus, the market price of the
particular stock will be $0.50 greater than the last trading
price.
[0092] With such pricing scheme, there is the potential for great
volatility in the price of a derivative financial instrument and
the eventual loss of investor confidence in the market mechanism.
In exchanges such as the Hollywood Stock Exchange, it would be
possible for one or more individuals to pursue trading strategies
that would purposely cause drastic price fluctuations.
[0093] In order to encourage growth and stability in the capital
market regulated by the trading system of the present invention, a
virtual specialist program is executed by the server computer, as
represented by block 404 in FIG. 4. In executing the virtual
specialist program, the server computer 14 regulates the trading by
actively trading in the market out of a virtual specialist
portfolio (VSP). In one embodiment of the present invention, the
virtual specialist program portfolio initially contains half of all
the issued shares of each derivative financial instrument.
[0094] With reference to FIG. 5, a flow diagram illustrating the
logic of the virtual specialist program of the present invention is
shown. Block 500 is a decision block that represents the server
computer 14 determining whether the price movement during the sweep
pricing cycle is greater or equal to an adjusted price movement
threshold (APT). The APT is a constant in the memory of the server
computer 14. If the APT is greater than the price movement, then
the server computer 14 does not trade in the market. If the price
movement is greater than or equal to the APT, then the server
computer 14 trades out of a virtual specialist program portfolio.
The level of trading by the server computer 14 is determined by the
amount that the price movement exceeded the APT. The greater the
price movement, the more shares the server computer 14 trades to
offset the price movement.
[0095] In an exemplary embodiment of the present invention, the
ATP=1.25 and the server computer 14 performs the following steps:
if PM=APT then the server computer 14 matches 10% of unmatched
shares; if PM=APT+0.25 then the server computer 14 matches 20% of
unmatched shares; if PM=APT+0.50 then the server computer 14
matches 30% of unmatched shares; if PM=APT+0.75 then the server
computer 14 matches 40% of unmatched shares; if PM=APT+1.0 then the
server computer 14 matches 50% of unmatched shares; if PM=APT+1.25
then the server computer 14 matches 60% of unmatched shares; if
PM=APT+1.50 then the server computer 14 matches 70% of unmatched
shares; if PM=APT+1.75 then the server computer 14 matches 80% of
unmatched shares.
[0096] Block 502 represents the server computer 14 generating a buy
or a sell order to offset the price movement. The buy or sell order
generated by the server computer 14 is placed in the queue with the
trader buy and sell orders to be processed during the next sweep
cycle.
[0097] In one embodiment of the present invention, since the
virtual specialist program portfolio initially includes half of all
the securities traded, the server computer 14 could eventually
deplete the virtual specialist program portfolio or cause the
virtual specialist program portfolio to own all the shares of a
stock. In order to maintain a balanced virtual specialist program
portfolio, and provide some liquidity to the market, the server
computer 14 generates additional buy and sell orders to offset
orders generated in response to the price movement exceeding the
APT. Block 504 represents the server computer 14 generating timed
buy and sell orders. In one embodiment of the invention, the server
computer 14 assesses each stock and each bond in the virtual
specialist program portfolio. The server computer 14 determines the
deficit or surplus in the item, and then places 1/288.sup.th of the
deficit as a "timed recovery order" into each successive 15 minute
segment for the next 3 days. When the pricing/trading program 255
matches buy and sell orders as represented by block 320, the
pricing/trading program 255 includes any "timed recovery orders"
outstanding for the last 3 days in the sweep. These orders are
matched with the traders' buy and sell orders. Block 506 represents
the end of the virtual specialist program.
[0098] FIG. 6 is a flow diagram illustrating the logic of the stop
trading program of the present invention. Block 600 represents the
server computer 14 determining the price movement of a stock caused
by the imbalance in buy and sell orders. Block 602 represents the
server computer 14 measuring the price movement on the day, not
just during the sweep cycle period. Block 604 is a decision block
that represents the server computer 14 determining whether the net
price movement (NPM) within one "trading day" (i.e.,
midnight-midnight) is greater than 50% up or down. As represented
by block 606, the buy and sell orders are removed from the queue if
the net price movement is greater than 50% for a stock trading
above $20. At that point, the trading in that issue is stopped
within the 15 minute period until further notice. All orders (buy
and sell) for that stock during this sweep are unfilled. The
trading has stopped due to "excessive order imbalance".
[0099] For example, let it be assumed that the Last Trading Price
(LTP) for "Rambo-17" is $67(+7.5 on-the-day). During one 15-minute
sweep pricing cycle, the server computer 24 receives buy orders for
655,000 shares of "Rambo-17". In addition, the server computer 14
receives sell t1 orders for 35,000 shares of "Rambo-17" during the
same sweep pricing cycle. The server computer 14 evaluates the
price movement for the sweep pricing cycle, and tests it to see if
the net projected price movement "on-the-day" is greater than 50%.
If it would be greater than 50%, it stops trading in that
instrument only. In this example, there is a net order-imbalance of
620,000 shares, which would create an up movement in price of
(+620,000/5000)*$0.25=+$31.00. Since the total movement on the day
would be the $7.50 so far plus the additional $31.00, the net
projected price movement on the day would be $31.00+$7.50=$38.50.
If the opening price that day was $59.50, the percentage projected
price movement for the day is $38.50/$59.50=64%. Since the
projected net price movement would be greater than 50%, the trading
is stopped for that instrument. If the projected price movement was
less than 50%, the price of the instrument would be adjusted
accordingly and trade in that stock continued. Block 608 represents
the STOP TRADE order that issues regarding the particular stock.
Traders who issued a buy or sell order for the stock are notified
that the order has not been filled due to excessive order imbalance
during the trading day. Finally, block 610 represents the end of
the stop trading program.
[0100] While the invention has been described and illustrated in
connection with preferred embodiments, many variations and
modifications as will be evident to those skilled in this art may
be made without departing from the spirit and scope of the
invention, and the invention is thus not to be limited to the
precise details of methodology or construction set forth above as
such variations and modification are intended to be included within
the scope of the invention.
* * * * *