WO2001027836A9 - Real-time commodity trading method and apparatus - Google Patents

Real-time commodity trading method and apparatus

Info

Publication number
WO2001027836A9
WO2001027836A9 PCT/US2000/027853 US0027853W WO0127836A9 WO 2001027836 A9 WO2001027836 A9 WO 2001027836A9 US 0027853 W US0027853 W US 0027853W WO 0127836 A9 WO0127836 A9 WO 0127836A9
Authority
WO
WIPO (PCT)
Prior art keywords
trading
stop
offer
computer
queue
Prior art date
Application number
PCT/US2000/027853
Other languages
French (fr)
Other versions
WO2001027836A1 (en
Inventor
Dmitry A Raykhman
Original Assignee
Rfv Holdings Ltd
Dmitry A Raykhman
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
Application filed by Rfv Holdings Ltd, Dmitry A Raykhman filed Critical Rfv Holdings Ltd
Publication of WO2001027836A1 publication Critical patent/WO2001027836A1/en
Publication of WO2001027836A9 publication Critical patent/WO2001027836A9/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Definitions

  • the present invention relates to a real-time trading method.
  • the present invention also relates to a real-time trading method.
  • the present invention also relates to a real-time trading method.
  • the present invention also relates to a real-time trading method.
  • the present invention also relates to a real-time trading method.
  • invention relates to a method and apparatus for trading a commodity such as a currency in real
  • the present invention aims to provide a method and/or computer system for
  • the present invention is directed to a
  • the present invention is directed to a computer implemented method and a system including programmed general purpose digital computers on a computer network for
  • the present invention provides a commodity trading method and/or system which
  • the individual trader is provided with accurate information, for example, as to
  • a method and/or system in accordance with the present invention enables the trading
  • a method and/or system in accordance with the invention is easy to use and provides
  • a computer network (e.g., the Internet) comprises, in accordance with the present invention
  • stop amount for the trading offer (e) automatically or electronically comparing the total stop
  • the total stop amount may include a base stop amount and a slippage amount for
  • the method may further comprise automatically allocating or reserving the total stop
  • the digital signal is transmitted
  • trader account is preferably, but not necessarily, performed by a client or trader computer
  • the calculating of the total stop amount may include automatically multiplying a
  • trading offer additionally includes identification
  • the calculating of the total stop amount includes
  • the method further comprises
  • a prompt e.g., a text field
  • a prompt e.g., a text field
  • a prompt e.g., a text field
  • limit value or time period is forwarded to the server computer together with the trading offer.
  • the selected time period is more preferably not communicated to the server
  • the time period is tracked by the client computer, which automatically
  • At a client or trader computer connected to a computer network e.g., the Internet
  • a computer network e.g., the Internet
  • the commodity is received via a computer network.
  • the bids are displayed in a first monotonic
  • a computer input device such as a keyboard or mouse is
  • an order signal Upon receipt of such a signal, an order signal
  • This order signal is transmitted over the computer network to a server computer. This order signal is treated by
  • the method further comprises steps of (a)
  • prompts include one for entry of a stop value and the client or trader
  • trading offer includes transmission of the respective stop value to the server computer.
  • server computer generally only stores the stop value as a part of the trading offer, unless the
  • the queue entry may include the stop
  • computer may publish or distribute the stop bids and stop offers to various trading
  • stop bid e.g., a stop bid
  • the prompts on the trading screen include one for entry of a limit value and the client or trader computer determines that the trading offer includes a respective limit value
  • the forwarding the trading offer includes transmission of the respective limit value to the
  • the prompts displayed on the monitor of the client or trader computer may include a
  • the client computer operates to determine whether each entered
  • trading offer includes a respective time period. If so, the client computer tracks the time
  • client or trader computer are controlled by a program downloaded over the computer network.
  • the program enables and controls the displaying of the bids and the offers on the
  • Such downloading may occur from a Web site independent of the server computer.
  • the trading program may be loaded from a CD ROM drive or a floppy drive.
  • the client or trader computer is a general purpose digital computer with a monitor and
  • a display control operatively connected to the register for displaying the bids and the offers in a predetermined format on the monitor, (v) a command recognition
  • command recognition circuit being operatively linked to the display control
  • command relay or formatting circuitry operatively connected to the command recognition
  • the client or trader computer In accordance with a feature of the present invention, the client or trader computer
  • a stop computation circuit operatively connected to the command
  • comparison circuitry storing an available amount in a client account of the client, comparison circuitry
  • command relay circuitry is programmed to transmit
  • the total stop amount is less than or equal to the available amount in the memory.
  • total stop amount is less than the available amount in the client account, the client or trader
  • the stop computation circuit may include a second or additional register storing a default stop per unit of the commodity and a multiplier connected to the additional register
  • the default stop includes a base default stop value and a default
  • the total stop amount thus includes a base stop amount and a slippage
  • trading offer additionally includes identification of a stop amount per unit
  • the stop computation circuit includes a multiplier operatively connected to
  • the first register of the client or trader computer may be a portion of the general
  • the update module includes
  • circuits programmed to recognize that an incoming signal encodes bids and offers and to store
  • the communication component receives and decodes incoming data.
  • computer may be a portion of the general memory of the computer which has been segregated
  • trader computer is operatively coupled to the computer network and the display control for
  • the entire trading program may be alternatively downloaded from an independent source
  • the display format may include prompts for entry of a stop value
  • the command relay circuitry includes a limit value and a time period for validity of the trading offer.
  • period triggers tracking thereof by the client computer to determine when the trading offer is
  • the client or trader computer may have a third register or memory area storing
  • the position data includes a commodity
  • the display format includes an area for listing the position
  • first window or display area includes a first window or display area and a second window or display area disposed side by
  • the first display area listing the bids in a first
  • These display areas may also display stop bids and stop offers in respective monotonic orders,
  • server computer is programmed to broadcast or distribute such information to
  • stop bids and stop offers permits selected from the plurality of participating traders.
  • the display of stop bids and stop offers permits selected from the plurality of participating traders.
  • the server computer is likewise a general purpose digital computer modified by
  • the first digital signal encoding a trading offer
  • the server computer may further comprise a
  • stop computation circuit operatively connected to the interface for automatically computing a
  • a memory storing an amount in a client account
  • a posting module is operatively connected to the interface and the comparison
  • the server computer instead of calculating a total stop amount prior to posting of a trading offer via the computer network, the server computer waits until it
  • the server computer merely
  • the server computer carried out upon the detection of a match between a bid and an offer, the server computer
  • stops are determined by the trading histories of the individual traders including stops
  • the server computer In accordance with another feature of the present invention, the server computer
  • a queue maintenance unit operatively tied to the interface for supervising a queue
  • the trading offers are ordered or listed by price per commodity unit and
  • the queue more particularly includes a list of bids and a list of offers to sell
  • server computer may further comprise a comparator operatively connected to the queue
  • the server computer generally comprises an administration module operatively linked
  • a client or user computer is thus operatively connected to a computer network for
  • the client or user computer being programmed to
  • the client or user computer being further programmed to recognize
  • the client or user computer being additionally programmed to transmit over the
  • a method for use in trading a commodity comprises (1) generating a trading offer, (2)
  • the slip value may be added to
  • the stop value automatically prior to calculating a total stop amount.
  • the total stop amount is automatically allocated or reserved from the
  • allocated or reserved amount is automatically returned to the client or trader account.
  • acting on the trading offer includes transmitting a digital signal
  • the digital signal is transmitted upon and only upon a determination that the total
  • stop amount is less than an available amount in the client or trader account. It is also possible
  • Another feature of the present invention is directed to the monitoring and execution of
  • a server computer undertaking these actions is connected to a computer network
  • the server computer further comprises a comparator operatively connected to the
  • queue maintenance unit for determining whether a match between a bid and an offer has
  • module is operatively connected to the comparator and the queue maintenance unit for
  • a stop execution module is
  • the order execution module
  • the server computer executes instructions
  • execution module for computing, upon detection by the comparator of the matching bid
  • the position determination module determines whether the position determination module
  • the server computer executes instructions
  • the prices displayed are the actual prices at which trading occurs.
  • a method and an apparatus in accordance with the present invention facilitates the
  • market news and information may be provided on the same
  • information access is facilitated by providing a computer chat service, coupled with the
  • the present invention offers
  • Another advantage provided to market makers is the possibility of stop competition.
  • Participants are able to trade against stop bids and stop offers and more particularly against
  • the present invention enables a
  • the present commodity trading system and method provide a substantial increase in
  • the facilitator or operator of the commodity trading system has several options for
  • a percentage or flat-rate commission is
  • the present invention provides a commodities trading system which is easy to use.
  • Simple instructions and the end-user or trader software are downloaded by a potential user.
  • the user or trader completes an application, optionally transmitted over the Internet to the
  • Fig. 1 is a block diagram of a global computer network or system used for a real-time
  • Fig. 2 is a block diagram of selected functional modules of a server computer shown in Fig. 1.
  • Fig. 3 is a block diagram showing selected functional modules of a client or trader
  • Fig. 4 is a diagram of a display screen provided on a monitor of the client computer
  • Fig. 5 is a flow chart diagram of a log-in process executed by a client or trader
  • Fig. 6 is a flow chart diagram of selected administration routines executed by the
  • server computer of Fig. 1 and more particularly by an administration module shown in Fig. 2.
  • Fig. 7 is a flow chart diagram of an order submission process implemented by a client
  • Figs. 8 A and 8B are a flow chart diagram of trading supervision or order
  • Fig. 9 is a flow chart diagram of an order cancellation process undertaken by a client
  • Fig. 10 is partially a block diagram and partially a flow chart diagram showing
  • Fig. 11 is a block diagram showing, inter alia, selected details of the functional
  • Fig. 12 is a block diagram of a trading offer submission circuit illustrated in Fig. 11.
  • Fig. 13 is a block diagram of selected functional blocks of a trading module illustrated in Fig. 2.
  • the term "trading offer” means an offer to buy (bid) a commodity or an
  • a trading offer to sell (offer) the commodity.
  • a trading offer includes an identification of the target
  • identification may be communicated by context of a trading offer.
  • a trading offer furthermore
  • placing the order is willing to buy or sell the commodity.
  • trading order denotes a trading offer which includes a price
  • the trading order is aware, through the trading system of the present invention, of the pre ⁇
  • a trading order leads to or
  • the prior order would take precedence and preempt the second order.
  • a trader participant's trading order is technically a bid (offer to
  • command input device is used herein to denote a keyboard, a mouse, or
  • commodities include such things as grains, oil, metals, computer memory chips, baseball
  • stop value signifies a net number of points per commodity
  • total stop amount is intended to signify a monetary amount
  • the total stop amount includes a
  • the total stop amount also ⁇
  • the available amount is usually, if not
  • each numerical value is less than or equal to the immediately preceding
  • phraseology are intended to cover both complete and partial deletion of the matching bid and
  • Partial deletion or a bid or offer occurs when there is a
  • program is an indication on a computer screen or display of a
  • a prompt may take the form of a text field or a drop-down list.
  • format means in part a scheme for ordering different pieces
  • a menu a window-type display, an order for
  • a list of data items are all examples of a format.
  • Fig. 1 illustrates a global computer network for realizing a real time trading of a
  • a server computer 10 is connected to a plurality of client or
  • the server computer 10 mediates, supervises and
  • client computers 12 operate under the control of trading
  • the trading software is provided to the respective client or
  • server computer 10 If the processing capacity of server computer 10 is sufficient, however, there is no
  • server computer 10 is configured by its own software to have
  • module 16 broadcasts or transmits and receives trading information via Internet 14.
  • communication module 16 decodes or decrypts incoming digital signals
  • chat-type communications ancillary to the trading process.
  • Administration module 18 controls routine daily processes such as processing log-in
  • Trading module 20 keeps track of all incoming bids (offers to buy) and offers (offers
  • module 20 tracks all bids and offers pertaining to all tradable currencies. Trading module 20 also determines whether there are any matches between the bids and offers pertaining to the
  • trading module 20 takes steps to
  • module 20 maintains queues of stop bids and stop offers and executes on those stops as
  • server computer 10 broadcasts the stop bid and stop
  • Stop validation and execution entails a continuous tracking
  • module 20 adjusts the respective trader's position and the trader's account. This adjustment
  • Message distribution module 22 maintains lists of all private and public chat groups
  • server computer 10 may be distributed
  • Fig. 2 may be executed by a plurality of parallel server computers.
  • the modules of Fig. 2 may be executed by a plurality of parallel server computers.
  • the modules of Fig. 2 may be executed by a plurality of parallel server computers.
  • trading function may be performed for different commodities (e.g., different currencies) by
  • each client or trader computer 12 is configured by the
  • Communication module 24 transmits and receives trading information via Internet 14.
  • This trading information includes bids and offers made by other traders logged in to server 10.
  • the bids and offers each include an identification of the relevant currency, as well as a trading
  • Communication module 24 decodes or decrypts incoming digital signals containing
  • trading information and encodes or encrypts outgoing signals containing trading information
  • Chat messages are
  • Administration module 26 cooperates with administration module 18 of server
  • administration module 26 participates in setting up and monitoring an account of the
  • Another part of the client's account is dynamically tradable, i.e., is utilizable to cover forced
  • available for trading may be a predetermined percentage of the total account, such as 50% or
  • a first portion is
  • incoming bids and offers are displayed by trading book module 28 on a computer monitor, as
  • Trading book module 28 also receives,
  • Trading offers may include stop values
  • trading book module 28 also undertakes credit
  • server computer may allocate funds in the client or trader's
  • Open order list module 30 tracks the individual trader's position and cooperates with
  • Open order list module 30 may also cooperate with server computer 10 in tracking
  • Messaging control module 32 maintains lists of all private chat groups and
  • Order log module 34 maintains a record of all of the transactions during a
  • Order log module may cooperate with server
  • Price discovery quote module 36 displays a price quote process.
  • Fig. 4 illustrates a trading window or screen displayed on a monitor of client or trader
  • the trading screen includes a pair of vertically oriented rectangular areas 38 and 40
  • bids and offers are identified by their respective rates or prices, i.e., at the number of U.S.
  • x4.5 indicates a bid or offer to trade up to 4.5 million yen at a respective exchange rate
  • the best bid is at a trading rate or
  • stop offers are stop offers. These stop bids and stop offers are provided to market makers and
  • the trading screen of Fig. 4 includes a line of four windows 44, 46, 48, 50 wherein the
  • Trading book module 28 (Fig. 3)
  • the fourth window 50 sets forth the profit or loss (1,99.97) that would be
  • the screen of Fig. 4 also includes a pair of "buttons" 52 by which the individual trader
  • buttons 52 submits a bid or offer by the individual trader to buy or sell at market and
  • button 54 transmits a request for price quotes from on-line trading participants.
  • windows 44, 46, 48, 50, and buttons 52 and 54 are executed by trading book module 28.
  • Reference numerals 56 and 58 designate prompts used by the individual trader to make
  • Prompt 56 takes the form of a text field indicating a trading rate or price for the currency of interest.
  • Prompt 58 takes the form of a drop-down list displaying a number of
  • the individual trader has the option of setting a stop value in a bid of offer.
  • field 62 is provided to prompt the trader to enter a stop value prior to a clicking on button 60.
  • An entered stop value may be forwarded as part of a bid or offer to server 10 for distribution
  • Reference numerals 64 and 66 designate text-field and drop-down-list prompts used by
  • Text field 64 prompts the individual trader to enter a trading rate or price
  • text field 64 and an entry of a numerical value, that value appears in text field 64 as a trading
  • Drop-down list 66 prompts the individual trader to enter a number of units of
  • the individual trader has the option of including a limit value in a bid or offer.
  • Window 70 is provided to prompt the trader to enter a limit value prior to a clicking on button 68.
  • An entered limit value may be forwarded as part of a bid or offer to server 10 for
  • a drop-down list 72 prompts the trader to select
  • Another drop-down list 74 and another text field 76 are provided for prompting the
  • Window 74 provides a menu or list
  • text field 76 is provided for the entry of a specific numerical
  • trading book module 28 Further discussion of
  • module 30 components of module 30 to effectuate this display, monitoring and control may be found
  • buttons 78, 80, 82 are provided for enabling a trader to instantly remove his
  • buttons 78 Using a computer mouse to "click" on button 78
  • button 80 causes an extant bid placed by the individual trader to be deleted from
  • button 82 and then on button 80 causes an existing offer placed by the individual trader to be
  • deletions are effectuated through server computer 10.
  • a window 84 displays a series of messages in a chat facility mediated or enabled particularly by messaging control module 32 of the various client or trader computers 12.
  • a "button" 86 is provided for enabling the
  • a menu screen (not shown) may be provided for prompting and
  • keyboard or mouse clicking on a displayed "button" 90 causes the message in text field 88 to
  • distribution module 22 to the various other participants in the particular trader chat session.
  • the message is displayed in window 84 together with an identification or
  • buttons or “keys” 92 are provided for allowing commonly used
  • the trading program may permit an
  • An upper right-hand quadrant of the computer screen or display includes a window 94
  • separate reporting module (not shown) may be provided for calling up from server computer
  • open order list module 30 (Fig. 3).
  • Various options of the trading program are selectable by the individual trader through
  • Chat window 84 and its ancillary window 88 and buttons 86, 90, and 92, and order
  • log window 94 may be omitted from the trading program display in order to allow space for
  • These multiple trading windows may be displayed side by side on the computer screen to
  • rectangles 40 (including stop offer lists), two or more position or each window 44, 46, 48, and
  • each prompt window 56 at least two of each prompt window 56, 58, 64, and 66, etc.
  • client computer 12 and mainly administration module 26 are illustrated in Fig. 5, client computer 12 and mainly administration module 26
  • the client computer 12 then waits for confirmation of the log-in from server computer 10. If
  • the log-in process is terminated at 104. If confirmation is received from the server
  • Client computer 12 uses that incoming information in a step 108, ter alia, to
  • server computer initialize currency data for listing on the display screen of Fig. 4.
  • server computer At log-in, server computer
  • the 10 also transmits account information to the respective client computer 12, as indicated by an arrow 110.
  • the incoming account information is utilized by client computer 12 to initialize
  • server computer 10 provides a newly logged-in
  • Client computer 12 and particularly trading book module 28 (Fig. 3), displays
  • Fig. 6 depicts action undertaken by administration module 18 (Fig. 2) of server
  • administration module 18 processes the log-in information. To that
  • administration module 18 retrieves user or client information from a database 122, as
  • administration module 18 checks whether the
  • administration module 18 If not, administration module 18 generates an
  • administration module 18 retrieves current currency information in
  • administration module 18 retrieves account information for the respective
  • module 18 retrieves current trading information such as open trading offers and orders
  • trading book module 28 (Fig. 3) of client computer 12
  • module 28 detects the entry of a new bid in windows 56 and 58 or a new offer in windows 64
  • module 28 checks the entered price against the currently outstanding bids and offers to
  • trading book module 28 determines whether the entered price jibes with the current market. If trading book module 28
  • the trading book module rejects
  • trading book module 28 determines at decision junction 146
  • This formatting includes the determination of
  • trading book module 28
  • trading book module 28 terminates the bid or offer submission process in a step 156. If
  • trading module 28 reserves the
  • Fig. 8 A an incoming bid or offer transmitted to server computer 10 from a client
  • trading module 20 (Fig. 2) of the server computer.
  • trading module 20 Fig. 2
  • trading module 20 compares the offer in
  • step 166 with currently open bids to determine whether the offer matches any current bid. If
  • the trading module inserts the
  • module 20 transmits the new bid or offer to all participating traders over the Internet 14.
  • trading module 20 determines that there is a match
  • the trading module processes the trade in a step 174 (Fig. 8B). This
  • processing includes transmission of a transaction confirmation 176 to the traders who made
  • step 174 further includes (a) updating queues of
  • trading module 20 monitors stop queues to determine
  • Trading module 20 executes stop orders as appropriate and
  • the updated trading queues include the bid and offer lists shown in rectangles 38 and 40 of
  • trading module 20 so as to execute earlier received bids (and offers)
  • trading module 20 awaits the next
  • trading book module 28 detects that the individual trader has actuated
  • button 78 or 82 to cancel a bid or an offer made by that trader or that the individual trader has
  • Trading book module 28 then checks in a step 190 as to the validity of the price-off command.
  • trading book module 28 If the command is invalid, as determined at a decision junction 192, trading book module 28
  • trading book module 28 formats
  • trading book module 28 calculates the capital to be released (e.g., from
  • server computer 10 Upon adjustment in the trading queues maintained by server computer 10, the server computer
  • communication module 24 includes a transmitter/receiver 208
  • decoder/encoder 210 preprocessed by decoder/encoder 210 is examined by client or trader computer 12 in
  • an initial query 310 to determine whether the digital signal encodes a chat message. If query
  • the chat message is saved in a step 312 and displayed in a
  • step 314 on a schematically illustrated display or monitor 218. If query 310 results in a
  • client computer 12 inquires at a decision junction 316 as to whether the
  • incoming digital signal encodes a confirmation that a bid or offer made by the respective
  • client or trader computer 12 checks at 324 as to whether the incoming digital signal encodes a
  • price broadcast i.e., a new trading order (bid or offer) to be incorporated into the bid queue or
  • step 336 and displayed in a step 338.
  • Fig. 10 further illustrates operations undertaken by a client or trader computer 12 in response to input from the respective trader.
  • Computer 12 detects in a step 340 that the trader
  • step 350 unnecessary allocated funds are released in a step 352, and the bid or offer
  • chat message as determined in a step 356, the chat message is saved in a step 360 and
  • server computer 10 for distribution to those traders participating in a respective
  • trading book module 28 comprises an update submodule 212
  • decoder/encoder 210 operatively connected to an output of decoder/encoder 210 for receiving and recognizing
  • update module 212 includes circuits programmed to recognize that an
  • Trading book module 28 additionally comprises a
  • register or dedicated memory area 214 connected to update submodule 212 for storing a
  • update module 212 As a currency.
  • update module 212 upon the logging-in of a client computer 12, update module 212
  • update submodule 212 sporadically receives queue update information for modifying the lists of bids and offers displayed in rectangles 38 and 40 (Fig.
  • trading book module 28 includes a display
  • control 216 operatively connected to register 214 for displaying, inter alia, the current bids
  • recognition circuit of interface 220 is operatively connected to a command input device 222
  • Command recognition circuit or interface 220 is operatively linked to display
  • control 216 via a trading offer submission circuit 224.
  • circuit 224 In response to signals from circuit 224,
  • display control 216 causes an input bid or offer to be displayed in a visually detectible form
  • submission circuit 224 incorporates command relay or formatting circuitry
  • Display control 216 includes or is connected to a memory 228 which stores at least
  • messaging control module 32 includes a message generator 232
  • command recognition circuit or interface 220 for receiving text typed
  • 232 cooperates with a customization circuit 234 for assigning phrases to keys 92 and is connected to a message submission circuit 236 which feeds text to display control 216 for
  • Message submission circuit 84 is also connected to
  • decoder/encoder 210 of communication module 24 for transmission of a chat message
  • communication module 24 for transmitting and receiving invitations to private chat groups.
  • reference numeral 240 designates an order confirmation circuit coupled to
  • decoder/encoder 210 for receiving data identifying consummated transactions or completed
  • Transactions or trading orders are executed by server computer 10 and verified to
  • a transaction is executed generally in response to a
  • any given trader may participate in a transaction by either placing a trading order
  • Order confirmation circuit 240 is connected at an output to arithmetic circuitry 242 in
  • Arithmetic circuitry 242 is connected to another register or dedicated memory area 244. Arithmetic circuitry 242
  • Register 244 in turn transmits the new
  • Order confirmation circuit 240 is connected to
  • Fig. 12 depicts details of the functional structure of trading offer submission circuit
  • submission circuit 224 incorporates a commodity units selector 246
  • command recognition circuit or interface 220 for processing a
  • submission circuit 224 also incorporates a price setting submodule 248 operatively connected
  • command recognition circuit or interface 220 for processing a price or trading rate which is
  • submission circuit 224
  • command recognition circuit or interface 220 for respectively processing a stop value entered
  • a price validation circuit 254 is operatively connected to price setting submodule 248
  • Price validation circuit 254 receives market information from a
  • memory 256 in turn loaded with bids and offers including outstanding bids and offers as well
  • Commodity units selector 246, price setting submodule 248, stop setting modifier 250 are Commodity units selector 246, price setting submodule 248, stop setting modifier 250
  • limit selector 252 are all connected at their outputs to trading order format circuit 226.
  • Trading offer submission circuit 224 further comprises a stop computation circuit 258
  • Stop computation circuit 258 includes a register or dedicated
  • register 260 connected to register 260 and to trading order format circuit 226 for multiplying the identified number of units of the currency in the current bid or offer by the default stop stored in register
  • the default stop value in register 260 is used only where the bid or offer being processed
  • multiplier 262
  • stop computation circuit 258 At an output of stop computation circuit 258 is a capital calculator 264 for determining
  • calculator 264 functions as a differencing circuit or comparator which
  • calculator 264 If the balance amount is greater than the stop amount, calculator 264
  • Calculator 264 is operatively connected to decoder/encoder 210 for relaying
  • Module 265 acts to release allocated funds in response to a bid or offer cancellation made by the respective trader and recognized by a
  • cancellation detector 267 connected to interface 220 on an input side and to capital allocation
  • module 265 also acts to
  • communication module 16 of server computer 10 includes a
  • transmitter/receiver 268 for broadcasting to and receiving trading information from on-line or
  • Communication module 16 also includes a decoder/encoder 270 for
  • a buffer circuit 272 included in trading module 20 receives and temporarily stores
  • Trading module 20 optionally includes a stop computation circuit 274 including a
  • multiplier 276 and a register or dedicated memory area 277 storing default stop values for the
  • a memory 280 which stores client account information.
  • trading module 20 of server computer 10 additionally to trading module 20 of server computer 10 additionally
  • queue maintenance unit 282 operatively tied to communication module or interface
  • Trading module 20 further comprises a comparator 284 operatively connected to
  • queue maintenance unit 282 for periodically comparing the outstanding or currently valid bids
  • comparator 284 the comparator provides a signal to an order
  • Order execution module 286 is connected to a capital allocator 287
  • Allocator 287 reserves funds in memory 280 upon execution
  • Order execution module is coupled to queue maintenance module 282 for
  • order execution module 286 is tied to
  • decoder/encoder 270 for transmitting signals over the Internet 14 (Fig. 1) to advise all logged-
  • Order execution module may be connected directly to
  • Comparison circuit 278 is
  • posting module 288 for advising traders of stop information, to order execution
  • Queue maintenance unit 282 also maintains a queue of stop bids and a queue of stop
  • trading module 20 additionally comprises a monitoring module 290 operatively
  • monitoring module 290 is operatively coupled to monitoring module 290 and to queue maintenance unit 282 for
  • Trading module 20 further comprises a position determination module 294 operatively
  • determination module 294 is operatively connected to queue maintenance module 282 for
  • message distribution module 22 (Fig. 2) more
  • message buffer 296 operatively connected to decoder/encoder 270 for
  • An invite control 298 receives instructions from invite process 238 (Fig. 11) and
  • a distribution unit or router 300 directs messages from buffer 296 to invite control 298, a distribution unit or router 300 directs messages from buffer 296 to invite control 298, a distribution unit or router 300 directs messages from buffer 296 to invite control 298, a distribution unit or router 300 directs messages from buffer 296 to invite control 298, a distribution unit or router 300 directs messages from buffer 296 to invite control 298, a distribution unit or router 300 directs messages from buffer 296 to invite control 298, a distribution unit or router 300 directs messages from buffer 296 to
  • electronically trading a commodity as described herein may be performed either centrally by a
  • server computer may distribute the responsibility for
  • computers may be performed at a central location. Functions which are shiftable between the
  • server computer and the trader computers include stop, limit and slippage computations

Abstract

A method and a system including programmed general purpose digital computers on a computer network for effectuating the real-time trading of a commodity including, but not limited to, a currency. A commodity trading method implemented at a client or trader computer (12) connected to a computer network (14) (e.g. the Internet) includes (a) receiving, in encoded form via a computer network, a plurality of bids and a plurality of offers pertaining to a common commodity, (b) displaying the bids and offers on a computer monitor, (c) generating a trading offer including a trading rate or price per unit of the commodity and a number of units of the commodity, (d) automatically calculating a total stop amount for the trading offer, (e) automatically comparing the total stop amount with an amount in a client or trader account, and (f) transmitting a digital signal encoding the trading offer to multiple other clients via the computer network upon and only upon a determination that the total stop amount is less than an amount in the client account.

Description

REAL-TIME COMMODITY TRADING METHOD AND APPARATUS
BACKGROUND OF THE INVENTION
The present invention relates to a real-time trading method. The present invention also
relates to an associated apparatus for implementing the method. More specifically, the present
invention relates to a method and apparatus for trading a commodity such as a currency in real
time over a computer network such as the Internet.
In contrast to the stock market, where exchanges supervise and maintain an orderly
and generally fair process of trading for all investors, the trading of currencies has no central
exchange. Instead, a plethora of financial institutions trade currencies on behalf of their
clients. There is only a modicum of governmental monitoring of the currency trading
activities of these institutions.
In part because of the absence of substantial governmental regulation, currency trading
is subject to well known abuse by the institutions acting as currency brokers. These
institutions frequently misrepresent the spread between the highest bids (offers to buys) and
the lowest offers (offers to sell). Where a client desires to consummate a currency exchange,
the currency broker not only makes money on the revealed commission on the reported spread
but also pockets the hidden spread, i.e., the difference between the actual spread and the
spread reported to the client by the broker.
SUMMARY OF THE INVENTION
The present invention aims to provide a method and/or computer system for
facilitating the trading of a commodity. Accordingly, the present invention is directed to a
method and an apparatus for enabling the trading of a commodity in real time. More
particularly the present invention is directed to a computer implemented method and a system including programmed general purpose digital computers on a computer network for
effectuating the real-time trading of a commodity including, but not limited to, a currency.
The present invention provides a commodity trading method and/or system which
enables the trading of a commodity such as a currency in real time. In such a method and/or
system, the individual trader is provided with accurate information, for example, as to
outstanding bids and offers on the commodity.
A method and/or system in accordance with the present invention enables the trading
of commodities by virtually anyone, with anonymity. Trading executions are fast, secure,
prompt, and at accurate pricing for all traders without bias. Prices displayed are the actual
prices at which trading occurs.
A method and/or system in accordance with the invention is easy to use and provides
the individual trader with a substantial increase in leverage without introducing any
significant risk to the facilitator of the trading process.
A commodity trading method implemented at a client or trader computer connected to
a computer network (e.g., the Internet) comprises, in accordance with the present invention,
(a) receiving, in encoded form via a computer network, a plurality of bids and a plurality of
offers pertaining to the same or common commodity, (b) displaying the bids and offers on a
computer monitor, (c) generating a trading offer including a trading rate or price per unit of
the commodity and a number of units of the commodity, (d) automatically calculating a total
stop amount for the trading offer, (e) automatically or electronically comparing the total stop
amount with an available amount in a client or trader account, and (f) transmitting a digital
signal encoding the trading offer over said computer network for distribution to multiple
traders. (See definitions of "commodity," "trading offer," and "total stop amount" below.) The total stop amount may include a base stop amount and a slippage amount for
compensating delays in trading owing to the inevitable vagaries in the market. The slippage
amount may be calculated by automatically multiplying a default slip per unit of the
commodity times the identified number of units of the commodity in the trading offer.
The method may further comprise automatically allocating or reserving the total stop
amount from the available amount in the client or trader account. The allocated or reserved
amount may be deallocated or returned to an available status upon cancellation, execution or
partial execution of the trading offer (or another trading offer of the same commodity). The
method thus contemplates canceling at least a portion of the trading offer and automatically
returning at least a portion of the allocated or reserved amount to the client or trader account
upon such cancellation.
In accordance with a feature of the present invention, the digital signal is transmitted
upon and only upon a determination that the total stop amount is less than the available
amount in the client or trader account.
The comparing of the total stop amount with the available amount in the client or
trader account is preferably, but not necessarily, performed by a client or trader computer
connected to the computer network.
The calculating of the total stop amount may include automatically multiplying a
default stop per unit of the commodity times the identified number of units of the commodity
in the trading offer. Alternatively, where the trading offer additionally includes identification
of a stop amount per unit of the commodity, the calculating of the total stop amount includes
automatically multiplying the stop amount per unit of the commodity times the identified
number of units of the commodity in the trading offer. In accordance with further features of the present invention, the method further
comprises displaying on the monitor a prompt (e.g., a text field) for entry of a stop value, a
prompt (e.g., a text field) for a limit value and a prompt (e.g., a text field) for a time period
during which the offer remains open. Upon determining that a respective stop value, limit
value, or offer-open period has been selected for the trading offer, the respective stop value,
limit value or time period is forwarded to the server computer together with the trading offer.
However, the selected time period is more preferably not communicated to the server
computer. Instead, the time period is tracked by the client computer, which automatically
terminates the trading offer upon lapse of the time period, provided that the trading offer has
not been executed in the interim.
In a commodity trading method in accordance with the present invention implemented
at a client or trader computer connected to a computer network (e.g., the Internet), at least one
digital signal encoding one or more bids and/or one or more offers pertaining to a common
commodity is received via a computer network. The bids are displayed in a first monotonic
sequence on a computer monitor, while the offers are simultaneously in a second monotonic
sequence on the computer monitor. A computer input device such as a keyboard or mouse is
monitored for a signal of a predetermined type. Upon receipt of such a signal, an order signal
is transmitted over the computer network to a server computer. This order signal is treated by
the system as a trading offer, the execution of which is conditional. If there are no prior
arriving competing trading offers, then the order signal is executed.
In the method at the client or trader end, the method further comprises steps of (a)
displaying on the monitor a plurality of prompts for particulars of a trading offer, the prompts
including prompt to enter a price per unit of the commodity and a total number of units of the commodity, (b) determining entry via the input device of a trading offer including at least a
price per commodity unit and a total number of commodity units, and (c) forwarding the
trading offer to a server computer over the computer network for relay to other traders on the
computer network.
Where the prompts include one for entry of a stop value and the client or trader
computer determines that the trading offer includes a respective stop value, the forwarding the
trading offer includes transmission of the respective stop value to the server computer. The
server computer generally only stores the stop value as a part of the trading offer, unless the
respective trading order results in a transaction, i.e., an executed order. In that case, the server
computer generates an entry in a stop bid queue or a stop offer queue, as appropriate, for
possible execution depending on the market conditions. The queue entry may include the stop
value and an appropriate number of commodity units in a stop queue. In addition, the server
computer may publish or distribute the stop bids and stop offers to various trading
participants, particularly market makers, over the computer network. In that case, the trading
participants may themselves attempt execution on the stop bids and stop offers by making
trading offers at the respective listed prices.
Where an order is executed by the server computer, the positions of the trading parties
are calculated, or recalculated if the individual trading parties already have positions owing to
prior trades. Sometimes a trade or transaction will modify the position of a trader having an
outstanding stop so that the stop is changed from one kind (e.g., a stop bid) to the other (e.g., a
stop offer). At other times, the position of the individual trader will return to zero so that the
trader no longer has a stop bid or stop offer.
Where the prompts on the trading screen include one for entry of a limit value and the client or trader computer determines that the trading offer includes a respective limit value,
the forwarding the trading offer includes transmission of the respective limit value to the
server computer.
The prompts displayed on the monitor of the client or trader computer may include a
prompt for entry of a time period for which the trading offer remains valid and capable of
being accepted. In that case, the client computer operates to determine whether each entered
trading offer includes a respective time period. If so, the client computer tracks the time
period and terminates the trading offer at the end of the time period, provided that the trading
offer has not already been fully executed.
Generally, it is contemplated that the particular trading operations executed by the
client or trader computer are controlled by a program downloaded over the computer network.
In particular, the program enables and controls the displaying of the bids and the offers on the
computer monitor in response to one or more digital signals arriving over the computer
network. Such downloading may occur from a Web site independent of the server computer.
Alternatively, the trading program may be loaded from a CD ROM drive or a floppy drive.
The client or trader computer is a general purpose digital computer with a monitor and
a command input device (keyboard, mouse, etc.). This general purpose digital computer is
modified by programming to comprise (i) a register storing a plurality of bids and a plurality
of offers pertaining to trading of the same or common commodity, (ii) an update module
operatively tied to the register for updating contents thereof, (iii) a communication component
operatively connected to a computer network and to the update module for receiving, from the
computer network, data to be temporarily stored in the register and for providing the data to
the update module, (iv) a display control operatively connected to the register for displaying the bids and the offers in a predetermined format on the monitor, (v) a command recognition
circuit operatively connected to the command input device for receiving a trading offer from
same, the command recognition circuit being operatively linked to the display control,
whereby the trading offer displayed in a visually detectible form on the monitor, and (vi)
command relay or formatting circuitry operatively connected to the command recognition
circuit and to the computer network, whereby the trading offer is transmitted over the
computer network to a server computer.
In accordance with a feature of the present invention, the client or trader computer
further comprises a stop computation circuit, operatively connected to the command
recognition circuit, for automatically computing a total stop amount for the trading offer, a
memory storing an available amount in a client account of the client, comparison circuitry
operatively connected to the stop computation circuit and the memory for comparing the total
stop amount with the available amount in the client account, the command relay circuitry
being operatively connected to the comparison circuitry for acting on the trading offer upon
detection that the total stop amount and the available amount in the client account conform to
pre-established criteria. In particular, the command relay circuitry is programmed to transmit
the trading offer over the computer network to the server computer only upon detecting that
the total stop amount is less than or equal to the available amount in the memory.
In the event that the pre-established criteria are met, for example, in the event that the
total stop amount is less than the available amount in the client account, the client or trader
computer allocates or segregates the calculated total stop amount from the available amount in
the client account.
The stop computation circuit may include a second or additional register storing a default stop per unit of the commodity and a multiplier connected to the additional register
and to the command recognition circuit for multiplying the identified number of units of the
commodity in the trading offer by the default stop stored in the additional register. It is
generally contemplated that the default stop includes a base default stop value and a default
slippage value. The total stop amount thus includes a base stop amount and a slippage
amount. Where the trading offer additionally includes identification of a stop amount per unit
of the commodity, the stop computation circuit includes a multiplier operatively connected to
the interface for automatically multiplying the stop amount per unit of the commodity times
the identified number of units of the commodity in the trading offer.
The first register of the client or trader computer may be a portion of the general
memory of the computer which has been segregated or reserved for purposes of storing the
bids and offers as they arrive over the computer network. The update module includes
circuits programmed to recognize that an incoming signal encodes bids and offers and to store
this data in the register. The communication component receives and decodes incoming
signals and also encodes and transmits outgoing signals received, for instance, from the
command relay or formatting circuitry. Similarly, the second register of the client or trader
computer may be a portion of the general memory of the computer which has been segregated
or reserved for purposes of storing a default stop value.
In accordance with another feature of the present invention, the display control
includes a memory storing the format for the display. A programmer unit in the client or
trader computer is operatively coupled to the computer network and the display control for
downloading, from the server computer, a program containing the display format and for
storing the display format in the memory upon downloading of the program from the server computer via the computer network. It is to be noted that the display format program, indeed
the entire trading program, may be alternatively downloaded from an independent source,
such as a Web server, over the Internet or may be loaded from a floppy disc or CD ROM.
As discussed above, the display format may include prompts for entry of a stop value,
a limit value and a time period for validity of the trading offer. The command relay circuitry
forwards an entered stop value and/or the calculated total stop amount or an entered limit
value to the server computer with the trading offer. As discussed above, a selected time
period triggers tracking thereof by the client computer to determine when the trading offer is
to be withdrawn.
The client or trader computer may have a third register or memory area storing
position data for the individual client or trader. The position data includes a commodity
amount, a price per unit of the commodity, and a profit or loss value if the current position is
closed at prevailing market rate. The display format includes an area for listing the position
data on the monitor.
Pursuant to an additional feature of the present invention, the client or trader computer
further comprises arithmetic circuitry operatively connected to the communication component
and to the second register for calculating, in response to a consummated transaction, a new
position amount and an average price per unit and providing the calculated position amount
and the calculated average price to the second register. Thus, where the position of the client
or trader is initially long (or short) and is modified by selling or additional buying (or buying
or additional selling) without closure of the position, the average price per unit of the
commodity will be determined by the arithmetic circuitry and displayed on the computer
monitor of the trader. In accordance with a specific feature of the present invention, the display format
includes a first window or display area and a second window or display area disposed side by
side on the monitor by the display control, the first display area listing the bids in a first
monotonic order, the second display area listing the offers in a second monotonic order. This
format facilitates comparison of the bids and offers, their amounts, spreads, open periods, etc.
These display areas may also display stop bids and stop offers in respective monotonic orders,
where the server computer is programmed to broadcast or distribute such information to
participating traders. Of course, the display of stop bids and stop offers permits selected
trader participants, especially market makers, to trade on the stops .
The server computer is likewise a general purpose digital computer modified by
programming to comprise an interface receiving a first digital signal over the computer
network from a client's computer, the first digital signal encoding a trading offer including
identification of a commodity, a trading rate or price, and a number of units of the
commodity. Like the client or trader computer, the server computer may further comprise a
stop computation circuit operatively connected to the interface for automatically computing a
total stop amount for the trading offer, a memory storing an amount in a client account
available for trading, and comparison circuitry operatively connected to the stop computation
circuit and the memory for comparing the total stop amount with the available amount in the
client account. A posting module is operatively connected to the interface and the comparison
circuitry for transmitting selected details of the trading offer to multiple other clients via the
computer network upon receiving a signal from the comparison circuitry that the total stop
amount is less than the amount in the client account.
In a preferred embodiment of the invention, instead of calculating a total stop amount prior to posting of a trading offer via the computer network, the server computer waits until it
detects a match between a bid and an offer. Prior to that time, the server computer merely
stores the stop value associated with the trading offer. As part of the order execution process
carried out upon the detection of a match between a bid and an offer, the server computer
determines the positions of the traders who made the matching bid and offer. This
determination entails in part a calculation of composite stops for the traders. These composite
stops are determined by the trading histories of the individual traders including stops
associated with the bid and the offer of the immediate realized transaction.
In accordance with another feature of the present invention, the server computer
comprises a queue maintenance unit operatively tied to the interface for supervising a queue
of trading offers. The trading offers are ordered or listed by price per commodity unit and
may be additionally ordered by times of extending of the respective trading offers, at least
where two or more trading offers have the same price per commodity unit. These orderings
facilitate the server computer's supervision of trading offers and appropriate and timely
execution of trading orders.
Where the queue more particularly includes a list of bids and a list of offers to sell, the
server computer may further comprise a comparator operatively connected to the queue
maintenance unit for periodically comparing the bids with the offers to determine whether a
match has occurred and an order execution module operatively coupled to the comparator for
(a) modifying accounts of traders who made a matching bid and offer to sell, (b) removing the
matching bid and offer to sell from the list of bids and the list of offers to sell, (c) transmitting
signals over the computer network to advise all logged-in traders of the match, upon detection
by the comparator of the match, and (d) sending specific confirmation to the traders who made the matching bid and offer to sell.
The server computer generally comprises an administration module operatively linked
to the interface for logging in traders as log-in requests arrive and a message distribution
module for supervising the establishment of multiple private chat forums, and distributing
messages among logged-in traders according to established chat forums.
A client or user computer is thus operatively connected to a computer network for
implementing a commodity trading system, the client or user computer being programmed to
display on a computer monitor a list of a plurality of bids received by the client or user
computer from different trading computers connected to the computer network and a list of a
plurality of offers received by the client or user computer from different trading computers
connected to the network, the client or user computer being further programmed to recognize
a user command to place a trading offer at a transaction rate of one of the bids and the offers
or better, the client or user computer being additionally programmed to transmit over the
computer network a digital signal encoding the trading offer.
A method for use in trading a commodity comprises (1) generating a trading offer, (2)
automatically calculating a total stop amount for the trading offer, (3) automatically
comparing the total stop amount with an available amount in a client or trader account to
determine whether the total stop amount and the available amount meet pre-established
criteria, and (4) acting on the trading offer only upon determining that the total stop amount
and the available amount meet the pre-established criteria.
Pursuant to another feature of the present invention, calculating the total stop amount
includes computing a stop amount and a slippage amount. The calculating of the slippage
amount may be implemented by automatically multiplying a default slip per unit of the commodity times the identified number of units of the commodity in the trading offer. Where
the trader identifies a stop value of stop per commodity unit, the slip value may be added to
the stop value automatically prior to calculating a total stop amount.
Preferably, the total stop amount is automatically allocated or reserved from the
available amount. Where all or part of the trading offer is canceled, at least a portion of the
allocated or reserved amount is automatically returned to the client or trader account.
It is contemplated that acting on the trading offer includes transmitting a digital signal
encoding the trading offer to over the computer network for distribution to multiple traders.
Preferably, the digital signal is transmitted upon and only upon a determination that the total
stop amount is less than an available amount in the client or trader account. It is also
contemplated that the generating of the trading offer and the comparing of the total stop
amount are both performed by a client or trader computer connected to the network.
Another feature of the present invention is directed to the monitoring and execution of
stop orders. A server computer undertaking these actions is connected to a computer network
for implementing an on-line commodities trading system and comprises a queue maintenance
unit for maintaining a queue of bids, a queue of offers, a queue of stop bids, and a queue of
stop offers. The server computer further comprises a comparator operatively connected to the
queue maintenance unit for determining whether a match between a bid and an offer has
occurred, and an order execution module operatively coupled to the comparator and the queue
maintenance unit in part for modifying at least one of the queue of bids and the queue of
offers upon a determination by the comparator that a match has occurred. A monitoring
module is operatively connected to the comparator and the queue maintenance unit for
monitoring the stop bids and the stop offers in relation to the match to determine whether any of the stop bids and the stop offers should be executed. A stop execution module is
operatively coupled to the monitoring module and to the queue maintenance unit for
executing one of the stop bids and the stop offers and modifying a respective one of the queue
of stop bids and the queue of stop offers upon execution of the one of the stop bids and the
stop orders.
Pursuant to a particular feature of the present invention, the order execution module
includes means for (a) modifying accounts of traders who made a matching bid and offer to
sell, (b) removing the matching bid and offer to sell from the queue of bids and the queue of
offers to sell, (c) transmitting signals over the computer network to advise all logged-in
traders of the match, upon detection by the comparator of the match, and (d) sending specific
confirmation to the traders who made the matching bid and offer to sell.
Pursuant to another particular feature of the present invention, the server computer
further comprises a position determination module operatively connected to the order
execution module for computing, upon detection by the comparator of the matching bid and
order to sell, positions of the traders who made the matching bid and offer to sell and further
computing stops associated with the computed positions. The position determination module
is operatively connected to the queue maintenance module for updating the queue of stop bids
and the queue of stop offers to incorporate the computed stops.
Pursuant to yet another feature of the present invention, the server computer
additionally comprises a communications module operatively connected to the queue
maintenance unit for broadcasting the queue of bids, the queue of offers, the queue of stop
bids, and the queue of stop offers over the computer network to computers of participating
traders. A method and an associated apparatus in accordance with the present invention enable
the real time trading of commodities by virtually anyone, with anonymity. The invention
provides fast, secure, accurate pricing and fair prompt executions for all traders without bias.
The prices displayed are the actual prices at which trading occurs.
A method and an apparatus in accordance with the present invention facilitates the
trading process. For example, market news and information may be provided on the same
computer monitor or display screen on which trading prices are displayed. Further
information access is facilitated by providing a computer chat service, coupled with the
trading book.
For currency market makers, dealers and traders, the present invention offers
heretofore unknown opportunities. Market makers can enjoy the benefit of an increased client
base without additional marketing costs and time-consuming customer service calls. Dealers
are provided with additional outlets to trade out of positions and the ability make markets
when desired. Dealers are not required to make two sided prices—thereby reducing their risk.
Traders can execute against the prices of not one but multiple market makers-the traditional
middleman being eliminated, thus creating a market more efficient than any other
commodities trading market.
Another advantage provided to market makers is the possibility of stop competition.
Participants are able to trade against stop bids and stop offers and more particularly against
stop bids and stop offers of all participating traders.
In contrast to traditional currency trading practice, the present invention enables a
trader to trade at his or her price, not at a price arbitrarily set by a middleman. The trader is
thus able to trade between traditional spreads, avoiding "leaning" and other practices that are commonly used against the trader's orders in conventional trading procedures. Market orders
are executed at the best price available without human intervention.
The present commodity trading system and method provide a substantial increase in
leverage relative to existing commodity trading techniques. This increase in leverage does not
come at the expense of the facilitator or the operator of the trading system. Because of
automatic stop monitoring and automatic stop execution, the facilitator or operator is naturally
protected. Automatic or machine-mediated stop monitoring results in a more efficient market.
The facilitator or operator of the commodity trading system has several options for
making a profit on the trading activities. Preferably, a percentage or flat-rate commission is
collected from the buyer and/or seller.
The present invention provides a commodities trading system which is easy to use.
Simple instructions and the end-user or trader software are downloaded by a potential user.
The user or trader completes an application, optionally transmitted over the Internet to the
system server. After approval of the application, the user deposits funds in a selected
financial institution or with a selected company for purposes of covering trades over the
commodities trading network of the instant invention. At that juncture, the user can trade
over the Internet, whether in the privacy and comfort of the home or office, or anywhere a
computer (laptop) connection to the Internet is available. The screen design and menu choices
are user friendly.
BRIEF DESCRIPTION OF THE DRAWINGS
Fig. 1 is a block diagram of a global computer network or system used for a real-time
trading of a commodity, in accordance with the present invention.
Fig. 2 is a block diagram of selected functional modules of a server computer shown in Fig. 1.
Fig. 3 is a block diagram showing selected functional modules of a client or trader
computer illustrated in Fig. 1.
Fig. 4 is a diagram of a display screen provided on a monitor of the client computer
shown in Fig. 3.
Fig. 5 is a flow chart diagram of a log-in process executed by a client or trader
computer illustrated in Figs. 1 and 3.
Fig. 6 is a flow chart diagram of selected administration routines executed by the
server computer of Fig. 1 and more particularly by an administration module shown in Fig. 2.
Fig. 7 is a flow chart diagram of an order submission process implemented by a client
computer of Fig. 1 and more specifically by a trading book module shown in Fig. 3.
Figs. 8 A and 8B are a flow chart diagram of trading supervision or order
implementation carried out by the server computer of Fig. 1 and more particularly by a trading
module shown in Fig. 2.
Fig. 9 is a flow chart diagram of an order cancellation process undertaken by a client
computer of Fig. 1 and more specifically by a trading book module shown in Fig. 3.
Fig. 10 is partially a block diagram and partially a flow chart diagram showing
operations performed by a client or trader computer to implement a message or chat function
and to track and update capital accounts.
Fig. 11 is a block diagram showing, inter alia, selected details of the functional
structure of a trading book module and a messaging control module shown in Fig. 3.
Fig. 12 is a block diagram of a trading offer submission circuit illustrated in Fig. 11.
Fig. 13 is a block diagram of selected functional blocks of a trading module illustrated in Fig. 2.
DEFINITIONS
As used herein, the term "trading offer" means an offer to buy (bid) a commodity or an
offer to sell (offer) the commodity. A trading offer includes an identification of the target
commodity, which, in a currency trading network, is a currency denomination. This
identification may be communicated by context of a trading offer. A trading offer further
includes a trading rate or price, which specifies the per-unit amount at which the trader
placing the order is willing to buy or sell the commodity.
As used herein, the term "trading order" denotes a trading offer which includes a price
matching an extant trading offer of the opposite type. Generally, the individual trader making
the trading order is aware, through the trading system of the present invention, of the pre¬
existing trading offer which he or she would like to accept. A trading order leads to or
incorporates a transaction, provided that another trading order has not previously arrived at
the server computer. The prior order would take precedence and preempt the second order.
For this reason, it is not strictly possible for any individual trader participant to accept an
extant trading offer. Thus, a trader participant's trading order is technically a bid (offer to
buy) or offer (offer to sell) at a price of a pre-existing offer or bid.
The term "command input device" is used herein to denote a keyboard, a mouse, or
other piece of hardware which mediates entry of commands and data into a computer.
The term "commodity" is used herein to designate any tradable item, i.e., anything
which is quantifiable in discrete units of measure to which a price may be attached. Thus,
commodities include such things as grains, oil, metals, computer memory chips, baseball
cards, paintings, used cars, currencies, and financial instruments. The term "stop value" as used herein signifies a net number of points per commodity
unit representing the difference between the price of a trade and the price of the stop to be
created for that trade.
The term "total stop amount" as used herein is intended to signify a monetary amount
required to cover a stop execution on a trading offer. The total stop amount includes a
primary quantity equal to a stop value (usually a small fraction of a unit price) multiplied by
the number of units of the commodity in the trading offer. The total stop amount also
includes a slippage portion intended to cover a projected possible additional amount arising
from a delay in a trade occasioned in part by trading volume and the rate of change in the
price of the commodity.
The term "available amount" as used with reference to a client or trader account means
that portion of the client or trader account which may be used in covering trading offers and
executed trades of the respective client or trader. The available amount is usually, if not
always, less that the total amount in the account. An unavailable portion of the account is
segregated for security or safety reasons.
The word "automatic" or "automatically" is used herein to denote an operation or
action undertaken by machine in response to an input where there is no human intervention
between the occurrence of the input and the operation or action. More specifically, the word
"automatic" or "automatically" is used herein to denote such an operation or action
implemented by electronic means without an immediate or direct human action or operation.
The term "monotonic order" as used herein means a sequence of numerical values
which increase (or remain the same) or decrease (or remain the same) from one numerical
value to the next throughout the entire sequence or listing of the numerical values. In other words, when taken only in one direction through a monotonically ordered list, each numerical
value in the list is greater than or equal to the immediately preceding numerical value. In the
opposite direction, each numerical value is less than or equal to the immediately preceding
numerical value. The phrase "removing a matching bid and offer to sell" and grammatically related
phraseology are intended to cover both complete and partial deletion of the matching bid and
offer from the trading system. Partial deletion or a bid or offer occurs when there is a
mismatch in the number of commodity units in the matching bid and offer. The prices match,
but the number of commodity units do not match so that one of the bid or offer becomes
modified to have the same price per commodity unit but a smaller maximum number of
commodity units.
The term "prompt" as used herein is an indication on a computer screen or display of a
point on the screen at which a command, order, or data is entered by keyboard or mouse or
other input device. A prompt may take the form of a text field or a drop-down list.
The word "format" as used herein means in part a scheme for ordering different pieces
of information on a computer screen or display. A menu, a window-type display, an order for
a list of data items, are all examples of a format.
DESCRIPTION OF THE PREFERRED EMBODIMENTS
Fig. 1 illustrates a global computer network for realizing a real time trading of a
commodity such as a currency. A server computer 10 is connected to a plurality of client or
trader computers 12 via the Internet 14, The server computer 10 mediates, supervises and
controls the transmission of trading information, as well as offers and orders to purchase and
sell the target commodity. It is contemplated that client computers 12 operate under the control of trading
software downloaded from an independent Web site (not illustrated) via the Internet 14. Upon
completion of an application by a prospective client or trader, the communication of that
application, and the acceptance of the application in accordance with standards of a kind well
known to those in the industry, the trading software is provided to the respective client or
trader computer 12. In part to reduce the workload of server computer 10, the trading
software is downloaded from the Web site via the Internet 14 or loaded from floppy disks or
CD ROM. If the processing capacity of server computer 10 is sufficient, however, there is no
reason why the trading software could not be downloaded from the server.
As illustrated in Fig. 2, server computer 10 is configured by its own software to have
four principal modules, namely, a communication module 16, an administration module 18, a
trading module 20, and a message distribution and generation module 22. Communication
module 16 broadcasts or transmits and receives trading information via Internet 14. In
addition, communication module 16 decodes or decrypts incoming digital signals and
digitized messages and encodes or encrypts outgoing signals or messages. The signals
encode, in part, trading offers and trading orders. Messages contemplate ancillary information
such as chat-type communications ancillary to the trading process.
Administration module 18 controls routine daily processes such as processing log-in
and log-off requests from clients or traders, initialization of trading at the beginning of a
trading day and the termination of trading at the end of the day.
Trading module 20 keeps track of all incoming bids (offers to buy) and offers (offers
to sell) relating to each tradable commodity of a predetermined kind. In particular, trading
module 20 tracks all bids and offers pertaining to all tradable currencies. Trading module 20 also determines whether there are any matches between the bids and offers pertaining to the
respective trading currencies. In the case of a match, trading module 20 takes steps to
complete the respective transaction, i.e., execute the trading order. Furthermore, trading
module 20 maintains queues of stop bids and stop offers and executes on those stops as
market conditions require. Optionally, server computer 10 broadcasts the stop bid and stop
offer queues to participating traders (e.g., market makers) and executes on trading offers made
on the stop bids and stop offers. Stop validation and execution entails a continuous tracking
of the positions and accounts all traders. In the event a stop execution is necessary, trading
module 20 adjusts the respective trader's position and the trader's account. This adjustment
may, for example, entail a change in a stop listed for that trader.
Message distribution module 22 maintains lists of all private and public chat groups
and appropriately distributes incoming messages intended for the members of the different
chat groups.
It is to be noted that the different functions of server computer 10 may be distributed
among a plurality of parallel server computers. In a simple division of labor, one such
computer is dedicated to the administrative functions of module 18, while another computer
performs all of the trading operations of trading module 20 and a third computer undertakes
message distribution and generation (module 22). Similarly, the functions of any one module
of Fig. 2 may be executed by a plurality of parallel server computers. For example, the
trading function may be performed for different commodities (e.g., different currencies) by
different server computers.
As illustrated in Fig. 3, each client or trader computer 12 is configured by the
downloaded trading software to have several principal modules including a communication module 24, an administration module 26, a "trading book" module 28, an open order list
module 30, a messaging control module 32, an order log module 34, and a "price discovering
quote" module 36.
Communication module 24 transmits and receives trading information via Internet 14.
This trading information includes bids and offers made by other traders logged in to server 10.
The bids and offers each include an identification of the relevant currency, as well as a trading
rate or price and preferably a time period during which the respective bid or offer is to remain
open. Communication module 24 decodes or decrypts incoming digital signals containing
trading information and encodes or encrypts outgoing signals containing trading information
including trading offers and trading orders placed by the respective trader. Chat messages are
also handled by communication module 24.
Administration module 26 cooperates with administration module 18 of server
computer 10 to enable logging in and logging off of the respective trader. In addition,
administration module 26 participates in setting up and monitoring an account of the
individual trader. It is to be noted that, in practice, part of a client's account is held as a
security deposit and is not made available for covering the respective trader's position.
Another part of the client's account is dynamically tradable, i.e., is utilizable to cover forced
trades (stops) of all or part of the client's position. The portion of the client's account
available for trading may be a predetermined percentage of the total account, such as 50% or
75%, or a monetary figure. Of the tradable portion of the client's account, a first portion is
segregated to cover any stop execution that may be required on the client's trading position
while a second portion may be allocated or reserved to cover one or more outstanding bids or
offers of the client. As discussed in detail hereinafter, "trading book" module 28 displays all incoming
bids and offers pertinent to each tradable commodity selected by the respective trader. These
incoming bids and offers are displayed by trading book module 28 on a computer monitor, as
discussed hereinafter with reference to Fig. 4. Trading book module 28 also receives,
processes and relays to server computer 10 trading offers and orders submitted by the
respective trader, as discussed in greater detail below. Trading offers may include stop values
set by the particular traders. Accordingly, trading book module 28 also undertakes credit
calculation and mediates stop and limit setting. More specifically, trading book module 28
validates stops by computing a total stop amount and checking that amount against the
balance in a cash account of the particular trader generally maintained with the operator of
server computer 10. In addition, server computer may allocate funds in the client or trader's
account to cover trading offers and executed orders of the individual trader.
Open order list module 30 tracks the individual trader's position and cooperates with
trading book module 28 in displaying the particulars of the trader's position on the computer
monitor. Open order list module 30 may also cooperate with server computer 10 in tracking
the individual trader's position.
Messaging control module 32 maintains lists of all private chat groups and
appropriately distributes incoming messages intended for the members of the different chat
groups.
Order log module 34 maintains a record of all of the transactions during a
predetermined period, such as a trading day. Order log module may cooperate with server
computer 10 to obtain and display the trading history of the individual trader for earlier
periods upon request by the trader. "Price discovery quote" module 36 displays a price quote process.
Fig. 4 illustrates a trading window or screen displayed on a monitor of client or trader
computer 12 where the individual trader is trading in the European currency, the Euro. On the
left side, the trading screen includes a pair of vertically oriented rectangular areas 38 and 40
disposed adjacent to one another and respectively displaying a list of bids and a list of offers
each of which monotonically increases from the bottom to the top of the respective list. The
bids and offers are identified by their respective rates or prices, i.e., at the number of U.S.
dollars to buy one Euro. Also included in the illustrated lists are total numbers of currency
units available for trading at the listed prices of the respective bids and offers. The value
"x4.5" indicates a bid or offer to trade up to 4.5 million yen at a respective exchange rate or
price. At highlighted centers 41 of rectangles 38 and 40 are the current best bid and the
current best offer for the currency being traded. In this case, the best bid is at a trading rate or
price of 1.0350 Dollars to the Euro, while the best offer is at a trading rate or price of 1.0351
Dollars to the Euro. The rates of the current best bid and the current best offer are also
indicated at 42 on the display screen.
The bids displayed in rectangle 38 above the highlighted current best bid of 1.0350 are
stop bids. Similarly, the offers located in rectangle 40 below the highlighted current best offer
of 1.0351 are stop offers. These stop bids and stop offers are provided to market makers and
optionally to other participating traders. Usually, traders who are not market makers are
provided only with their own stop bids and stop offers, not those of other traders.
The trading screen of Fig. 4 includes a line of four windows 44, 46, 48, 50 wherein the
current position of the individual trader is delineated. Trading book module 28 (Fig. 3)
calculates in real time the open aggregate position of the individual trader and the profit or loss incurred should the individual trader close his or her position at the best bid or offer
currently available. The total value (2,000,000) of the target currency (in this case, the Euro)
and the total value (-2,068,700) of the Dollar in the individual trader's current position are
listed in the first window 44 and the third window 48, respectively, while the average rate or
price (1.0343) at which the individual trader arrived at that position is indicated in the second
window 46. The fourth window 50 sets forth the profit or loss (1,99.97) that would be
incurred should the individual trader close his or her position at the best bid or offer currently
available.
The screen of Fig. 4 also includes a pair of "buttons" 52 by which the individual trader
can take the best bid or offer currently available. A click or actuation of a mouse on one of
the buttons 52 submits a bid or offer by the individual trader to buy or sell at market and
results in the immediate transmission of a trading order to server computer 10 via the Internet
14 and particularly via communication modules 24 and 16.
At 54 is indicated a "button" the actuation of which results in generation of a message
transmitted to all participants in the current trading of the target currency, in this case the
Euro, indicating that the individual trader wishes to engage in trading of the Euro. Actuation
of button 54 transmits a request for price quotes from on-line trading participants.
Generally, the display, monitoring and control of rectangles 38 and 40, indicator 42,
windows 44, 46, 48, 50, and buttons 52 and 54 are executed by trading book module 28.
Further discussion of components of module 28 to effectuate this display, monitoring and
control may be found below.
Reference numerals 56 and 58 designate prompts used by the individual trader to make
an offer to buy (bid) the currency or other commodity of interest. Prompt 56 takes the form of a text field indicating a trading rate or price for the currency of interest. Upon a mouse click
in text field 56 and an entry of a numerical value, that value appears in text field 56 as a
trading rate or price. Prompt 58 takes the form of a drop-down list displaying a number of
units of the target currency selected by the trader for possible purchase. Upon entry of a
numerical value in text field 56 and a selection from drop-down list 58, the individual trader
mouse-clicks on a button 60 to trigger a forwarding of the bid to other currently on-line
traders.
The individual trader has the option of setting a stop value in a bid of offer. A text
field 62 is provided to prompt the trader to enter a stop value prior to a clicking on button 60.
An entered stop value may be forwarded as part of a bid or offer to server 10 for distribution
to participating clients or traders.
Reference numerals 64 and 66 designate text-field and drop-down-list prompts used by
the individual trader to make an offer to sell (offer) the currency or other commodity of
interest. Text field 64 prompts the individual trader to enter a trading rate or price and
indicates a selected trading rate or price for the currency of interest. Upon a mouse click in
text field 64 and an entry of a numerical value, that value appears in text field 64 as a trading
rate or price. Drop-down list 66 prompts the individual trader to enter a number of units of
the currency for possible sale and displays a selected number. Upon entry of a numerical
value in text field 64 and a selection from a list of numerical values in drop-down list 66, the
individual trader mouse-clicks on a button 68 to trigger a forwarding of the offer to other
currently on-line traders.
The individual trader has the option of including a limit value in a bid or offer.
Window 70 is provided to prompt the trader to enter a limit value prior to a clicking on button 68. An entered limit value may be forwarded as part of a bid or offer to server 10 for
distribution to participating clients or traders. A drop-down list 72 prompts the trader to select
a type of order, whether market type, or having a limit.
Another drop-down list 74 and another text field 76 are provided for prompting the
trader to specify temporal conditions of a proposed trade. Window 74 provides a menu or list
of possible selections, while text field 76 is provided for the entry of a specific numerical
value for a time period for which a bid or offer is to remain valid or open, i.e., capable of
acceptance by another trader. Generally, all prices are static unless the timer is used to make
them dynamic.
Generally, the display, monitoring and control of text field 56 and drop-down list 58,
button 60, text fields 62 and 64, drop-down list 66, button 68, text field 70, drop-down lists 72
and 74, and text field 76, are executed by trading book module 28. Further discussion of
components of module 30 to effectuate this display, monitoring and control may be found
below.
Three "buttons" 78, 80, 82 are provided for enabling a trader to instantly remove his
or her bid or offer from the trading network. Using a computer mouse to "click" on button 78
and then on button 80 causes an extant bid placed by the individual trader to be deleted from
rectangles 38 on the computer screens of other logged-in traders. Similarly, "clicking" on
button 82 and then on button 80 causes an existing offer placed by the individual trader to be
deleted from rectangles 40 on the computer screens of other logged-in traders. These
deletions are effectuated through server computer 10.
Another group of windows and prompts, in the lower right-hand quadrant of Fig. 4,
pertains to a chat facility mediated or enabled particularly by messaging control module 32 of the various client or trader computers 12. A window 84 displays a series of messages in a
universal chat forum including all traders logged-in to the system at the time or a private chat
forum including only designated traders. A "button" 86 is provided for enabling the
individual trader to initiate a private chat forum by extending an invitation to a group or a
particular person or to investigate whether any private chat groups have extended an invitation
to the individual trader. A menu screen (not shown) may be provided for prompting and
facilitating the individual trader to engage in any of these options.
During a chat session viewable in window 84, the individual trader types in
contributions to the chat session in a text field 88. Pressing the "enter" key on a computer
keyboard or mouse clicking on a displayed "button" 90 causes the message in text field 88 to
be transmitted to server computer 10 from whence the message is distributed by message
distribution module 22 to the various other participants in the particular trader chat session.
Upon distribution, the message is displayed in window 84 together with an identification or
"screen" name of the trader originating the message.
A series of "buttons" or "keys" 92 are provided for allowing commonly used
expressions to be entered by a single keystroke or mouse actuation. These expressions may
be predefined by the trading program. Alternatively, the trading program may permit an
individual trader to customize keys 92 (see circuit 234 in Fig. 11).
An upper right-hand quadrant of the computer screen or display includes a window 94
showing all orders made by the individual trader during the course of a trading day. A
separate reporting module (not shown) may be provided for calling up from server computer
10 orders made by the individual trader on previous days. These functions are executed by
open order list module 30 (Fig. 3). Various options of the trading program are selectable by the individual trader through
utilization of user- friendly menus (not shown) pulled down by mouse clicking on appropriate
entries in a main menu 96. In addition, along a title bar of the trading program screen shown
exemplarily in Fig. 4 is displayed account balances 98 of the individual trader in real time.
Chat window 84, and its ancillary window 88 and buttons 86, 90, and 92, and order
log window 94 may be omitted from the trading program display in order to allow space for
two or more currency trading windows identical in format to the left-hand side of Fig. 4.
These multiple trading windows may be displayed side by side on the computer screen to
enable simultaneous trading in two or more currencies. Thus, the individual trader would be
presented with two or more bid rectangles 38 (including stop bid lists), two or more offer
rectangles 40 (including stop offer lists), two or more position or each window 44, 46, 48, and
50, at least two of each prompt window 56, 58, 64, and 66, etc.
As illustrated in Fig. 5, client computer 12 and mainly administration module 26
thereof begins a trading session by obtaining a log-in and a password from the individual
trader in a step 100 and transmitting that information, as indicated by an arrow 102, to server
computer 10 and particularly administration module 18 thereof. Administration module 26 of
the client computer 12 then waits for confirmation of the log-in from server computer 10. If
no confirmation is received from server computer 10, as determined at a decision junction
104, the log-in process is terminated at 104. If confirmation is received from the server
computer, that confirmation is accompanied by current currencies information, as indicated by
an arrow 106. Client computer 12 uses that incoming information in a step 108, ter alia, to
initialize currency data for listing on the display screen of Fig. 4. At log-in, server computer
10 also transmits account information to the respective client computer 12, as indicated by an arrow 110. The incoming account information is utilized by client computer 12 to initialize
the account in a step 112. In addition, server computer 10 provides a newly logged-in
customer or client with currently open trading offers and outstanding orders, as indicated by
an arrow 114. Client computer 12, and particularly trading book module 28 (Fig. 3), displays
those trading offers and orders in rectangles 38 and 40 (Fig. 4) in a step 116.
Fig. 6 depicts action undertaken by administration module 18 (Fig. 2) of server
computer 10 upon receiving log-in information from a client computer 12, as indicated by
arrow 102. In a step 120, administration module 18 processes the log-in information. To that
end, administration module 18 retrieves user or client information from a database 122, as
indicated by an arrow 124. In a inquiry 126, administration module 18 checks whether the
log-in information is accurate and valid. If not, administration module 18 generates an
unsuccessful long-in report at 128 and transmits the report to the respective client computer
12, as indicated by an arrow 130. If the log-in information is accurate and valid, as
determined at inquiry 126, administration module 18 retrieves current currency information in
a step 132 and transmits the information to the newly logged-in client computer 12 (arrow
106). In addition, administration module 18 retrieves account information for the respective
client or individual trader in a step 134 and initializes the client account by transmitting the
account information to the respective client or trader (arrow 110). Finally, administration
module 18 retrieves current trading information such as open trading offers and orders
(including open stop bids and stop offers) in a step 136, that information being forwarded to
the respective client or trader (arrow 114).
As illustrated in Fig. 7, trading book module 28 (Fig. 3) of client computer 12
executes a routine 138 to display of trading offers or offered prices in bid display rectangle 38 and offer display rectangle 40 (Fig. 4). The currency trading prices of incoming bids and
offers, arriving over the Internet 14 (Fig. 1) as indicated in Fig. 7 by an arrow 140, are added
into the bid list in rectangle 38 and the offer list in rectangle 40. In a step 142, trading book
module 28 detects the entry of a new bid in windows 56 and 58 or a new offer in windows 64
and 66 by the respective individual trader. In a following validation step 144, trading book
module 28 checks the entered price against the currently outstanding bids and offers to
determine whether the entered price jibes with the current market. If trading book module 28
determines at a decision junction 146 that newly received bid or offer is outside the range of
current bids and offers according to pre-established criteria, the trading book module rejects
the entered price in a step 148. If trading book module 28 determines at decision junction 146
that newly received bid or offer is valid according to the pre-established criteria, the trading
book module formats the order in a step 150. This formatting includes the determination of
stop and/or limit values, as appropriate. In a subsequent step 152, trading book module 28
uses the stop and/or limit values and the total currency amount in the newly received bid or
offer to calculate the capital requirements. That total currency amount required to cover the
new bid or offer is compared with (e.g., subtracted from) the available amount in the
individual trader's account at a decision junction 154. If the available capital is insufficient,
trading book module 28 terminates the bid or offer submission process in a step 156. If
sufficient capital is present in the individual trader's account, trading module 28 reserves the
required amount in an allocation step 158 and submits the bid or offer in a step 160 to server
computer 10, as indicated by a transfer arrow 161, for relaying to participating traders.
In Fig. 8 A, an incoming bid or offer transmitted to server computer 10 from a client
computer 12 as indicated by an arrow 162 is received and recognized in a step 164 by trading module 20 (Fig. 2) of the server computer. In the case of an incoming bid, trading module 20
then compares the bid in a step 166 with currently open offers to determine whether the bid
matches any offer. In the case of an incoming offer, trading module 20 compares the offer in
step 166 with currently open bids to determine whether the offer matches any current bid. If
at a decision junction 168 trading module 20 determines that there is no match between the
incoming bid or offer and existing offers and bids, respectively, the trading module inserts the
bid or offer into a respective queue in a step 170. Then, in a broadcast step 172, trading
module 20 transmits the new bid or offer to all participating traders over the Internet 14.
If at decision junction 168, trading module 20 determines that there is a match
between a newly arrived bid or offer and a previously received but still outstanding offer or
bid, respectively, the trading module processes the trade in a step 174 (Fig. 8B). This
processing includes transmission of a transaction confirmation 176 to the traders who made
the matching bid and offer. The processing in step 174 further includes (a) updating queues of
bids and offers by a queue maintenance unit 282 (Fig. 13) and broadcasting of the updated
queue information to participating traders on the network, (b) recalculating positions of the
traders involved in the new match or trade, (b) creating or modifying stops for the new match
or trade and inserting these new or modified stops in the appropriate stop queues, and (c)
updating limits related to the new match or trade and inserting the limits in the bid and offer
queues, as appropriate.
In a subsequent step 178, trading module 20 monitors stop queues to determine
whether any stops should be executed according to current market conditions as evidenced by
the immediately executed trade. Trading module 20 executes stop orders as appropriate and
transmits confirmations, as indicated by an arrow 180, to the respective client computers 12. The relevant trading queues are then updated by trading module 20 in a step 182, with
implementing signals being transmitted to participating traders as indicated by an arrow 184.
The updated trading queues include the bid and offer lists shown in rectangles 38 and 40 of
the client computer screens and further includes the lists of bids and offers in order of their
placement, maintained by trading module 20 so as to execute earlier received bids (and offers)
before later received bids (and offers). In a step 186, trading module 20 awaits the next
incoming bid or offer.
An order cancellation process executed by trading book module 28 is diagramed in
Fig. 9. In a step 188, trading book module 28 detects that the individual trader has actuated
button 78 or 82 to cancel a bid or an offer made by that trader or that the individual trader has
actuated button 80 to cancel both any outstanding bid and any outstanding offer of the trader.
Trading book module 28 then checks in a step 190 as to the validity of the price-off command.
If the command is invalid, as determined at a decision junction 192, trading book module 28
notifies the user or trader in a process-termination step 194 that the price-off command is not
executable. This eventuality occurs, for instance, if the trader has no outstanding bid or offer
owing perhaps to an earlier cancellation or a completion of a transaction. If the price-off
command is valid, as determined at decision junction 192, trading book module 28 formats
the command in a step 196 and thereby computes stop and limit amounts, as appropriate. In a
subsequent step 198, trading book module 28 calculates the capital to be released (e.g., from
an "escrow" account into the trader's main account) and, in a step 200, submits the previously
formatted command over the Internet 14 to server computer 10, as indicated by an arrow 202.
Upon adjustment in the trading queues maintained by server computer 10, the server computer
transmits a confirmation signal back to communication module 24 (Fig. 3), as indicated by an arrow 204. In a step 206, the trading program in the client computer 12 releases the capital
previously allocated to the canceled bid or offer.
As shown in Fig. 10, communication module 24 includes a transmitter/receiver 208
and a decoder/encoder 210. An incoming digital signal intercepted by transmitter/receiver
208 and preprocessed by decoder/encoder 210 is examined by client or trader computer 12 in
an initial query 310 to determine whether the digital signal encodes a chat message. If query
310 results in a positive outcome, the chat message is saved in a step 312 and displayed in a
step 314 on a schematically illustrated display or monitor 218. If query 310 results in a
negative outcome, client computer 12 inquires at a decision junction 316 as to whether the
incoming digital signal encodes a confirmation that a bid or offer made by the respective
individual trader has been canceled. If there is an off confirmation, computer 12 releases
previously allocated capital in a step 318, stores the executed order information in a step 320,
and displays the order information in a step 322. If no termination signal is detected, the
client or trader computer 12 checks at 324 as to whether the incoming digital signal encodes a
price broadcast, i.e., a new trading order (bid or offer) to be incorporated into the bid queue or
the offer queue displayed in rectangle 38 or 40. If check 324 uncovers a price broadcast,
computer 12 modifies the respective queue in a step 326, saves the queues in a step 328, and
displays the new trading book in a step 330. If check 324 fails to uncover a price broadcast,
computer 12 determines in an investigation 332 whether the incoming digital signal encodes a
confirmation of a trade by the respective individual trader. If so, the capital requirements of
the trader are recalculated in a step 334 and that updated account information is stored in a
step 336 and displayed in a step 338.
Fig. 10 further illustrates operations undertaken by a client or trader computer 12 in response to input from the respective trader. Computer 12 detects in a step 340 that the trader
has entered a bid or an offer and undertakes a price validation sequence as discussed above
with reference to numerical designations 144, 146, and 148. Subsequently, the capital
requirements are computed in a step 342 should the bid or offer be executed upon, capital is
allocated or reserved from the trader's available capital in a step 344, and the bid or offer is
submitted to the server computer 10 in a step 346. If the individual trader cancels a bid or
offer, as validated by the respective trader computer 12 in a step 348 (see reference numerals
190,192, 194 and related discussion), new or updated capital requirements are calculated in a
step 350, unnecessary allocated funds are released in a step 352, and the bid or offer
cancellation is submitted to server computer 10 in a step 354. If the individual trader enters a
chat message, as determined in a step 356, the chat message is saved in a step 360 and
transmitted to server computer 10 for distribution to those traders participating in a respective
chat session.
As illustrated in Fig. 11, trading book module 28 comprises an update submodule 212
operatively connected to an output of decoder/encoder 210 for receiving and recognizing
trading data arriving from server computer 10 (Figs. 1 and 2) via the Internet 14. More
particularly stated, update module 212 includes circuits programmed to recognize that an
incoming signal encodes bids and offers. Trading book module 28 additionally comprises a
register or dedicated memory area 214 connected to update submodule 212 for storing a
plurality of bids and a plurality of offers pertaining to trading of a common commodity such
as a currency. Thus, upon the logging-in of a client computer 12, update module 212
receives a list of current pending bids and offers from administration module 18 of server
computer 10. Subsequently, update submodule 212 sporadically receives queue update information for modifying the lists of bids and offers displayed in rectangles 38 and 40 (Fig.
4). All this information is stored in register 214 for display on a computer monitor 218.
As additionally illustrated in Fig. 11, trading book module 28 includes a display
control 216 operatively connected to register 214 for displaying, inter alia, the current bids
and the offers in a respective monotonic sequences on computer monitor 218. A command
recognition circuit of interface 220 is operatively connected to a command input device 222
such as a keyboard or mouse for receiving and recognizing a trading offer (bid or offer) input
by a trader. Command recognition circuit or interface 220 is operatively linked to display
control 216 via a trading offer submission circuit 224. In response to signals from circuit 224,
display control 216 causes an input bid or offer to be displayed in a visually detectible form
on monitor 218. Submission circuit 224 incorporates command relay or formatting circuitry
226 (Fig. 12) operatively connected to the command recognition circuit or interface 220 and
to the Internet 14, whereby a bid or offer from the individual trader is transmitted over the
Internet to server computer 10.
Display control 216 includes or is connected to a memory 228 which stores at least
that part of the trading program controlling the layout of the window or screen of Fig. 4. The
display format of Fig. 4 is loaded into memory 228 by a program download submodule 230
connected at an input to communication module 24 and particularly decoder/encoder unit 210
thereof.
As shown in Fig. 11, messaging control module 32 includes a message generator 232
operatively connected to command recognition circuit or interface 220 for receiving text typed
into data input device 222 in window 88 of the trading display (Fig. 4). Message generator
232 cooperates with a customization circuit 234 for assigning phrases to keys 92 and is connected to a message submission circuit 236 which feeds text to display control 216 for
disposition of the text in chat window 84. Message submission circuit 84 is also connected to
decoder/encoder 210 of communication module 24 for transmission of a chat message to
message distribution module 22 of server computer 10 (Fig. 2). Messaging control module 28
further includes an invite process control 238 operatively connected to decoder/encoder 210 of
communication module 24 for transmitting and receiving invitations to private chat groups.
In Fig. 11, reference numeral 240 designates an order confirmation circuit coupled to
decoder/encoder 210 for receiving data identifying consummated transactions or completed
orders. Transactions or trading orders are executed by server computer 10 and verified to
client computers 12 via the Internet 14. A transaction is executed generally in response to a
newly communicated trading order which has the same price as a previously tendered bid or
offer. Thus, any given trader may participate in a transaction by either placing a trading order
which matches a prior trading offer in price or by having another trader tender a trading order
which matches in price an extant bid or offer of the given trader.
Order confirmation circuit 240 is connected at an output to arithmetic circuitry 242 in
turn connected to another register or dedicated memory area 244. Arithmetic circuitry 242
calculates, in response to a transaction information from order confirmation circuit 240, a new
position amount and an average price per unit and provides the calculated position amount
and the calculated average price to register 244. Register 244 in turn transmits the new
calculated position amount and the updated average price per unit to open order module 30 for
display in windows 44, 46, 48, 50 (Fig. 4). Order confirmation circuit 240 is connected to
order log module 34 for updating the order log kept thereby. The updated order log is then
displayed in window 94 (Fig. 4). Fig. 12 depicts details of the functional structure of trading offer submission circuit
224 of Fig. 11. Submission circuit 224 incorporates a commodity units selector 246
operatively connected to command recognition circuit or interface 220 for processing a
number of units of a currency which is entered by the individual trader in window 58 or 66.
Submission circuit 224 also incorporates a price setting submodule 248 operatively connected
to command recognition circuit or interface 220 for processing a price or trading rate which is
entered by the individual trader in window 56 or 64. In addition, submission circuit 224
includes a stop setting modifier 250 and a limit selector 252 operatively connected to
command recognition circuit or interface 220 for respectively processing a stop value entered
by the individual trader in window 62 and processing a limit value entered by the trader in
window 70.
A price validation circuit 254 is operatively connected to price setting submodule 248
for determining that an entered price falls within an expected or re-established range given the
current market conditions. Price validation circuit 254 receives market information from a
memory 256 in turn loaded with bids and offers including outstanding bids and offers as well
as recently terminated bids and offers.
Commodity units selector 246, price setting submodule 248, stop setting modifier 250
and limit selector 252 are all connected at their outputs to trading order format circuit 226.
Trading offer submission circuit 224 further comprises a stop computation circuit 258
operatively connected to trading order format circuit 226 for automatically computing a total
stop amount for a bid or offer. Stop computation circuit 258 includes a register or dedicated
memory area 260 storing a default stop per unit of the currency and a multiplier 262
connected to register 260 and to trading order format circuit 226 for multiplying the identified number of units of the currency in the current bid or offer by the default stop stored in register
260. The default stop value in register 260 is used only where the bid or offer being processed
fails to include an identification of a stop amount per currency unit. Otherwise, multiplier 262
uses the identified stop value selected by the trader via window 62 for computing the total
stop amount for the bid or offer.
At an output of stop computation circuit 258 is a capital calculator 264 for determining
whether the current amount in the trader account is sufficient to cover the bid or offer being
processed. To that end, calculator 264 functions as a differencing circuit or comparator which
consults a memory 266 storing the current amount in the trader's account. Calculator 264
comparing the total stop amount determined by stop computation circuit 258 with the amount
in memory 266. If the balance amount is greater than the stop amount, calculator 264
modifies the account information in memory 266 by reserving or allocating the computed
total stop amount in the event that a stop order is undertaken by server computer 10 on the
client's position. Calculator 264 is operatively connected to decoder/encoder 210 for relaying
the trading offer (bid or offer) including the stop value and the new account information to
server computer 10. Capital calculator 264 is also connected to display control 216 at least for
purposes of inducing display of an insufficient funds message in the event that the balance in
the trader's account is insufficient to cover the total stop amount. In such an event, the trading
offer entered by the individual trader via input 222 (Fig. 11) is not forwarded to the sever
computer and does not appear in the bid rectangle 38 or offer rectangle 40 of any trader.
Allocated capital determined by calculator 264 in response to a trading offer input by
the individual trader is released in memory 266 and returned to an available funds account
therein by a capital release module 265. Module 265 acts to release allocated funds in response to a bid or offer cancellation made by the respective trader and recognized by a
cancellation detector 267 connected to interface 220 on an input side and to capital allocation
release module 265 on an output side. In response to a communication from server computer
10 that a trade has been executed on a bid or offer made by the trader, module 265 also acts to
release allocated funds and to recalculate profit and loss. Capital allocation release module
265 is connected at an input to order confirmation circuit 240.
As illustrated in Fig. 13, communication module 16 of server computer 10 includes a
transmitter/receiver 268 for broadcasting to and receiving trading information from on-line or
logged-in traders. Communication module 16 also includes a decoder/encoder 270 for
decoding or encrypting incoming data signals and encoding or encrypting outgoing data
signals. A buffer circuit 272 included in trading module 20 receives and temporarily stores
decoded incoming trading information. Long-term storage is effectuated by database 122
(Fig. 6). Trading module 20 optionally includes a stop computation circuit 274 including a
multiplier 276 and a register or dedicated memory area 277 storing default stop values for the
different traders and different tradable currencies. A comparison circuit or capital calculator
278 is connected to an output of multiplier 276 for determining whether the account of a
trader making a bid or an offer includes sufficient funds to cover a stop order, should it
become necessarily to execute the stop order on the trader's position. Comparison circuit 278
is connected to a memory 280 which stores client account information.
As further illustrated in Fig. 13, trading module 20 of server computer 10 additionally
includes a queue maintenance unit 282 operatively tied to communication module or interface
16 via buffer circuit 272 for supervising a queues bids and offers. Queue maintenance unit
282 orders or lists the bids and offers by price per commodity unit and the times at which the respective bids and offers were extended. This ordering facilitates the supervision of the
trading process by server computer 10 and the appropriate and timely execution of trading
orders.
Trading module 20 further comprises a comparator 284 operatively connected to
queue maintenance unit 282 for periodically comparing the outstanding or currently valid bids
with the outstanding or currently valid offers to determine whether a match has occurred. In
the event a match is detected by comparator 284, the comparator provides a signal to an order
execution module 286. Order execution module 286 is connected to a capital allocator 287
which is in turn connected to memory 280 for modifying accounts of traders who made a
matching bid and offer to sell. Allocator 287 reserves funds in memory 280 upon execution
of a trade. Order execution module is coupled to queue maintenance module 282 for
removing the matching bid and offer from the list of outstanding or valid bids and the list of
outstanding or valid offers. In addition, order execution module 286 is tied to
decoder/encoder 270 for transmitting signals over the Internet 14 (Fig. 1) to advise all logged-
in traders of the match. Order execution module may be connected directly to
decoder/encoder 270 or indirectly via a posting module 288. Comparison circuit 278 is
connected to posting module 288 for advising traders of stop information, to order execution
module 286 for providing stop information thereto in the event that a stop order must be
executed, and to queue maintenance unit 282.
Queue maintenance unit 282 also maintains a queue of stop bids and a queue of stop
offers, while trading module 20 additionally comprises a monitoring module 290 operatively
connected to comparator 284 and queue maintenance unit 282 for monitoring the stop bids
and the stop offers in relation to any order which has just been executed, to determine whether any of the stop bids and the stop offers should be executed. A consummated trade is evidence
of a change in market conditions and the current exchange rate for a currency being traded.
When the market changes, the stop positions of the traders participating on the network must
be investigated to determine whether a stop must be executed. A stop execution module 292
is operatively coupled to monitoring module 290 and to queue maintenance unit 282 for
executing stops at appropriate times and for modifying a respective queue of stop bids or stop
offers.
Trading module 20 further comprises a position determination module 294 operatively
connected to order execution module 286 for computing, upon detection by comparator 284 of
a matching bid and order to sell, positions of the traders who made the matching bid and offer
to sell and further computing stops associated with the computed positions. Position
determination module 294 is operatively connected to queue maintenance module 282 for
updating the queue of stop bids and the queue of stop offers to incorporate the computed
stops. Modifications in the queues are transmitted by queue maintenance unit 282 over the
Internet 14 via posting module 288 and communication module 16.
As further illustrated in Fig. 13, message distribution module 22 (Fig. 2) more
specifically includes a message buffer 296 operatively connected to decoder/encoder 270 for
receiving and temporarily storing all incoming messages including but not limited to chat
messages. An invite control 298 receives instructions from invite process 238 (Fig. 11) and
builds lists of chat room participants in response to those instructions. In response to signals
from invite control 298, a distribution unit or router 300 directs messages from buffer 296 to
appropriate selected trader participants.
Although the invention has been described in terms of particular embodiments and applications, one of ordinary skill in the art, in light of this teaching, can generate additional
embodiments and modifications without departing from the spirit of or exceeding the scope of
the claimed invention. For example, the various computer components described herein may
be realized in the form of hard- wired dedicated circuits, rather than program-modified generic
digital computer circuits. Also, it is to be noted that various functions of a system for
electronically trading a commodity as described herein may be performed either centrally by a
server computer or in distributed fashion by trader computers. Thus, a client or trader
computer cooperate to perform all necessary functions in a commodity trading system. The
server computer, to conserve processing power and time, may distribute the responsibility for
executing various functions to the client computers. Alternatively, where the server computer
has a prodigious processing capacity, functions otherwise delegated to the client or trader
computers may be performed at a central location. Functions which are shiftable between the
server computer and the trader computers include stop, limit and slippage computations,
position monitoring, profit and loss calculation, etc.
A client trading program as described herein, including a routine or subprogram for
enabling and controlling the displaying of bids and offers on a trader's computer monitor may
be downloaded via the Internet, as described above, or loaded by CD or floppy disks.
The method and apparatus described herein may be used to implement electronic, on¬
line, real-time trading for commodities other than currencies, agricultural commodities, for
instance.
Accordingly, it is to be understood that the drawings and descriptions herein are
proffered by way of example to facilitate comprehension of the invention and should not be construed to limit the scope thereof.

Claims

CLAIMS:
1. A method for trading a commodity, comprising:
receiving, in encoded form via a computer network, a plurality of bids and a plurality
of offers pertaining to a common commodity;
displaying said bids and offers on a computer monitor;
generating a trading offer including a trading rate or price per unit of said commodity,
and a number of units of said commodity;
automatically calculating a total stop amount for said trading offer;
automatically comparing said total stop amount with an available amount in a client or
trader account; and
transmitting a digital signal encoding said trading offer to over said computer network
for distribution to multiple traders.
2. The method defined in claim 1 wherein the calculating of said total stop amount
includes computing a stop amount and a slippage amount.
3. The method defined in claim 2 wherein the calculating of said slippage amount
includes automatically multiplying a default slip per unit of said commodity times the
identified number of units of said commodity in said trading offer.
4. The method defined in claim 1, further comprising automatically allocating or
reserving said total stop amount from the available amount in said client or trader account.
5. The method defined in claim 4, further comprising canceling at least a portion of
said trading offer and automatically returning at least a portion of the allocated or reserved
amount to said client or trader account upon such cancellation.
6. The method defined in claim 1 wherein said digital signal is transmitted upon and
only upon a determination that said total stop amount is less than the available amount in said
client or trader account.
7. The method defined in claim 1 wherein the generating of said trading offer and the
comparing of said total stop amount with the available amount in said client or trader account
are performed by a client or trader computer connected to said computer network.
8. The method defined in claim 1 wherein the transmitting of said digital signal
includes directing said digital signal to a server computer connected to said computer
network, said server computer distributing said trading offer to said traders.
9. The method defined in claim 1 wherein the calculating of said total stop amount
includes automatically multiplying a default stop per unit of said commodity times the
identified number of units of said commodity in said trading offer.
10. The method defined in claim 1 wherein said trading offer additionally includes
identification of a stop amount per unit of said commodity, the calculating of said total stop
amount includes automatically multiplying said stop amount per unit of said commodity times the identified number of units of said commodity in said trading offer.
11. The method defined in claim 1, further comprising:
displaying on said monitor a prompt for entry of a stop value; and
determining that a respective stop value has been selected for said trading offer,
forwarding, via said computer network, said respective stop value to a server computer
together with said trading offer.
12. The method defined in claim 1, further comprising:
displaying on said monitor a prompt for entry of a limit value; and
determining that a respective limit value has been selected for said trading offer,
forwarding, via said computer network, said respective limit value to a server
computer together with said trading offer.
13. The method defined in claim 1, further comprising:
displaying on said monitor a prompt for entry of a time period for which said trading
offer remains valid and capable of being accepted;
determining that a respective time period has been selected for said trading offer;
determining when said time period is terminated; and
canceling said trading offer upon termination of said time period.
14. The method defined in claim 1, further comprising:
displaying said bids in a first monotonic sequence on a computer monitor; and simultaneously displaying said offers in a second monotonic sequence on said
computer monitor.
15. The method defined in claim 1, further comprising displaying, on said computer
monitor, total units of said commodity for trading at prices identified in said bids and said
offers.
16. A method for trading a commodity, comprising:
receiving, via a computer network, digital signals together encoding a plurality of bids
and a plurality of offers pertaining to a common commodity;
displaying said bids in a first monotonic sequence on a computer monitor;
simultaneously displaying said offers in a second monotonic sequence on said
computer monitor;
monitoring a computer input device; and
upon detecting a signal from said input device of a predetermined type, transmitting an
order signal over said computer network to a server computer, said order signal encoding a
trading order for requesting a transaction on one of said bids and said offers.
17. The method defined in claim 16, further comprising:
displaying on said monitor a plurality of prompts for particulars of a trading offer, said
prompts including prompts to enter a price per unit of said commodity and a total number of
units of said commodity;
determining entry via said input device of a trading offer including at least a price per commodity unit and a total number of commodity units; and
forwarding said trading offer over said computer network to multiple other traders on
said computer network.
18. The method defined in claim 17, further comprising:
displaying on said monitor a prompt for entry of a stop value; and
determining that said trading offer includes a respective stop value,
the forwarding said trading offer including transmission of said respective stop value
to said server computer.
19. The method defined in claim 17, further comprising:
displaying on said monitor a prompt for entry of a limit value; and
determining that said trading offer includes a respective limit value,
the forwarding said trading offer including transmission of said respective limit value
to said server computer.
20. The method defined in claim 17, further comprising:
displaying on said monitor a prompt for entry of a time period for which said trading
offer remains valid and capable of being accepted;
determining that said trading offer includes a respective time period;
determining when said time period is terminated; and
canceling said trading offer upon termination of said time period.
21. The method defined in claim 16 wherein said first monotonic sequence is
displayed in a first rectangular area on said display and said second monotonic sequence is
displayed in a second rectangular area on said display, said first rectangular area and said
second rectangular area being laterally disposed relative to one another.
22. The method defined in claim 21 wherein said first monotonic sequence and said
second monotonic sequence are vertically staggered relative to one another on said display.
23. The method defined in claim 16 wherein said computer network is a global
computer network, further comprising downloading from said computer network a program
enabling and controlling the displaying of said bids and said offers on said computer monitor
in response to said digital signals.
24. A method for use in trading a commodity, comprising:
displaying, on a computer monitor connected to a computer in turn connected to a
computer network, a plurality of prompts for particulars of a trading offer, said prompts
including prompt to enter a price per unit of said commodity and a total number of units of
said commodity;
determining entry via said input device of a trading offer including at least a price per
commodity unit and a total number of commodity units; and
forwarding said trading offer to a server computer over said computer network for
relay to other traders on said computer network.
25. The method defined in claim 24, further comprising:
displaying on said monitor a prompt for entry of a stop value; and
determining that said trading offer includes a respective stop value,
the forwarding said trading offer including transmission of said respective stop value
to said server computer.
26. The method defined in claim 24, further comprising:
displaying on said monitor a prompt for entry of a limit value; and
determining that said trading offer includes a respective limit value,
the forwarding said trading offer including transmission of said respective limit value
to said server computer.
27. The method defined in claim 24, further comprising:
displaying on said monitor a prompt for entry of a time period for which said trading
offer remains valid and capable of being accepted;
determining that said trading offer includes a respective time period;
determining when said time period is terminated; and
canceling said trading offer upon termination of said time period.
28. A general purpose digital computer connected to a monitor and a command input
device and modified by programming to comprise:
a register storing a plurality of bids and a plurality of offers pertaining to trading of a
common commodity; an update module operatively tied to said register for updating contents thereof;
a communication component operatively connected to a computer network and to said
update module for receiving, from said computer network, data to be temporarily stored in
said register and for providing said data to said update module;
a display control operatively connected to said register for displaying said bids and
said offers in a predetermined format on said monitor;
a command recognition circuit operatively connected to said command input device
for receiving a trading offer from same, said command recognition circuit being operatively
linked to said display control, whereby said trading offer displayed in sensible form on said
monitor; and
command relay circuitry operatively connected to said command recognition circuit
and to said computer network, whereby said trading offer is transmitted over said computer
network to a server computer.
29. The computer defined in claim 28, further comprising:
a stop computation circuit, operatively connected to said command recognition circuit,
for automatically computing a total stop amount for said trading offer,
a memory storing an amount in a client account of the client; and
comparison circuitry operatively connected to said stop computation circuit and said
memory for comparing said total stop amount with the amount in said client account, said
command relay circuitry being operatively connected to said comparison circuitry for
transmitting said trading offer over said computer network to said server computer only upon
detecting that said total stop amount is less than or equal to the amount in said memory.
30. The computer defined in claim 29 wherein said stop computation circuit includes:
an additional register storing a default stop per unit of said commodity; and
a multiplier connected to said additional register and to said command recognition
circuit for multiplying the identified number of units of said commodity in said trading offer
by the default stop stored in said additional register.
31. The computer defined in claim 29 wherein said trading offer additionally includes
identification of a stop amount per unit of said commodity, said stop computation circuit
including a multiplier operatively connected to said interface for automatically multiplying
said stop amount per unit of said commodity times the identified number of units of said
commodity in said trading offer.
32. The computer defined in claim 29 wherein said comparison circuitry includes
circuitry for allocating or reserving at least a portion of the amount in said client account in
response to said trading offer.
33. The computer defined in claim 28 wherein said format further includes a prompt
for entry of a stop value, said command relay circuitry forwarding an entered stop value to
said server computer with said trading offer.
34. The computer defined in claim 33 wherein said format further includes a prompt
for entry of a limit value, said command relay circuitry forwarding an entered limit value to
said server computer with said trading offer.
35. The computer defined in claim 28 wherein said register is a first register, further
comprising a second register storing position data including a cuπency amount, a price per
unit of said commodity, and a profit value if a current position is closed at prevailing market
rate, said format including an area for listing said position data on said monitor.
36. The computer defined in claim 35, further comprising arithmetic circuitry
operatively connected to said communication component and to said second register for
calculating, in response to a transaction confirmation received from said server computer via
said computer network, a new position amount and an average price per unit and providing
the calculated position amount and the calculated average price to said second register.
37. The computer defined in claim 36, further comprising arithmetic circuitry for
computing an amount of allocated capital in response to said transaction confirmation.
38. The computer defined in claim 36 wherein said trading offer additionally includes
identification of a stop amount per unit of said commodity, said stop computation circuit
including a multiplier operatively connected to said interface for automatically multiplying
said stop amount per unit of said commodity times the identified number of units of said
commodity in said trading offer.
39. The computer defined in claim 28, further comprising circuitry for allocating or
reserving at least a portion of the amount in said client account in response to said trading offer.
40. The computer defined in claim 39, further comprising circuitry for reallocating the
amount in said client account in response to a trading order accepting all or part of said
trading offer.
41. The computer defined in claim 28 wherein said format includes a menu window,
said window including a first list box and a second list box disposed side by side on said
monitor by said display control, said first list box displaying said bids in a first monotonic
order, said second list box displaying said offers in a second monotonic order.
42. The computer defined in claim 28 wherein said format includes a text field prompt
for entry of said trading offer by a user via said command input device.
43. The computer defined in claim 28 wherein said commodity is a currency.
44. A general purpose digital computer connected to a monitor and a command input
device and modified by programming to comprise:
a register storing a plurality of bids and a plurality of offers pertaining to trading of a
common commodity;
a display control operatively connected to said register for displaying said bids and
said offers in a predetermined format on said monitor;
a command recognition circuit operatively connected to a command input device for
receiving a trading offer from same, said command recognition circuit being operatively
linked to said display control, whereby said trading offer displayed in sensible form on said monitor;
a stop computation circuit, operatively connected to said command recognition circuit,
for automatically computing a total stop amount for said trading offer;
command relay circuitry operatively connected to said command recognition circuit
and to said computer network for transmitting said trading offer over said computer network
to a server computer;
a memory storing an amount in a client account of the client; and
comparison circuitry operatively connected to said stop computation circuit and said
memory for comparing said total stop amount with the amount in said client account and for
triggering transmission of a trading offer upon a meeting of pre-established criteria by said
total stop amount and the amount said client account.
45. The computer defined in claim 44 wherein said command relay circuitry is
operatively connected to to said comparison circuitry for transmitting said trading offer
computer network to said server computer only upon detecting by said comparison circuitry
that said total stop amount is less than or equal to the amount in said memory.
46. The computer defined in claim 44, further comprising circuitry for allocating or
reserving at least a portion of the amount in said client account in response to said trading
offer.
47. The computer defined in claim 44, further comprising circuitry for reallocating the
amount in said client account in response to a trading order accepting all or part of said trading offer.
48. The computer defined in claim 44 wherein said stop computation circuit includes:
a register storing a default stop per unit of said commodity; and
a multiplier operatively connected to said register and to said command recognition
circuit for multiplying the identified number of units of said commodity in said trading offer
by the default stop stored in said register.
49. The computer defined in claim 44 wherein said trading offer additionally includes
identification of a stop amount per unit of said commodity, said stop computation circuit
including a multiplier operatively connected to said command recognition circuit for
automatically multiplying said stop amount per unit of said commodity times the identified
number of units of said commodity in said trading offer.
50. A general purpose digital server computer connected to a computer network and
modified by programming to comprise:
an interface receiving a first digital signal over said computer network from a client's
computer, said first digital signal encoding a trading offer including identification of a
commodity, a trading rate or price, and a number of units of said commodity;
a stop computation circuit, operatively connected to said interface, automatically
computing a total stop amount for said trading offer;
a memory storing an amount in a client account of the client;
comparison circuitry operatively connected to said stop computation circuit and said memory for comparing said total stop amount with the amount in said client account; and
a posting module operatively connected to said interface and said comparison circuitry
for transmitting selected details of said trading offer to multiple other clients via said
computer network upon receiving a signal from said comparison circuitry that said total stop
amount is less than the amount in said client account.
51. The computer defined in claim 50, further comprising a queue maintenance unit
operatively tied to said interface for maintaining a list of bids and a list of offers to sell,
further comprising:
a comparator operatively connected to said queue maintenance unit for periodically
comparing said bids to said offers to sell to determine whether a match has occuπed; and
an order execution module operatively coupled to said comparator for (a) modifying
accounts of traders who made a matching bid and offer to sell, (b) removing said matching bid
and offer to sell from said list of bids and said list of offers to sell, (c) transmitting signals
over said computer network to advise all logged-in traders of the match, upon detection by
said comparator of the match, and (d) sending specific confirmation to the traders who made
the matching bid and offer to sell.
52. The computer defined in claim 51 wherein said queue maintenance unit also
maintains a list of stop bids and a list of stop offers, further comprising a position
determination module operatively connected to said order execution module and said queue
maintenance module for computing, upon detection by said comparator of the matching bid
and order to sell, positions of the traders who made the matching bid and offer to sell and further computing stops associated with the computed positions.
53. The computer defined in claim 50 wherein said stop computation circuit includes:
a register storing a default stop per unit of said commodity; and
a multiplier connected to said register and to said interface for multiplying the
identified number of units of said commodity in said trading offer by the default stop stored in
said register.
54. The computer defined in claim 50 wherein said trading offer additionally includes
identification of a stop amount per unit of said commodity, said stop computation circuit
including a multiplier operatively connected to said interface for automatically multiplying
said stop amount per unit of said commodity times the identified number of units of said
commodity in said trading offer.
55. The computer defined in claim 50 wherein said computer network is the Internet.
56. The computer defined in claim 50, further comprising an administration module
operatively linked to said interface for logging in traders as log-in requests arrive and a
message distribution module operatively linked to said interface for supervising the
establishment of multiple private chat forums, and distributing messages among logged-in
traders according to established chat forums.
57. A commodity trading method comprising: receiving at a server computer a first digital signal over a computer network from a
client's computer, said first digital signal encoding a trading offer including identification of a
commodity, a trading rate or price per unit of said commodity, and a number of units of said
commodity;
operating said server computer to maintain (i) a first queue of bids ordered by price per
commodity unit and times of extending of the respective bids and (ii) a second queue of offers
to sell ordered by price per commodity unit and times of extending of the respective offers to
sell;
operating said server computer to determine whether said trading offer matches any
entry in said first queue and said second queue; and
upon detection by said server computer of a match between said trading offer and a
particular entry in said one of said first queue and said second queue, operating said server
computer to (a) modify accounts of traders who made said trading offer and said particular
entry, (b) remove said particular entry from said one of said first queue and said second queue,
(c) transmit signals over said computer network to advise all logged-in traders of the match,
and (d) sending specific confirmation to the traders who made said trading offer and said
particular entry.
58. The method defined in claim 57, wherein said trading order is placed in a
respective one of said first queue and said second queue upon receiving of said trading order
at said server computer, the operating of said server computer to determine whether said
trading offer matches any entry in said first queue and said second queue including comparing
said bids to said offers to sell to determine whether a match has occurred, said server being operated, upon detection by said server computer of the match between said trading offer and
said particular entry, to remove said trading offer and said particular entry from respective
ones of said first queue and said second queue.
59. The method defined in claim 57, further comprising operating said server
computer to:
log in traders as log-in requests arrive;
supervise the establishment of multiple private chat forums; and
distribute messages among logged-in traders according to established chat forums.
60. A method for use in trading a commodity, comprising:
generating a trading offer;
automatically calculating a total stop amount for said trading offer;
automatically comparing said total stop amount with an available amount in a client or
trader account to determine whether said total stop amount and said available amount meet
pre-established criteria; and
acting on said trading offer only upon determining that said total stop amount and said
available amount meet said pre-established criteria.
61. The method defined in claim 60 wherein the calculating of said total stop amount
includes computing a stop amount and a slippage amount.
62. The method defined in claim 60 wherein the calculating of said slippage amount includes automatically multiplying a default slip per unit of said commodity times the
identified number of units of said commodity in said trading offer.
63. The method defined in claim 60, further comprising automatically allocating or
reserving said total stop amount from said available amount.
64. The method defined in claim 63, further comprising canceling at least a portion of
said trading offer and automatically returning at least a portion of the allocated or reserved
amount to said client or trader account upon such cancellation.
65. The method defined in claim 60 wherein the acting on said trading offer includes
transmitting a digital signal encoding said trading offer to over said computer network for
distribution to multiple traders.
66. The method defined in claim 65 wherein said digital signal is transmitted upon and
only upon a determination that said total stop amount is less than an available amount in said
client or trader account.
67. The method defined in claim 60 wherein the generating of said trading offer and
the comparing of said total stop amount said digital signal are performed by a client or trader
computer connected to said network.
68. The method defined in claim 60 wherein the transmitting of said digital signal includes directing said digital signal to a server computer connected to said computer
network, said server computer distributing said trading offer to said traders.
69. A server computer connected to a computer network for implementing an on-line
commodities trading system, comprising:
a queue maintenance unit for maintaining a queue of bids, a queue of offers, a queue of
stop bids, and a queue of stop offers;
a comparator operatively connected to said queue maintenance unit for determining
whether a match between a bid and an offer has occurred;
an order execution module operatively coupled to said comparator and said queue
maintenance unit in part for modifying at least one of said queue of bids and said queue of
offers upon a determination by said comparator that a match has occurred;
a monitoring module operatively connected to said comparator and said queue
maintenance unit for monitoring said stop bids and said stop offers to relation to said match to
determine whether any of said stop bids and said stop offers should be executed; and
a stop execution module operatively coupled to said monitoring module and to said
queue maintenance unit for executing one of said stop bids and said stop offers and modifying
a respective one of said queue of stop bids and said queue of stop offers upon execution of
said one of said stop bids and said stop orders.
70. The server computer defined in claim 69 wherein said order execution module
includes means for (a) modifying accounts of traders who made a matching bid and offer to
sell, (b) removing said matching bid and offer to sell from said queue of bids and said queue of offers to sell, (c) transmitting signals over said computer network to advise all logged-in
traders of the match, upon detection by said comparator of the match, and (d) sending specific
confirmation to the traders who made the matching bid and offer to sell.
71. The server computer defined in claim 70, further comprising a position
determination module operatively connected to said order execution module for computing,
upon detection by said comparator of the matching bid and order to sell, positions of the
traders who made the matching bid and offer to sell and further computing stops associated
with the computed positions, said position determination module being operatively connected
to said queue maintenance module for updating said queue of stop bids and said queue of stop
offers to incorporate the computed stops.
72. The server computer defined in claim 69, further comprising a communications or
posting module operatively connected to said queue maintenance unit for broadcasting said
queue of bids, said queue of offers, said queue of stop bids, and said queue of stop offers over
the computer network to computers of participating traders.
73. A server computer connected to a computer network for implementing an on-line
commodities trading system, comprising:
a queue maintenance unit for maintaining a queue of bids, a queue of offers, a queue of
stop bids, and a queue of stop offers;
a comparator operatively connected to said queue maintenance unit for determining
whether a match between a bid and an offer has occurred; an order execution module operatively coupled to said comparator and said queue
maintenance unit in part for modifying at least one of said queue of bids and said queue of
offers upon a determination by said comparator that a match has occurred; and
a communications or posting module operatively connected to said queue maintenance
unit for broadcasting said queue of bids, said queue of offers, said queue of stop bids, and said
queue of stop offers over the computer network to computers of participating traders.
74. The server computer defined in claim 73, further comprising a position
determination module operatively connected to said order execution module for computing,
upon detection by said comparator of the matching bid and order to sell, positions of the
traders who made the matching bid and offer to sell and further computing stops associated
with the computed positions, said position determination module being operatively connected
to said queue maintenance module for updating said queue of stop bids and said queue of stop
offers to incorporate the computed stops.
75. A server computer connected to a computer network for implementing an on-line
commodities trading system, comprising:
a queue maintenance unit for maintaining a queue of bids, a queue of offers, a queue of
stop bids, and a queue of stop offers;
a comparator operatively connected to said queue maintenance unit for determining
whether a match between a bid and an offer has occuπed;
an order execution module operatively coupled to said comparator and said queue
maintenance unit in part for modifying at least one of said queue of bids and said queue of offers upon a determination by said comparator that a match has occuπed; and
a position determination module operatively connected to said order execution module
for computing, upon detection by said comparator of the matching bid and order to sell,
positions of the traders who made the matching bid and offer to sell and further computing
stops associated with the computed positions, said position determination module being
operatively connected to said queue maintenance module for updating said queue of stop bids
and said queue of stop offers to incorporate the computed stops.
PCT/US2000/027853 1999-10-08 2000-10-06 Real-time commodity trading method and apparatus WO2001027836A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/415,392 1999-10-08
US09/415,392 US7171386B1 (en) 1999-10-08 1999-10-08 Real-time commodity trading method and apparatus

Publications (2)

Publication Number Publication Date
WO2001027836A1 WO2001027836A1 (en) 2001-04-19
WO2001027836A9 true WO2001027836A9 (en) 2002-11-07

Family

ID=23645513

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/027853 WO2001027836A1 (en) 1999-10-08 2000-10-06 Real-time commodity trading method and apparatus

Country Status (2)

Country Link
US (1) US7171386B1 (en)
WO (1) WO2001027836A1 (en)

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10586282B2 (en) * 1996-03-25 2020-03-10 Cfph, Llc System and method for trading based on tournament-style events
US20060173761A1 (en) * 1996-03-25 2006-08-03 Cfph, Llc System and Method for Market Research Based on Financial Exchange
US6505174B1 (en) 1996-03-25 2003-01-07 Hsx, Inc. Computer-implemented securities trading system with a virtual specialist function
US7720742B1 (en) * 1999-03-01 2010-05-18 Ubs Ag Computer trading system method and interface
US6993504B1 (en) 1999-04-09 2006-01-31 Trading Technologies International, Inc. User interface for semi-fungible trading
US7212999B2 (en) 1999-04-09 2007-05-01 Trading Technologies International, Inc. User interface for an electronic trading system
WO2001018714A2 (en) 1999-09-08 2001-03-15 Wizard Technologies, Inc. Transaction and account management system
US7171386B1 (en) * 1999-10-08 2007-01-30 Rfv Holdings Real-time commodity trading method and apparatus
WO2001046841A2 (en) * 1999-12-22 2001-06-28 Espeed, Inc Systems and methods for providing a trading interface
US7356498B2 (en) 1999-12-30 2008-04-08 Chicago Board Options Exchange, Incorporated Automated trading exchange system having integrated quote risk monitoring and integrated quote modification services
US9727916B1 (en) 1999-12-30 2017-08-08 Chicago Board Options Exchange, Incorporated Automated trading exchange system having integrated quote risk monitoring and integrated quote modification services
US6938011B1 (en) 2000-03-02 2005-08-30 Trading Technologies International, Inc. Click based trading with market depth display
US7389268B1 (en) 2000-03-02 2008-06-17 Trading Technologies International, Inc. Trading tools for electronic trading
US6772132B1 (en) 2000-03-02 2004-08-03 Trading Technologies International, Inc. Click based trading with intuitive grid display of market depth
US7844670B2 (en) * 2000-04-03 2010-11-30 Paltalk Holdings, Inc. Method and computer program product for establishing real-time communications between networked computers
US20020023134A1 (en) 2000-04-03 2002-02-21 Roskowski Steven G. Method and computer program product for establishing real-time communications between networked computers
US7437325B2 (en) 2002-03-05 2008-10-14 Pablo Llc System and method for performing automatic spread trading
US20030208433A1 (en) * 2000-06-26 2003-11-06 Paul Haddad Bandwidth Trading Engine
US7043457B1 (en) 2000-06-28 2006-05-09 Probuild, Inc. System and method for managing and evaluating network commodities purchasing
US20040186805A1 (en) * 2000-07-01 2004-09-23 Gologorsky Steven Phillip Sealed-bid auction comprising staged bid publication
US7711798B1 (en) 2000-07-12 2010-05-04 Paltalk Holdings, Inc. Method and computer program for offering products and services by examining user activity
US7516097B2 (en) 2000-08-04 2009-04-07 Bgc Partners, Inc. Systems and methods for anonymous electronic trading
US7299207B1 (en) * 2000-08-23 2007-11-20 Demont & Breyer, Llc Data processing system that provides an auction with programmable proxy bids
US7689498B2 (en) * 2000-08-24 2010-03-30 Volbroker Limited System and method for trading options
US7957514B2 (en) 2000-12-18 2011-06-07 Paltalk Holdings, Inc. System, method and computer program product for conveying presence information via voice mail
US8145557B2 (en) * 2001-03-30 2012-03-27 Bgc Partners, Inc. Bid/offer spread trading
WO2002091113A2 (en) * 2001-05-03 2002-11-14 Thermodynamic Design, Llc Method and system of exchanging and deriving economic benefit from exchanging securities
US10152747B2 (en) 2001-05-31 2018-12-11 Bgc Partners, Inc. Securities trading system
US8015097B2 (en) 2001-05-31 2011-09-06 Bgc Partners, Inc. Securities trading system with multiple levels of interest
US8494949B2 (en) 2001-06-01 2013-07-23 Bgc Partners, Inc. Electronic trading for principal/broker trading
US7243083B2 (en) * 2001-06-14 2007-07-10 Trading Technologies International, Inc. Electronic spread trading tool
US10354322B2 (en) * 2001-10-18 2019-07-16 Bgc Partners, Inc. Two sided trading orders
US8386362B2 (en) * 2002-06-05 2013-02-26 The Nasdaq Omx Group, Inc. Information distribution process and method
US20060184445A1 (en) * 2002-07-20 2006-08-17 Richard Sandor Systems and methods for trading emission reductions
US7343341B2 (en) * 2002-07-20 2008-03-11 Chicago Climate Exchange, Inc. Systems and methods for trading emission reductions
US7904370B2 (en) * 2003-03-31 2011-03-08 Trading Technologies International, Inc. System and method for variably regulating order entry in an electronic trading system
US8353763B2 (en) * 2003-03-31 2013-01-15 Cantor Index, Llc System and method for betting on a participant in a group of events
US7641549B2 (en) 2003-04-11 2010-01-05 Cantor Index Llc Lottery and auction based tournament entry exchange platform
EP1656637A4 (en) * 2003-06-27 2006-10-18 Bear Stearns & Co Inc Method and system for initiating pairs trading across multiple markets having automatic foreign exchange price hedge
US7587357B1 (en) 2003-06-30 2009-09-08 Trading Technologies International Inc. Repositioning of market information on trading screens
US20050038732A1 (en) * 2003-08-13 2005-02-17 Espeed, Inc. Systems and methods for bid/offer liquidity spread trading
US10515408B2 (en) 2003-08-13 2019-12-24 Bgc Partners, Inc. Systems and methods for bid/offer liquidity spread trading
US20110208633A1 (en) * 2010-02-19 2011-08-25 Asher Joseph M System and method for trading a futures contract based on a financial instrument indexed to entertainment dividends
US7567931B2 (en) 2004-01-16 2009-07-28 Bgc Partners, Inc. System and method for forming a financial instrument indexed to entertainment revenue
US7698198B2 (en) * 2004-01-16 2010-04-13 Bgc Partners, Inc. System and method for purchasing a financial instrument indexed to entertainment revenue
US7650309B2 (en) * 2004-10-28 2010-01-19 The Depository Trust and Clearing Corporation Methods and systems for netting of payments and collateral
CA2582130C (en) * 2006-03-20 2011-10-04 A.C. Dispensing Equipment, Inc. Beverage whitening composition and method
JP2009533730A (en) * 2006-04-07 2009-09-17 ブルームバーグ・ファイナンス・エル・ピー System and method for facilitating foreign currency management
US7672898B1 (en) 2006-07-07 2010-03-02 Trading Technologies International Inc. Regulating order entry in an electronic trading environment to maintain an actual cost for a trading strategy
CN101516708B (en) * 2006-09-15 2012-07-04 舍弗勒技术股份两合公司 Method for the operation of a hybrid drive train in a motor vehicle
US10825089B2 (en) * 2007-03-15 2020-11-03 Bgc Partners, Inc. Error detection and recovery in an electronic trading system
US9218720B2 (en) 2007-04-16 2015-12-22 Cfph, Llc Box office game
US8429057B1 (en) 2007-11-19 2013-04-23 Curex Innovations Llc Systems and methods for creation, issuance, redemption, conversion, offering, trading, and clearing a debt obligation convertible into cash plus a spot foreign exchange contract that is priced to reflect the value of the debt obligation in a base currency in relation to the value of a reference currency
US8113982B2 (en) * 2009-03-30 2012-02-14 Ford Global Technologies, Llc Eight speed planetary kinematic arrangement
US20140035363A1 (en) 2009-09-25 2014-02-06 Pucline, Llc Electrical power supplying device having a central power-receptacle assembly supplying electrical power to power plugs, adaptors and modules while concealed from view and managing excess power cord during power supplying operations
US8781946B2 (en) 2010-07-14 2014-07-15 Trading Technologies International, Inc. Distributed server side device architecture
US11100577B1 (en) * 2010-08-20 2021-08-24 Nex Services North America Llc Anonymous trading system
US20120254009A1 (en) * 2011-04-04 2012-10-04 Jonathan Scott Thorp Real-time commodity exchange system and method
US20130006827A1 (en) * 2011-06-29 2013-01-03 Waldstock Ltd Group based trading methods
WO2013006439A1 (en) 2011-07-01 2013-01-10 Cürex Innovations, Llc Systems and methods for open execution auction trading of financial instruments
US8732067B2 (en) * 2012-03-09 2014-05-20 Trading Technologies International, Inc Slicer order quantity reduction tool
US9513682B2 (en) 2013-07-03 2016-12-06 Pucline, Llc Transportable electrical power supplying device for storing and configuring excess power cord and sharing a multiplicity of AC and DC electrical power supplies in diverse user environments
US9927837B2 (en) 2013-07-03 2018-03-27 Pucline, Llc Electrical power supplying system having an electrical power supplying docking station with a multi-function module for use in diverse environments
US20160314540A1 (en) * 2015-04-21 2016-10-27 Prima Regulated Markets Limited Price assessment platform

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4412287A (en) * 1975-05-29 1983-10-25 Braddock Iii Walter D Automated stock exchange
US4903201A (en) 1983-11-03 1990-02-20 World Energy Exchange Corporation Automated futures trading exchange
US4980826A (en) * 1983-11-03 1990-12-25 World Energy Exchange Corporation Voice actuated automated futures trading exchange
US4677933A (en) 1985-11-22 1987-07-07 Rotella Thomas B Stock price tracking apparatus
US5168446A (en) 1989-05-23 1992-12-01 Telerate Systems Incorporated System for conducting and processing spot commodity transactions
US5136501A (en) * 1989-05-26 1992-08-04 Reuters Limited Anonymous matching system
US5297031A (en) 1990-03-06 1994-03-22 Chicago Board Of Trade Method and apparatus for order management by market brokers
US5809483A (en) * 1994-05-13 1998-09-15 Broka; S. William Online transaction processing system for bond trading
GB9416673D0 (en) 1994-08-17 1994-10-12 Reuters Ltd Data exchange filtering system
US5845265A (en) * 1995-04-26 1998-12-01 Mercexchange, L.L.C. Consignment nodes
US5950176A (en) * 1996-03-25 1999-09-07 Hsx, Inc. Computer-implemented securities trading system with a virtual specialist function
US6029146A (en) * 1996-08-21 2000-02-22 Crossmar, Inc. Method and apparatus for trading securities electronically
US6247000B1 (en) * 1996-08-21 2001-06-12 Crossmar, Inc. Method and system for confirmation and settlement for financial transactions matching
US6317728B1 (en) * 1998-10-13 2001-11-13 Richard L. Kane Securities and commodities trading system
US7171386B1 (en) * 1999-10-08 2007-01-30 Rfv Holdings Real-time commodity trading method and apparatus

Also Published As

Publication number Publication date
US7171386B1 (en) 2007-01-30
WO2001027836A1 (en) 2001-04-19

Similar Documents

Publication Publication Date Title
US7171386B1 (en) Real-time commodity trading method and apparatus
US10810582B2 (en) Multi currency exchanges between participants
US6018721A (en) Method and system for improved collateral monitoring and control
US7299208B1 (en) Apparatus and system for defining an automated spread trading parameter
US6418419B1 (en) Automated system for conditional order transactions in securities or other items in commerce
US6128598A (en) System and method for generating and executing insurance policies for foreign exchange losses
US6026383A (en) System and method for an efficient dynamic auction for multiple objects
US8583535B2 (en) Operation of auctions over computer networks
US20050283422A1 (en) Centralized electronic currency trading exchange
US20050228739A1 (en) Financial instrument trading system, method and computer program product
US20080306864A1 (en) Electronic Trading System Supporting Anonymous Negotiation And Indicators Of Interest
MXPA01006215A (en) Automated price improvement protocol processor.
US20070038523A1 (en) System and method for transactional hedging
US7606763B2 (en) Systems and methods for improving auction liquidity
EP1546968A2 (en) Computer-implemented system for automated trading
US7747517B2 (en) System for anonymity electronic commerce having crediting function and method
US20030110115A1 (en) Change management system, change management server, change management method, and change management program
US20020138396A1 (en) Methods and apparatus for exchanging ferrous, non-ferrous and platinum group metals
WO2001007986A2 (en) System and method for managing swap orders
KR20060100013A (en) Escrow service system and method for investing payment in financial merchandise
WO1998053417A1 (en) Method and system for improved collateral monitoring and control
MXPA04001308A (en) Data processing system for implementing a financial market.
KR20170081144A (en) Revenue-type property joint purchasing device and method through the internet

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): IL JP TR US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
AK Designated states

Kind code of ref document: C2

Designated state(s): IL JP TR US

AL Designated countries for regional patents

Kind code of ref document: C2

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

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

Ref country code: JP