System and Method for Automatic Repositioning of Market Information in a Graphical User Interface
A method for automatically positioning information related to a commodity on a graphical user interface. Market information is displayed on the graphical user interface. The market information may be presented as a number of indicators, corresponding to particular items of interest, that are associated with a static scale. The scale may, for example, represent price. Upon detecting a predetermined condition, the location of the market information is automatically repositioned.
- 1. (canceled)
- 2. A method including:
receiving, by a computing device, market information for a tradeable object from an electronic exchange, wherein the market information identifies an inside market for the tradeable object; displaying, by the computing device, a trading interface configured to receive input from a user; dynamically displaying, by the trading interface of the computing device, the inside market relative to a price scale according to the market information, wherein the display of the inside market relative to the price scale changes as the market information changes; and automatically re-positioning, by the trading interface of the computing device, the inside market in response to a predetermined condition, wherein the automatically re-positioning includes changing the scale of prices and moving the inside market with respect to the trading interface to a predetermined location, where the predetermined condition includes expiration of a predetermined time.
- View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11)
- 12. A method including:
receiving, by a computing device, market information for a tradeable object from an electronic exchange, wherein the market information identifies a last traded price for the tradeable object; displaying, by the computing device, a trading interface configured to receive input from a user; dynamically displaying, by the trading interface of the computing device, the last traded price relative to a price scale according to the market information, wherein the display of the last traded price relative to the price scale changes as the market information changes; and automatically re-positioning, by the trading interface of the computing device, the last traded price in response to a predetermined condition, wherein the automatically re-positioning includes changing the scale of prices and moving the inside market with respect to the trading interface to a predetermined location, where the predetermined condition includes expiration of a predetermined time.
- View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
This application is a continuation of U.S. patent application Ser. No. 15/983,898, filed May 18, 2018, which is a continuation of U.S. patent application Ser. No. 14/249,915, filed Apr. 10, 2014, now U.S. Pat. No. 10,002,386, which is a continuation of U.S. patent application Ser. No. 10/403,881, filed Mar. 31, 2003, now U.S. Pat. No. 8,738,497, which is a continuation of U.S. patent application Ser. No. 10/125,894, entitled “Trading Tools for Electronic Trading,” filed Apr. 19, 2002, now U.S. Pat. No. 7,389,268, which is a continuation-in-part of U.S. patent application Ser. No. 09/971,087, filed Oct. 5, 2001, now U.S. Pat. No. 7,127,424, which claims priority from U.S. Provisional Application No. 60/238,001, filed Oct. 6, 2000. U.S. patent application Ser. No. 10/125,894 is also a continuation-in-part of U.S. patent application Ser. No. 09/590,692, filed Jun. 9, 2000, now U.S. Pat. No. 6,772,132, and of U.S. patent application Ser. No. 09/589,751, filed Jun. 9, 2000, now U.S. Pat. No. 6,938,011. The Ser. Nos. 09/590,692 and 09/589,751 applications both claim priority from U.S. Provisional Application No. 60/186,322, filed Mar. 2, 2000. U.S. patent application Ser. No. 10/125,894 also claims priority from U.S. Provisional Application No. 60/325,553, filed Oct. 1, 2001. The entire contents of each of the above-referenced applications are incorporated herein by reference for all purposes.
The present invention is directed to electronic trading. Specifically, the present invention is directed to tools for trading products that can be traded with quantities and/or prices.
Many exchanges throughout the world utilize electronic trading in varying degrees to trade stocks, bonds, futures, options and other products. These electronic exchanges are based on three components: mainframe computers (host), communications servers, and the exchange participants'"'"' computers (client). The host forms the electronic heart of the fully computerized electronic trading system. The system'"'"'s operations cover order-matching, maintaining order books and positions, price information, and managing and updating the database for the online trading day as well as nightly batch runs. The host is also equipped with external interfaces that maintain uninterrupted online contact to quote vendors and other price information systems.
Traders can link to the host through at least three types of structures: high speed data lines, high speed communications servers or the Internet. High speed data lines establish direct connections between the client and the host. Another connection can be established by configuring high speed networks or communications servers at strategic access points worldwide in locations where traders physically are located. Data is transmitted in both directions between traders and exchanges via dedicated high speed communication lines. Most exchange participants install two lines between the exchange and the client site or between the communication server and the client site as a safety measure against potential failures. An exchange'"'"'s internal computer system is also often installed with backups as a redundant measure to secure system availability. The third connection utilizes the Internet. Here, the exchange and the traders communicate back and forth through high speed data lines, which are connected to the Internet. This allows traders to be located anywhere they can establish a connection to the Internet.
Irrespective of the way in which a connection is established, the exchange participants'"'"' computers allow traders to participate in the market. They use software that creates specialized interactive trading screens on the traders'"'"' desktops. The trading screens enable traders to enter and execute orders, obtain market quotes, and monitor positions. The range and quality of features available to traders on their screens varies according to the specific software application being run. The installation of open interfaces in the development of an exchange'"'"'s electronic strategy means users can choose, depending on their trading style and internal requirements, the means by which they will access the exchange.
The world'"'"'s stock, bond, futures, options and other exchanges have volatile products with prices that move rapidly. To profit in these markets, traders must be able to react quickly. A skilled trader with the quickest software, the fastest communications, and the most sophisticated analysis can significantly improve the trader'"'"'s own or the trader'"'"'s firm'"'"'s bottom line. The slightest speed advantage can generate significant returns in a fast moving market. In today'"'"'s securities markets, a trader lacking a technologically advanced interface is at a severe competitive disadvantage.
Irrespective of what interface a trader uses to enter orders in the market, each market supplies to and requires from every trader the same information. The bids and asks in the market make up the market data and everyone logged on to trade can receive this information if the exchange provides it. Similarly, every exchange requires that certain information be included in each order. For example, traders must supply information like the name of the commodity, quantity, restrictions, price and multiple other variables. Without all of the order information, the market will not accept the order.
In existing systems, multiple elements of an order must be entered prior to an order being sent to market, which is time consuming for the trader. Such elements include the commodity symbol, the desired price, the quantity and whether a buy or a sell order is desired. The more time a trader takes entering an order, the more likely the price on which the trader wanted to bid or offer will change or not be available in the market. The market is fluid as many traders are sending orders to the market simultaneously. In fact, successful markets strive to have such a high volume of trading that any trader who wishes to enter an order will find a match and have the order filled quickly, if not immediately. In such liquid markets, the prices of the commodities fluctuate rapidly. On a trading screen, this results in rapid changes in the price and quantity fields within the market grid. If a trader intends to enter an order at a particular price, but misses the price because the market prices moved before the trader could enter the order, the trader may lose hundreds, thousands, even millions of dollars. The faster a trader can trade, the less likely it will be that the trader will miss the trader'"'"'s price and the more likely the trader will make money.
With the advent of electronic trading, it has become easier for a larger number of people to have access to participate in the market at any given time. Such an increase in the number of potential traders has lead to other changes, including a more competitive market, greater liquidity, rapidly changing prices, and other changes. Due to the complexities that these changes bring, it is increasingly important to have a system of making the most accurate and calculated trades possible in the most efficient manner. It is therefore desirable for electronic trading systems to offer tools that can assist a trader in adapting to an electronic marketplace, and help the trader to make trades at desirable prices.
The preferred embodiments relate to a system and method for automatic repositioning of market information in a graphical user interface.
In accordance with a first aspect, a method for automatically positioning information related to a commodity on a graphical user interface is provided. The method includes receiving market information relating to the commodity from an electronic exchange. The market information may include a number of items of interest that are associated with a price. The method displays an information display region, which has a number of locations arranged such that each location corresponds to a price level along at least a portion of a static price axis. The method also displays a number of indicators, at a first time. Each indicator is associated with an item of interest and each indicator is displayed in one of the locations in the information display region. The method further includes automatically repositioning the static price axis upon detecting a predetermined condition so that the number of locations of the information display region corresponds to a different portion of the static price axis at a second time. In this manner, the indicators are moved to a new location in the information display region that corresponds to the price level on the static price axis that is associated with that indicator.
In accordance with a second aspect, a method for automatically re-positioning market information relating to a commodity on a graphical user interface is provided, where the method includes displaying a plurality of items of interest comprising market information in relation to a static scale in a trading interface. At least one item of interest from the plurality of items of interest is identified as a basis for automatically positioning the plurality of items of interest. The display on the trading interface is updated as the market information changes, causing one or more of the plurality of items of interest to move in relation to the static scale. The method then automatically re-positions the plurality of items of interest in response to the identified item of interest.
As described with reference to the accompanying figures, trading tools in accordance with various preferred embodiments are provided to, among other things, facilitate fast and accurate order entry. Certain of the trading tools work particularly well with a trading display that shows working orders and/or bid and ask quantities, or other market information, displayed in association with a static price scale or axis. An example of such a trading display is illustrated in
In a preferred embodiment, one or more of the trading tools described herein is implemented on a computer or electronic terminal. The computer is able to communicate either directly or indirectly (using intermediate devices) with one or more exchanges to receive and transmit market, commodity, and trading order information. The computer or terminal is able to interact with the trader and to generate contents and characteristics of a trade order to be sent to the exchange. A trading application allows for a trader to view market data, enter and cancel trade orders and/or view orders. The scope of the present invention is not limited by the type of terminal or device used, and is not limited to any particular type of trading application. Rather, the trading tools may be implemented on any existing or future terminal or device with the processing capability to perform the functions described herein.
As used herein, the word “commodity” refers simply to a thing that is an object of trade. It includes anything that can be traded with a quantity and/or price. Examples of such objects include, but are not limited to, all types of traded financial products, such as, for example, stocks, options, bonds, futures, currency, and warrants, as well as funds, derivatives and collections or combinations of the foregoing. The commodity may be “real,” such as objects that are listed by an exchange for trading, or “synthetic,” such as a combination of real commodities that is created by the user.
Further, the specification may refer to a single click of a mouse as an example of a single action of the user for input and interaction with the terminal display. In order to allow actions to be taken in the shortest amount of time, a preferred embodiment of the trading application responds upon depressing the mouse button, rather than waiting for the up click. While this may describe a preferred mode of interaction, the scope of the present invention is not limited to the use of a mouse as the input device or to the click of a mouse button as the user'"'"'s single action. Rather, any action by a user, whether comprising one or more clicks of a mouse button or other input device, such as a keyboard, joystick or touch screen, may be considered the single action of the user.
An electronic trading system may be configured to allow for trading in a single or in multiple exchanges simultaneously. Connections for an example of such a system are illustrated in
When an electronic trading system is configured to receive data from multiple exchanges, it is preferable to translate the data from each exchange into a format that may be displayed using a graphical user interface. For the example shown in
A commercially available trading application that allows a user to trade in a system like that shown in
Several preferred embodiments include the display of “market depth” and/or allow a user to view the market depth of a commodity and to enter orders with a single input, such as the click of a computer mouse button. As used herein, market depth is represented by the available order book, including the current bid and ask quantities and their associated prices. In other words, subject to the limits noted below, market depth is each available pending bid and ask quantity, entered at a particular price, in addition to the “inside market.” For a commodity being traded, the inside market is the highest bid price and the lowest ask price. For embodiments relating to a display that includes market depth, interfaces as shown in
Generally, the exchanges send price, order and fill information to the gateways 107-109. The trading application, for example X_TRADER® processes this information and maps it to positions in a theoretical grid program or any other comparable mapping technique for mapping data to a screen. The physical mapping of such information to a screen grid, for display on a client device like the client devices 110-116, may be done by any technique known to those skilled in the art. The present invention is not limited by the method used to map the data to the screen display.
The system'"'"'s ability to fully display the market depth typically depends on how much of the market depth the exchange provides. Some exchanges, for example, supply an infinite market depth, while others provide no market depth or only a few orders away from the inside market. The user can preferably also choose how far into the market depth to display on the trader'"'"'s screen. For example, the user may only want to have displayed the market depth within a predetermined number of ticks away from the inside market.
In the screen display shown in
The configuration of the screen display itself informs the user in a more convenient and efficient manner than many existing systems. Traders gain an advantage by seeing the market depth because they can see trends in the orders in the market. The market depth display shows the trader the interest the market has in a given commodity at different price levels.
Another type of display system and related trading method which may be used in conjunction with the preferred embodiments is described in detail in U.S. application Ser. No. 09/590,692, filed on Jun. 9, 2000. This method ensures fast and accurate execution of trades by displaying information, such as market depth or working orders, in association with an axis or scale of static prices. One embodiment using this type of display system displays the market depth on a vertical plane, which fluctuates logically up or down the plane as the market prices fluctuates. The invention is not limited to any particular display—the information could be displayed on a horizontal plane, n-dimensionally or in any other fashion. This allows the trader to trade quickly and efficiently. An example of such a display is illustrated in the screen display of
In a fast moving market, where varying price levels are trading (i.e. bids and offers entering the market are being matched at different prices), it is beneficial that the trader be able to quickly enter orders and quickly see and analyze market information. Displays of the type illustrated in
The display shown in
Bid quantities are in column 300 labeled BidQ and ask quantities are in column 302 labeled AskQ. The representative prices for the given commodity are shown in column 304, where the prices are static and increment in “ticks,” where a tick is the minimum change in a price value that is set by the exchange for each commodity. The prices can be displayed as ticks, as multiples of ticks or in any other fashion. In the embodiment shown in
The values in the price column are static; that is, they do not normally change positions unless a re-centering command is received (discussed in detail later). The values in the Bid and Ask columns 300 and 302, however, are dynamic; that is, they move up and down (in the vertical example) to reflect the market depth for the given commodity. The LTQ column 308 shows the last traded quantity of the commodity. The relative position of the quantity value with respect to the Price values reflects the price at which that quantity was traded. Column 310 labeled E/W (Executed/Working) displays the current status of the trader'"'"'s orders. The status of each order is displayed in the price row where it was entered. For example, in cells 312, the number next to S indicates the number of the trader'"'"'s ordered lots that have been sold at the price in the specific row. The number next to W indicates the number of the trader'"'"'s ordered lots that are in the market, but have not been filled—i.e. the system is working on filling the order. Blanks in this column indicate that no orders are entered or working at that price. In cells 314, the number next to B indicates the number of the trader'"'"'s ordered lots that have been bought at the price in the specific row. The number next to W indicates the number of the trader'"'"'s ordered lots that are in the market, but have not been filled—i.e. the system is working on filling the order.
Various parameters are set and information is provided in column 316. For example, “10:48:44” in cell 318 shows the actual time of day. The L and R fields in cell 320 indicate a quantity value, which may be added to the order quantity entered. This process is explained below with respect to trading under this system. Below the L and R fields, in cell 322, a number appears which represents the current market volume. This is the number of lots that have been traded for the chosen commodity. Cell 324, “X 10”, displays the Net Quantity, the current position of the trader on the chosen commodity. The number “10” represents the trader'"'"'s buys minus sells. Cell 326 is the “Current Quantity”; this field represents the quantity for the next order that the trader will send to market. This can be adjusted with right and left clicks (up and down) or by clicking the buttons which appear below the Current Quantity in cells 328. These buttons increase the current quantity by the indicated amount; for example, “10” will increase it by 10; “1H” will increase it by 100; “1K” will increase it by 1000. Cell 330 is the Clear button; clicking this button will clear the Current Quantity field. Cell 332 is the Quantity Description; this is a pull-down menu allowing the trader to chose from three Quantity Descriptions. In one embodiment, the pull-down menu is displayed when the arrow button in the window is clicked. The window includes NetPos, Offset and a field allowing the trader to enter numbers. Placing a number in this field will set a default buy or sell quantity. Choosing “Offset” in this field will enable the L/R buttons of cell 320. Choosing “NetPos” in this field will set the current Net Quantity (trader'"'"'s net position) as the trader'"'"'s quantity for his next trade. Cell 334 are +/−buttons; these buttons will alter the size of the screen—either larger (+) or smaller (−). Cell 336 is used to invoke Net 0; clicking this button will reset the Net Quantity (cell 332) to zero. Cell 338 is used to invoke Net Real; clicking this button will reset the Net Quantity (cell 322) to its actual position. It is to be understood that the preferred embodiments are not limited to a trading application that displays these particular buttons. Preferably, the buttons displayed and any parameter, such as quantity, that is set by those buttons are customizable or selectable by the user.
The inside market and market depth ascend and descend as prices in the market increase and decrease. For example,
As the market ascends or descends the price column, the inside market, working orders, last traded price and/or quantity, or any other item that may be of interest might go above or below the price column displayed on a trader'"'"'s screen. Usually a trader will want to be able to see the inside market to assess future trades. The system addresses this problem with a positioning feature. With a single click at any point within the gray area, 342 in
The same information and features can be displayed and enabled in a horizontal or other fashion. Just as the market ascends and descends the vertical scale in this preferred embodiment, shown in
The specific features of the embodiment of a display as shown in
Placing Trade Orders
Next, trading commodities, and specifically, the placement of trade orders using a representative display of the type shown in
The following equations are used by this exemplary system to generate trade orders and to determine the quantity and price to be associated with the trade order. The following abbreviations are used in these formulas: P=Price value of row clicked (in ticks), R=Value in R field, L=Value in L field, Q=Current Quantity, Qa=Total of all quantities in AskQ column at an equal or better price than P, Qb=Total of all quantities in BidQ column at an equal or better price than P, N=Current Net Position, Bo=Buy order sent to market and So=Sell order sent to market.
Any order entered using right mouse button
Bo=(Qa+R)P (Eq. 1) If BidQ field clicked.
So=(Qb+R)P (Eq. 2) If AskQ field clicked.
Orders entered using the left mouse button
If “Offset” mode chosen in Quantity Description field then:
Bo=(Qa+L)P (Eq. 3) If BidQ field clicked.
So=(Qb+L)P (Eq. 4) If AskQ field clicked.
If “number” mode chosen in Quantity Description field then:
Bo=QP (Eq. 5)
So=QP (Eq. 6)
If “NetPos” mode chosen in Quantity Description field then:
Bo=NP (Eq. 7)
So=NP (Eq. 8)
Orders also can be sent to market for quantities that vary according to the quantities available in the market; quantities preset by the trader; and which mouse button the trader clicks. Using this feature, a trader can buy or sell all of the bids or asks in the market at or better than a chosen price with one click. The trader also could add or subtract a preset quantity from the quantities outstanding in the market. If the trader clicks in a trading cell—i.e. in the BidQ or AskQ column, the trader will enter an order in the market. The parameters of the order depend on which mouse button the trader clicks and what preset values the trader set.
Using the screen display and values from
Using the right mouse button, for example, an order would be sent to market at the price that corresponds to the row clicked for the total quantity of orders in the market that equal or better the price in that row plus the quantity in the R field 508. Thus, a right click in the AskQ column 506 in the 87 price row will send a sell order to market at a price of 87 and a quantity of 150, where 150 is the sum of all the quantities 30, 97, 18 and 5. The quantities 30, 97 and 18 are all of the quantities in the market that would meet or better the trader'"'"'s sell order price of 87. These quantities are displayed in the BidQ column 500 because this column represents the orders outstanding in the market to purchase the commodity at each corresponding price. The quantity 5 is the quantity pre-set in the R field 508.
Similarly, a right click in the BidQ column 500 at the same price level of 87 would send a buy limit order to market for a quantity of 5 at a price of 87. The quantity is determined in the same manner as above. In this example, though, there are no orders in the market that equal or better the chosen price—there are no quantities in the AskQ column 506 that equal or better this price. Therefore, the sum of the equal or better quantities is zero (“0”). The total order entered by the trader will be the value in the R field 508, which is 5.
An order entered with the left mouse button, for example, and the “Offset” option chosen in the quantity description field 502 will be calculated in the same way as above, but the quantity in the L field 510 will be added instead of the quantity in the R field 508. Thus, a left click in the BidQ column 500 in the 92 price row will send a buy order to market at a price of 92 and a quantity of 96. The quantity 96 is the sum of all the quantities 45, 28, 20 and 3. 45, 28 and 20 are all quantities in the market that would meet or better the trader'"'"'s buy order price of 92. These quantities are displayed in the AskQ column 506 because this column represents the orders outstanding in the market to sell the commodity at each corresponding price. The quantity 3 is the quantity pre-set in the L field 510.
The values in the L or R fields 510, 508 may be negative numbers. This would effectively decrease the total quantity sent to market. In other words, in the example of a right click in the AskQ column 506 in the 87 price row, if the R field 508 was −5, the total quantity sent to market would be 140 (30+97+18+(−5)).
If a trader chose the “NetPos” option in the quantity description field 502, a right click, for example, would still work as explained above. A left click would, for example, enter an order with a price corresponding to the price row clicked and a quantity equal to the current Net position of the trader. The Net position of the trader is the trader'"'"'s current position on the chosen commodity. In other words, if the trader has bought 10 more commodities than the trader has sold, this value would be 10. NetPos would not affect the quantity of an order sent with a right click.
If the trader chose a number value in the quantity description, a left click would send an order to market for the current quantity chosen by the trader. The default value of the current quantity will be the number entered in the quantity description field, but it could be changed by adjusting the figure in the current quantity field 502.
An embodiment of the system also allows a trader to delete all of his working orders with a single click of either the right or left mouse button anywhere in the last traded quantity (LTQ) column 512 (this functionality can be provided in any general area of the screen as well or as an alternative). This allows a trader to exit the market immediately. An embodiment of the invention also allows a trader to delete all of his orders from the market at a particular price level. A click with either mouse button in the Executed/Working (E/W) column 514 will delete all working orders in the cell that was clicked. Thus, if a trader believes that previously sent orders at a particular price that have not been filled would be poor trades, the trader can delete these orders with a single click.
A process for placing trade orders using the display and trading method as described above is shown in the flowchart of
In step 600, the trader has the display on the trading terminal screen showing the market for a given commodity. In step 602, the parameters are set in the appropriate fields, such as the L and R fields and the Current Quantity, NetPos or Offset fields from the pull-down menu. In step 604, the mouse pointer is positioned and clicked over a cell in the display by the trader. In step 606, the system determines whether the cell clicked is a tradeable cell (i.e. in the AskQ column or BidQ column). If not, then in step 608, no trade order is created or sent and, rather, other quantities are adjusted or functions are performed based upon the cell selected. Otherwise, in step 610, the system determines whether it was the left or the right button of the mouse that was clicked. If it was the right, then in step 612, the system will use the quantity in the R field when it determines the total quantity of the order in step 614. If the left button was clicked, then in step 616, the system determines which quantity description was chosen: Offset, NetPos or an actual number.
If Offset was chosen, then the system, in step 618, will use the quantity in the L field when it determines the total quantity of the order in step 614. If NetPos was chosen, then the system, in step 620, will determine that the total quantity for the trade order will be the current NetPos value—the net position of the trader in the given commodity. If an actual number was used as the quantity description, then, in step 622, the system will determine that the total quantity for the trade order will be the current quantity entered. In step 614, the system will determine that the total quantity for the trade order will be the value of the R field (if step 612 was taken) or the value of the L field (if step 618 was taken), plus all quantities in the market for prices better than or equal to the price in the row clicked. This will add up the quantities for each order in the market that will fill the order being entered by the trader (plus the L or R value).
After either steps 614, 622 or 620, the system, in step 624, determines which column was clicked, BidQ or AskQ. If AskQ was clicked, then, in step 626, the system sends a sell limit order to the market at the price corresponding to the row for the total quantity as already determined. If BidQ was clicked, then, in step 628, the system sends a buy limit order to the market at the price corresponding to the row for the total quantity as already determined. The process described above is merely one embodiment and the present invention is not limited to this particular process or to any process.
One commercially available product that incorporates display screens of the type illustrated in
Given the foregoing information regarding graphical user interfaces for electronic trading and their use, a number of trading tools will now be described. One or more of these trading tools may be incorporated into a trading application, for example, to assist the trader and improve the efficiency and timeliness of trading.
Last Traded Quantity Marker
The “Last Traded Quantity Marker,” in accordance with a preferred embodiment, provides an indication of the Last Traded Quantity (LTQ). In a display that includes dynamic market information that is associated with a static price scale, such as the MD_TRADER™-style display, the LTQ marker may move up and down the LTQ column as an associated LTQ price changes. One form of a LTQ marker 700 is shown in
Generally, as long as a contract continues to trade at the same specific price, the LTQ will accumulate. When a contract trades at a new price, the marker may move beside that price and the quantity displayed inside the indicator box and will reflect the quantity of the last trade only. Should a contract trade at a price where a previous contract traded, the indicator will return to that price level, and the indicator box will again display the quantity of that last trade only (it will not add the newly traded quantity to the quantity that was displayed the last time the marker resided at this price). The indicator, located in the LTQ column 702, does not simply display the number of the last traded quantity. Rather, the marker also, by residing next to the price (in the price column 704) at which the last contract traded, indicates to the user the price at which that trade occurred. The LTQ marker 700 is preferably, but not necessarily, associated with the corresponding last traded price 706. It is not necessary that numerical values for a price or quantity be associated with the marker.
In accordance with a preferred embodiment, therefore, the LTQ marker 700 is a visual indicator of the last traded quantity. Any type of marker may be used as long as it may be recognized by the user as an indicator of quantity. Other indicators, such as color or a graphical indicator, like a sliding scale, thermometer-type scale or speedometer-type scale, may alternatively be used as a marker. The graphical indicators may, but are not required to, include associated numerical values. In further alternatives, however, combinations of indicators may be used to illustrate characteristics of an item of interest, like the LTQ. For example, the quantity itself may be presented numerically or graphically, and color may be used with the quantity indicator to illustrate a trend, such as increasing or decreasing volume or rate of change in volume, or increasing or decreasing price associated with the LTQ. In addition, although described in the preceding few paragraphs as a marker for the LTQ, these types of markers may alternatively be used for any item in the user interface that may be of interest to the user.
In addition, when the user interface is configured to display a consolidated static price scale, for example as described below under the heading Consolidation Control Icon, the LTQ cell 708 may be subdivided into price consolidation increments and a LTQ marker may be shown, for example, as a horizontal line, within the corresponding subdivision of the LTQ cell 708. The position of the graphical indicator, which in this example is a horizontal line, within the LTQ cell 708 provides a visual indication of the price within the consolidated range at which the last traded quantity changed hands.
Color Coding of Markers
As noted above, items of interest in the user interface may be color coded or highlighted using color or gray scale shades. In a preferred embodiment, the user interface is of the type shown in
In addition, color may provide additional information about items of interest, like the LTQ. For example, when the commodity at issue has yet to have been traded during that current trading session, the LTQ column 702 may be shown in a particular color, such as gray, and may remain that color until a quantity has been filled. When a quantity has been filled, the cell displaying the first LTQ for that session may be highlighted in a particular color, such as green, signifying neither an up nor down tick from the previous LTQ. Subsequent fills will result in the LTQ cell being highlighted, for the preceding examples, in either a blue or a red color, unless the price level does not change from one trade to another, in which case the cell will remain green until there is a change in the price of the LTQ.
This benefits a trader in that the display of, and the color designation(s) for, the LTQ provides a visual reference of the market'"'"'s price movements, status or trends, thereby permitting a trader to quickly absorb additional information, such as the direction of the market'"'"'s activity. As a result of seeing the changes in the price of the last traded quantities, a trader can more easily determine market status and trends, thereby enhancing the likelihood of the trader entering orders and having those orders filled at desirable prices.
The color-coding of the LTQ appears as a colored cell (e.g., 700, 708 and 710) in the LTQ column 702 and corresponds to the price row of that traded quantity. By default in one preferred embodiment, the colored cell will appear in blue when the LTQ ticks upward in price from the previous LTQ, will appear in red for instances when the LTQ ticks downward in price from the previous LTQ, and will appear in green for instances when the price level remains the same from one trade to the next. While these preferred colors are the default settings in one embodiment, the trading application preferably allows a trader to change color designations in accordance with the trader'"'"'s own preferences. In addition, while certain embodiments have been described with reference to color being applied to a cell, the invention is not limited to embodiments in which color is applied to a cell. For example, color may be applied to any graphical indicator, such as the horizontal line used as a LTQ marker in the preceding section, to illustrate a property of the item of interest.
Overlay of Different Price Feeds
In one embodiment, the trading application provides an “Overlay of Different Price Feeds.” The trading application may be X_TRADER®, referenced above, or any other commercially available product adapted as described herein. In many instances a particular commodity is only traded at a particular exchange. In other instances, however, a commodity may be traded at multiple exchanges. This is one instance when a user may be interested in simultaneous information from different price feeds, i.e. feeds from different exchanges in regard to a particular commodity. As another example, Eurex offers both an inside market stream and a market depth stream. Generally, the inside market stream is faster than the market depth stream. In accordance with a preferred embodiment, the different streams, whether from a single exchange or multiple exchanges, are used by the trading application to populate and display information about the commodity in a trading window.
A number of exchanges offer multiple price streams, but these exchanges often supply only those feeds that are requested by the trader. Each trader may request, for example, a stream of all of the quantities currently available in the market for a specific commodity, known as market depth, or the trader may request to receive only the inside market prices, where the inside market is the highest buy price and the lowest sell price at which there is quantity available for that commodity. This is also known as the best buy and best sell prices. Many traders are focused on these best prices, and therefore do not desire a stream of a market'"'"'s depth. Thus, several exchanges cater to user preferences by offering different price feeds, while also benefiting by saving on bandwidth for traders who wish to receive only an inside market stream.
When using the ‘overlay’ feature, the system preferably displays all of the information that it receives, and the display continuously updates the cells. By accepting, or having the ability to accept, multiple feeds or streams, the trader is provided with greater security in knowing that if one feed should become slower or unavailable, the other feed will continue to update market information.
Although illustrated as a disruption 814 occurring between the gateway 812 and the client terminal 804, the feed may be disrupted at any point from the exchange 802 to the client terminal 804. Because of the parallel feed, the display of current information is not interrupted, regardless of the cause of the disruption. Moreover, the parallel feed allows the user to take advantage of speed differences between two feeds and displays the best available information to the user. It should be noted that, although the streams are illustrated as originating from one exchange 802, the streams may alternatively originate at different exchanges. In addition, while two feeds are typically sufficient, the preferred embodiments are not so limited, and information from more than two feeds may be simultaneously displayed.
In one embodiment of the invention, the ‘Overlay Different Price Feeds’ can be enabled or disabled by adding or removing a check in a ‘Use Inside Market Prices’ box in the a Properties dialog box. Other techniques for enabling this feature may alternatively be used. Where multiple feeds are being monitored and displayed, the trading application may provide the user with options for deciding which feed'"'"'s data will be displayed in instances where the data from the feeds is not the same. For example, in instances where the feeds originate at different exchanges, the user may choose to display the best prices from the different feeds. As a further example, where the feeds originate at the same exchange, information from the most recent packet may be displayed, regardless of which feed carried the last displayed packet. Other alternatives will be apparent upon reviewing the foregoing.
Display of Aggregated Working Quantities
Another preferred embodiment provides a trader with a display of the aggregated quantities being worked in the market for a trader'"'"'s buy and sell orders. A trader'"'"'s total working quantities represent the total unfilled quantities of all the orders that the trader currently has entered but have yet to be filled in the market. For example, the trading application may display the total working buy quantities and the total working sell quantities for the specific commodity being traded and for the specific trader who entered those quantities in the market.
The display of a trader'"'"'s aggregated working quantities in cells 1004 benefits a trader in that it provides the total exposure from the trader'"'"'s working quantities. Although the display is dynamic, in that order quantities are continuously updated as new orders are entered and others are filled, the display of quantities at different market prices is limited by the size of the display screen. Thus, it is possible for a trader to have working quantities of which the trader is not aware at prices that are not visible in the display window. The aggregated working quantities display helps to alleviate this drawback by showing a trader the cumulative total of the trader'"'"'s buy and sell working quantity. If the display shows anything but a zero, the trader will know that the trader currently has an unfilled working quantity in the market.
In the preferred embodiment, the display of aggregated working quantities, as shown in cells 1004 in
Another preferred embodiment provides the user with the ability to paste a dynamic indicator for display in relation to, for example, a static price scale. In one embodiment, a first dynamic indicator column is displayed adjacent to the bid quantity column, and a second dynamic indicator column is displayed adjacent to the ask quantity column. The dynamic indicator may be applied to a dynamic indicator column from a spreadsheet, such as Microsoft EXCEL, or other third party charting or analytical software, to furnish the user with a visual indicator of, for example, a specific price. The display screen may, for example, be an MD_TRADER™-style display generated by the X_TRADER® trading application, although other trading applications and trading interfaces may alternatively be used.
The dynamic indicator is preferably associated with market information. In a preferred embodiment, the dynamic indicator is associated with a price, although it may alternatively be associated with any other item of interest to the user. Color coding may be applied to the dynamic indicator.
When used, for example, with an MD_TRADER™-style display, a dynamic indicator may be associated with a specific price, as set by a trader using the third party software, and displayed in relation to a static price scale. If the dynamic indicator is associated with a price that is outside of the viewable area of the trader'"'"'s display, it preferably becomes viewable on the screen when the associated price comes into view. Although a preferred embodiment of the invention involves copying and pasting to and from a spreadsheet, other methods of transferring information may also be used.
Use of this particular embodiment is initiated when a trader enters or pastes a value into a spreadsheet 1100. For example, the value may be a specific price that the trader wants to monitor, or it may be a dynamic price that includes an attached calculation. The indicator is not limited to use with prices, but alternatively may be used for any item of interest on the trader'"'"'s display. In the price example, once the value is entered in the spreadsheet, the trader copies the desired price cell(s) from the spreadsheet and pastes the cell(s) in one of the dynamic indicator columns 1102 of the screen, as shown in
The marker may be anything that is suitable to serve as an indicator for the trader, including, for example, graphical symbols and colors. Thus, although
Preferably, a link is established from the pasted cell to the spreadsheet 1100 from which the cell(s) was copied. The link gives the trader the ability to change the copied value in the spreadsheet 1100, resulting in a related change in the pasted value in the dynamic indicator column 1102. In one embodiment, this may be a two-way link between the trading interface and the third party software, or may link market data from the trading window, such as LTP or any other item of interest, into the spreadsheet or other third party software. Any suitable type of data exchange protocol may be used to embed information from the third party software or to link the dynamic indicator to the third party software. For example, Microsoft OLE 2.0 may be used to perform these functions when using Microsoft Windows applications as the third party software. In a preferred embodiment, Microsoft OLE is utilized to provide a link between a dynamic indicator and a cell from a Microsoft EXCEL spreadsheet. Data exchange protocols in general, and linking and embedding techniques in particular, are well known to those skilled in the art.
The meaning of the pasted dynamic indicator, and whether there is a dynamic calculation attached, is preferably at the decision of the individual trader. For example, the trader may want the dynamic indicator to represent a ‘Fair Value Analysis’ (average price). This would calculate the average price at which the specific commodity traded throughout the day. The trader would copy and paste the cell, with the attached calculation, into the dynamic display column. As the average price changed with each newly filled quantity, the dynamic indicator would move up or down the indicator column in conjunction with the appropriate price. When that indicator would move to a price viewable on the screen, the trader then could see a visual indicator of the ‘Fair Value’ price, and the trader could choose to enter quantity if the trader so desired. Although illustrated with reference to the ‘Fair Value’ price, it is to be appreciated that any calculation may alternatively be used.
As noted above, the dynamic indicator may also appear in only a portion of the cell. The dynamic indicator may be highlighted, for example, in a different color than the remainder of the cell or the surrounding cells, or may be displayed in time-alternating colors to create a flashing effect. The dynamic indicator may be presented as a highlighted or colored line within a cell. The portion of the cell in which the dynamic indicator appears may be selected to convey additional information, such as a price that falls between prices in a static price scale, for example when price consolidation is utilized.
The dynamic indicator benefits a trader in that the trader is provided, for example, with the ability to monitor price movements of the trader'"'"'s own designation, whether those movements are of the last traded price, the ‘Fair Value’, or any other designated item of interest. By seeing the visible dynamic indicator associated with the trader'"'"'s designated item of interest, the trader has a better opportunity to enter quantities at prices that are desirable. In addition, the trader can paste a dynamic indicator while continuing to enter other quantities throughout the trading session, and the indicator will continue to update as long as the session is open. Thus, the trader may find that a desirable price, as shown by the indicator, is available in the market long after the trader originally copied and pasted the indictor. Furthermore, the dynamic indicator may decrease the time it takes for the user to analyze market data by providing the user with a visual cue.
The display of the highlighted dynamic indicator, the color of which, in instances where color is used, may be selected by the trader through, for example, a properties window, appears in the buy and/or sell dynamic indicator columns on the display. The indicators can be moved to various locations on the display. Of course, more than one dynamic indicator may appear in any dynamic indicator column. In one embodiment that utilizes the MD_TRADERm-style display, the dynamic indicator columns appear by default to the immediate left and right of the buy and sell quantity columns, respectively, as shown in
Out of Range Indicator
In accordance with a preferred embodiment, the graphical user interface for a trading application provides an indication that an item of interest is outside the viewable range of the display. The trading application may be X_TRADER®, referenced above, or any other commercially available product adapted as described in this section. Preferably, the out of range indicator also provides a user the ability to cause the display to shift up or down so that the user may view the item(s) of interest that lie outside of the viewable area. Examples of items of interest include, but are not limited to, the user'"'"'s working orders and market depth information, such as quantities and prices.
In one embodiment, the out of range indicator is an arrow or similar pointing icon, which will indicate to the user that an item of interest lies outside the viewable area and further indicates the direction in which the viewable area needs to move to display the item of interest. Preferably, the viewable area will scroll or jump to the item of interest when the user clicks on or otherwise actuates the pointing icon. Each time the out of range indicator is used, the display may shift to the closest item of interest outside of the viewable area. As an alternative to jumping to the next item of interest, the display may shift row-by-row, column-by-column, price-by-price, or may jump to a new level based upon a selected item of interest.
For example, as shown in
Continuing with this example, the same general principles apply when employing the ‘down arrow’ 1202 function. Specifically, in
By using the out of range indicator (e.g., 1200, 1202), which in this example indicates out of range market quantities, the trader can essentially view the entire market depth provided by an exchange. The display of the entire market depth may be limited, for example, by the size of the user'"'"'s display screen, or the user'"'"'s preferences about the amount of market information that is displayed at any one time. Due to these constraints, it is possible that there may be items of interest, such as market depth or working orders, that the user cannot see. The out of range indicator not only alerts the user to the existence of an out of range item of interest, but also ensures that all such information is viewable via, for example, the ‘up arrow’ 1200 and ‘down arrow’ 1202 function.
When items of interest fall outside the viewable range, the trading application preferably generates cells, for example each with an arrow pointing up or down, as appropriate, at the top and/or bottom of the column related to the item of interest. The arrow cells are preferably enabled only when an item of interest, like a quantity entered in the market, falls outside of the viewable area. If no items of interest fall outside the viewable area, in one embodiment of the invention, the cells are inactive and may be presented on the display in a solid color without an arrow. As an alternative to the use of buttons with pointing icons, a preferred embodiment allows a user to scroll the market data in a desired direction using a mouse wheel or other user input device.
As noted above, the out of range indicator may alternatively, or in addition, be used to alert the user to out of range working orders. In this example, each time the indicator is used, the display preferably shifts to the user'"'"'s next working order in the market that is outside of the viewable area. For example, as shown in
The same general principles may apply in regard to working buy orders, by employing a ‘down bid arrow’ 1206 function. For example, in
By using the out of range indicator (e.g., 1200, 1202, 1204 and 1206), the trader preferably may view information related to all of his or her working orders. This indicator reduces the potential for missed and forgotten opportunities or exposure by ensuring that all of the user'"'"'s working orders are viewable via the ‘up offer arrow’, the ‘up bid arrow’, the ‘down offer arrow’ and ‘down bid arrow’ functions. The pointing icons, or arrow buttons, discussed above may be located at the top and/or bottom of any column of interest, or to the left and/or right side of any row of interest, that includes data that falls outside of the viewable range, including for example working orders that fall outside the viewable range. Other uses for the out of range indicator will be apparent to those skilled in the art upon reviewing this detailed description. Although described above with reference to pointing icons and/or arrow buttons, any type of indicator may alternatively be used as long as it is capable of indicating to the user that there is information outside of the viewable range.
In accordance with a preferred embodiment, the trading application provides a display to the user illustrating the volume of buy and sell quantities, in proportion to each other, in a logical, dynamic manner. The trading application may be X_TRADER®, referenced above, or any other commercially available product adapted as described in this section. In one embodiment, which is advantageously used in a trading application that displays price along a vertical axis, like X_TRADER®, the ‘thermometer’ indicator generates one or more narrow, vertical display columns 1300, 1302 (“thermometers”), located in proximity to the quantity columns as shown in
These thermometer columns are preferably adjustable in that the user may move the thermometer columns to various locations on the display as logic or user preference dictate. One preferred location, when the thermometer indicator is to represent the volume of buy quantities in relation to the volume of sell quantities, is immediately to the left of the buy quantity column and to the right of the sell quantity column. In this embodiment, the display of the thermometers may begin at the mid-point of the prices displayed on the screen. For example, in
As noted above, the two thermometers show the quantity available in the market, with one thermometer each for the buy quantities and the sell quantities. In the illustrated embodiment, both thermometers extend from the mid-point price that is currently on the user'"'"'s display. The buy thermometer preferably reaches to the lowest price displayed, while the sell thermometer preferably extends to the highest price displayed. The thermometer for the buy quantity descends from the top of the thermometer as the percentage of buy quantity increases. The thermometer for the sell quantity rises from the bottom of the thermometer as the percentage of sell quantity increases. If either the buy or sell quantity is larger than the other, the thermometers will reflect this difference based on the amount of the disparity.
The thermometer indicator benefits a trader by showing the disparity of buy verses sell quantity in the market, thereby providing the trader with a tool to help decide whether to enter orders to buy or sell. For example, if there is a higher percentage of buy quantity in the market, then a greater number of the traders may want to buy, whereas if there is a greater percentage of sell quantity in the market, then a greater number of traders may want to sell. A trader can therefore deduce that with a greater percentage of buy quantity in the market, the trader may have a higher chance of having the trader'"'"'s sell order filled at a desirable price if the trader were to enter such a sell order. If the percentage of sell quantity was higher in the market, the trader may have a greater chance of having the trader'"'"'s buy order filled at a desirable price.
In accordance with another preferred embodiment, the trading application provides a way to automatically enter offsetting orders. The trading application preferably is X_TRADER®, using an MD_TRADER™-style display. Scalping is a term that is well known in the trading of commodities and it refers to a trading technique in which the trader trades for relatively smaller gains over a short period of time. In this embodiment, the trading application facilitates scalping by providing the user with an automatic order entry mechanism, embodiments of which are further described below. Preferably, automatic scalping is activated based on a user input, such as simultaneously pressing the control key and the scroll wheel on the user'"'"'s mouse to manipulate a pair of indicator bars in the form of horizontal lines. Other actuating mechanisms may alternatively be used, including for example using a dialog box generated by the trading application or by actuating a scalping icon displayed on the user interface.
For this embodiment in which a mouse input is used to position parallel horizontal lines, the indicator bars define a price range where buy and sell quantities may be automatically entered when a similar such quantity is manually entered and filled. More specifically, this feature automatically enters sell quantities when a trader'"'"'s manually entered buy quantity is filled. Likewise, this feature will automatically enter buy quantities when a trader'"'"'s manually entered sell quantity is filled. The indicator bars move in relation to a static scale or axis representing prices. In a preferred embodiment, the indicator bars span the buy column, the sell column, and the price column, and they begin together at the mid-point of the prices displayed on the trader'"'"'s display screen. In
The order that is automatically entered is preferably for the same quantity as the trader'"'"'s last buy or sell fill. Additionally, the order that is automatically entered is entered at a particular price or prices, depending on the preferences and/or practices of the trader, within the range of the indicator bars. In one embodiment, the order that is automatically entered is, in the case of a sell order, at the lowest price above the inside market within the range of the indicator bars, and in the case of a buy order, at the lowest price within the range of the indicator bars. Alternatively, the order that is automatically entered, may be at a price or prices calculated pursuant to any algorithm. For example, the quantity ordered may be evenly spread among the prices above (in the case of a sell order) or below (in the case of a buy order) the inside market and within the range of the indicator bars. The preferred embodiments are not limited to any particular technique for determining the price or prices at which the automatic order is entered. In a preferred embodiment, the user may set the rules for exactly how a duplicate order or orders are sent (whether at the best price or some other price).
For example and as shown in
A trader'"'"'s position may be defined as the difference between the total quantity of the commodities bought and quantity of the commodities sold, and the trader is considered to have a long position when the quantity bought is greater than the quantity sold and a short position when the quantity sold is greater than the quantity bought. The more quantity the trader owns, the longer the trader'"'"'s position will be. Conversely, the more quantity the trader sells, the shorter the trader'"'"'s position will be. It may be desirable to have neither a long nor short position, referred to as a closed position, at the end of each day'"'"'s trading session. If the buy quantity that the trader has entered in the market is filled, thus giving the trader a long position, the system, if actuated by the user, may automatically enter a duplicate sell quantity, which when filled will close the trader'"'"'s position. Likewise, if the sell quantity that the trader has entered in the market is filled, the system may automatically enter a duplicate buy quantity, which when filled will close the trader'"'"'s position. The automatic scalper automatically and, preferably, immediately enters a duplicate buy or sell quantity, which when filled will close the trader'"'"'s position, preventing the trader from carrying a long or short position for an extended period of time.
In an alternative embodiment, the automatic scalper embodiment may be used to set one range, using, for example, indicator bars, for buying quantity and another range for selling quantity, at the same time. For this embodiment, the automatic scalper automatically quotes both sides (buy and sell) within the ranges determined by the user. In another alternative embodiment, multiple automatic scalping ranges, using different pairs of indicator bars, may be active in a single trading window. For this embodiment, the different ranges may be distinguished by using, for example, different colors for the different pairs of indicator bars.
Price Level Reasonability Check
In accordance with another preferred embodiment, the trading application provides a user with the ability, referred to as the Price Level Reasonability Check (“PLRC”), to prevent the entry of any order in the market at a price that is a specified number of ticks away from the Last Traded Price (LTP), or at a price that is a specified percentage different from the LTP. A tick can be anything, but is generally used in this detailed description as the minimum change in a price value that is set by the exchange for each commodity (e.g., $0.01, $0.05, $0.10, or any other value). The trading application may be X_TRADER®, referenced above, or any other commercially available product adapted as described in this section. The PLRC may be enabled and configured by either a user, such as a trader or an administrator. For systems in which an administrator enables the PLRC, the PLRC may be applied uniformly to all client terminals on a network, or it may be adjusted on a case-by-case basis, thereby accounting, for example, for the experience level of the trader.
The PLRC may preferably be enabled on a commodity-by-commodity basis. For example, in
In an alternative embodiment, the trading application may provide a volatility adjusted PLRC function. In this embodiment, the PLRC dynamically increases or decreases the number of ticks (or percentage) away from the LTP within which a user may enter orders. The increase/decrease, which may be set by the user or a system administrator, is preferably based on volatility. For example, a trader may set the trading application to dynamically increase the PLRC by a specified amount if the volatility is greater than a specified amount.
The inclusion of the PLRC function limits the possibility of the trader having the working quantity filled at less desirable prices. The inside market is those prices, for which there is quantity available in the market, that are considered the best buy and sell prices available. The best buy price is the highest buy price that has quantity in the market, while the best sell price is lowest sell price that has quantity in the market. Generally, the LTP will be at or near to that inside market. The LTP is used as the center price from which the PLRC begins and allows quantity to be entered at a limited number of price levels either above or below that LTP level.
In one preferred embodiment, where the trading application is X_TRADER®, the PLRC is preferably enabled through the ‘Options’ display, an example of which is shown in
Group Positioning and Automatic Grid Positioning
In accordance with another preferred embodiment, the trading application may re-position any item of interest within the trading interface. In one embodiment, the trading application tracks the market'"'"'s activity by automatically centering, for example, the inside market or the Last Traded Price (“LTP”) on the display with respect to a static axis or scale of prices. Preferably, any other item of interest in the trading interface may serve as the basis for positioning information within the display.
The trading application preferably is X_TRADER®, using an MD_TRADER™-style display. In a preferred embodiment, the LTP is displayed in the LTP column and is indicated by a highlighted cell directly next to the price cell corresponding to the most recently filled quantity. The LTP cell preferably also contains an indication of the quantity of the most recent fill. The inside market is indicated by a line spanning both the buy and sell columns and is positioned between the highest buy price at which there is quantity currently in the market (the best buy price) and the lowest sell price at which there is quantity currently in the market (the best sell price).
Preferably, a user may designate any item of interest as the basis for the positioning function, such that, upon positioning, the item of interest will be moved to a predetermined location on the user'"'"'s display. Automatic positioning may be triggered either by a timer, or by monitoring movement of the item(s) of interest about the display. Two items of interest to many traders are the inside market and the LTP. Thus, in one embodiment, the user may select one of these items for automatic re-positioning. When either the highlighted LTP cell or the inside market line is outside of the viewable area of a trader'"'"'s display, or is more than a predetermined distance away from a location on the display, the LTP cell or the inside market line will automatically be placed at a predetermined location on the display. In a preferred embodiment, automatic positioning parameters may be selected by the user from the ‘Options’ display. The user may choose, for example, whether to re-position the display after a designated number of seconds, when the LTP is a designated number of cells from the top or bottom of the trader'"'"'s display screen, or when the inside market is a designated number of cells from the top or bottom of the trader'"'"'s display screen.
In addition, a trading application may present multiple trading windows to the user simultaneously. In accordance with a preferred embodiment, the automatic positioning tool may be applied globally to any number of open trading windows. Preferably, a dialog box or menu item may be used to enable the user to group or link, for purposes of re-positioning, any number of trading windows. In accordance with one embodiment, at least one of the linked trading windows becomes the master, and the other linked trading window(s) will be re-positioned whenever the master trading window is re-positioned. For example, one of the trading windows may be designated by the user as the master trading window by selecting “re-position all,” or any similar designation, from a menu or dialog box. This may have the effect of re-positioning all open trading windows when the master trading window is re-positioned. The user may choose to have one or more trading windows ignore the re-positioning command by selecting “ignore,” or any similar designation, from the menu or dialog box. This group re-positioning feature may be used in conjunction with the automatic re-positioning tool or with manual re-positioning (such as through the click of a center mouse button or the use of any input device). Other techniques for grouping trading windows will be apparent to those skilled in the art upon review of this detailed description.
In a preferred embodiment, the positioning tool serves to center the item of interest (such as the LTP or the inside market) on the display. As shown in
As quantities are entered and filled in the market, the LTP and inside market change to indicate the price of the last filled quantity and the most recent best buy and sell prices. In a volatile market, a large number of quantities can be filled in a relatively short period of time, resulting in a continuous fluctuation of the LTP and inside market. The LTP and the inside market are two indicators that a trader may use to understand at what prices other traders find a commodity to be most desirable. A trader may use automatic positioning to always have a visual reference of where the market is trading, increasing the likelihood of entering quantities and having those quantities filled at desirable prices. In addition, automatic positioning may be used in conjunction with manual positioning. In other words, it is preferable that by enabling automatic positioning, the user is not thereby precluded from manually re-positioning the display.
Highlight Mid-Point of Last Re-Position
In accordance with a preferred embodiment, a trader may emphasize the mid-point of prices and/or quantities entered in the market at the time of the last re-position event. Preferably, a re-position event centers the display around the inside market, where the inside market is the highest buy price and the lowest sell price for the commodity being traded for which there is quantity in the market, or alternatively, a re-position event may center the display at any price and/or quantity, if so desired. Furthermore, a re-position event does not need to center on any particular price, but may ensure that a particular price, or other item of interest, is positioned at a predetermined location, or within a range of locations, on the display.
In the preferred embodiment, the mid-point is designated by a bold line that spans the columns of the display screen, or in another embodiment, the mid-point may be designated by a color, arrow, text, and so forth. Preferably, the exact location of the mid-point line is dependent on the number of the price rows that are displayed between the best buy and best offer price rows (at which quantity is available) at the time of the last re-center event. Alternatively, the location of the mid-point line may be dependent on the quantities of a portion, or all, of the buy and sell orders, or may be dependent on the combination of price and quantities of the portion or all of the buy and sell orders. In yet another alternative, a bold line representing a particular price level may be displayed in association with any item of interest to the user, to thereby adjust the content of the trading interface to the user'"'"'s preferred range.
Of course, markers other than a line may alternatively be used. For example, like many of the foregoing embodiments, the marker may be highlighting, a color or a graphical indicator disposed upon the display at the desired location. According to this embodiment, a trader may benefit from the visual representation of the discrepancy between the best bid and offer prices currently in the market.
According to the preferred embodiment, when the number of price rows between the best bid and best offer price rows (where quantity is entered) is an even number (or zero), the mid-point line is displayed between the middle values, with these being the highest buy (bid) price and the lowest sell (offer) price that are displayed in the window. For example, in
In addition, according to the preferred embodiment, when the number of price rows between the best bid and the best offer prices (where quantity is entered) is an odd number, the mid-point line is displayed in the top of the cell that signifies the middle price value of the prices displayed between the best bid and best offer prices. For example, in
While the preferred embodiment utilizes an MD_TRADER™-style display with a vertical static price axis or scale, this trading tool may be utilized with any display in which market information, such as bids, asks and/or working orders, are displayed relative to a static scale or axis of prices. It is not necessary that the scale or axis be vertical or even two-dimensional. Rather, the market information may be displayed horizontally, at an angle, n-dimensionally, or in any other fashion.
The display of the mid-point line may be enabled through an ‘Options’ display, an example of which is shown in
Drag and Drop of Working Quantities
In accordance with another preferred embodiment, the trading application permits the trader to change the trader'"'"'s working orders by dragging and dropping working quantities from one price level to another price level vis-h-vis a static price scale or axis. The trading application preferably is X_TRADER®, using an MD_TRADER™-style display. When using an MD_TRADER™-style display to drag and drop a working order, in one embodiment, the trader clicks on an active cell within the working quantity column. This activates the drag and drop feature and allows the trader to manipulate the cell by moving the cell on the trader'"'"'s trading screen. Such a manipulation is commonly referred to as “dragging” the chosen data. Prior to releasing the mouse button, a trader drags the working order by moving the cursor to a new cell in the working quantity column. The trader then releases or “drops” the data in a new cell. In a preferred embodiment, the ability to drag and drop working orders as described herein is an option that may be turned on or off by the user for each individual trading window.
At the point the data is dropped, the previous quantity may be deleted from the original price and a new quantity entered at the price associated with the cell in which the new working quantity was dropped. The quantity displayed in either the buy or sell column that corresponds to the traders working quantity also moves to the newly selected price level when the drag and drop function is performed. Any approach may be used to change the user'"'"'s working orders. For example, rather than resulting in the deletion of an existing working order and the entry of a new working order, a single cancel and replace, as known to those skilled in the art, may be used to change the user'"'"'s working orders.
The ability to drag and drop working quantities, as displayed in the working quantities column, can be used by a trader who is not satisfied with the current price at which such quantity is entered in the market. The trader is given the capability of changing the price level at which the trader'"'"'s quantity is entered without having to both delete and re-enter the quantity, resulting in a valuable time savings by simply dragging and dropping that quantity.
Preferably, the drag and drop feature makes it possible for a trader to move the entire working quantity of a single cell from one cell to another cell in the working quantity column when that quantity actually consists of multiple orders. For example, if a trader'"'"'s working quantity is 30 at the price of 102.54 (1700), as shown in
The ability to drag and drop an entire quantity, regardless of the number of orders associated with that quantity, benefits a trader in that the trader does not need to constantly change the trader'"'"'s quantity setting. The trader also does not have to repeat the drag and drop action for each order. For example, a trader may be trading at a quantity of 10, and therefore every time the trader enters a quantity in the market, the trader is entering a 10-lot order. If the trader wants to enter a quantity of 30, the trader can either change the quantity setting or click in the appropriate cell three times, thus entering three separate 10-lot orders in the market. Should the trader choose to drag and drop the working quantity from one price level to another, all of the working quantity associated with the cell and price level at which the drag and drop is performed will be moved to the new price level. As a result, the trader does not have to perform three separate drag and drop actions and valuable time can be saved, which could help to ensure that the quantities are entered and filled at their intended prices.
The display of a trader'"'"'s working quantity appears in the working quantity column in a cell that corresponds to the price at which the quantity was entered. The display of the trader'"'"'s working quantity remains visible on the trading screen until the quantity entered is completely filled, at which time the display of that specific working quantity will be removed from the working quantity column, or the order is canceled or deleted. In one embodiment of the invention, the cell in which the working quantity is displayed includes a ‘W’ followed by a value that indicates the quantity that is currently working in the market. The cell also contains a ‘B’ or an ‘S’ followed by a value that indicates how much of the original working Buy or Sell quantity has been bought or sold. Although described with reference to a working quantity column, the embodiments are not limited to trading interfaces that display working quantities in a column, but rather the teachings of this section may be applied to any type of display of working quantities.
In one preferred embodiment of drag and drop, nothing changes with respect to a user'"'"'s pending working orders until the user releases the mouse button, keypad or other input device over the desired location on the trading interface. This feature allows the user to maintain his/her place in the trading queue for the earlier entered order. In an alternative embodiment, the new order is entered as soon as the mouse icon comes to rest in an appropriate area of the trading interface.
Another alternative embodiment allows drag and drop of working quantities when price consolidation is enabled. Any appropriate algorithm may be used to allocate the new order(s) over the consolidated price range. For this embodiment, the user preferably may select, such as through the use of a dialog box, the desired allocation algorithm. For example, all the “dropped” orders may be entered at one price, such as the price shown on the consolidated scale, or the working quantity may be equally distributed over the consolidation range associated with the location where the orders are dropped, or each working order may be moved by the increment on the consolidated price scale between their original location and the location at which the orders are dropped.
Yet another alternative provides a user with the ability to enable automatic modification of the quantity of the order entered at the location where the working order is dropped. For example, as noted above, working orders may remain working until the input device (e.g. mouse button) is released. In this case, a working order may be filled or partially filled during the drag and drop process. Preferably, the user may select, such as through a dialog box, what will happen to the “dropped” order in this situation. For example, if the working order is filled during drag and drop, the user may prefer that no new order be entered at the new price. Or, if the working quantity is partially filled, the user may prefer that only the remaining quantity be entered at the new price. In this manner, the “dropped” order may be automatically modified in accordance with user preference.
Average Price of Working Quantities
In accordance with a preferred embodiment, a display shows the average price for a trader'"'"'s working buy and sell quantities that are entered in the market. A trader'"'"'s working quantities represent the unfilled quantities of all the orders that the trader currently has entered, but not filled in the market. Preferably, the display shows the average price of the total working buy quantities and the average price of the total working sell quantities for the specific commodity being traded and for the specific trader who entered those quantities. For this embodiment, the average working prices may be displayed using, for example, highlighting, color, or a graphical indicator associated with a static price scale or axis, if such a scale or axis is displayed. The display may or may not include the actual numerical value of the average price.
In an alternate embodiment, a distribution of the prices for the trader'"'"'s working buy and/or sell quantities that are entered in the market is displayed. In this alternative embodiment, the average price might also be displayed in or around the displayed distribution of the prices. It should also be understood that the average price and/or the distribution of prices may be displayed in a text format, displayed in a color format (e.g., a color indicator), displayed in a graphical format (e.g., using text and color), and so on.
Total Price of Working Buy Quantities/Total Buy Quantity=Average Price of Working Buy Quantities:
Preferably, the same calculation is utilized to determine the average price of the working sell quantities. Using the illustration from the example above,
Total Price of Working Sell Quantities/Total Sell Quantity=Average Price of Working Sell Quantities:
Preferably, the calculation of the average price of the working quantities is on a contract-to-contract basis, meaning that separate average prices are calculated and displayed for each separate commodity in which the trader has working quantity entered.
Preferably, the display of the average price and/or distribution of prices of a trader'"'"'s working buy and sell quantities can be used to compare the trader'"'"'s average price against all other current buy and sell quantities entered in the market for the commodity. This function can benefit a trader by helping to ensure that the trader is trading at the most desirable prices.
In the preferred embodiment, the display of the average price for a trader'"'"'s working quantities appears as two separate cells within the display—one displaying the average buy price 1804 of the trader'"'"'s working sell quantities and the other the average sell price 1806 of the trader'"'"'s working buy quantities. In the preferred embodiment, the average buy price is displayed at the bottom of the working quantities column and the average sell price 1806 is displayed at the top of that column, as shown in
Coding of Blank Spots
In accordance with a preferred embodiment, cells in the buy and sell columns of the display that correspond to prices at which there is no quantity entered in the market are visually distinguished from those cells at which such quantity is entered. The buy and sell price levels for which there is not corresponding quantities are designated as “blank spots” 2000, and in the preferred embodiment appear in a different shade than populated cells as a means of providing a better visual representation of where the market is trading, as shown in
According to an embodiment, a trader may benefit in that the visual difference between buy and sell cells that contain quantity, verses those that do not contain quantity, makes it easier for the trader to quickly recognize whether quantities are available in the market at a particular price. Thus, a trader interested in buying quantity has an enhanced display of where such quantity is available, and a trader interested in selling quantity can more easily gauge where other traders are selling the commodity.
In the preferred embodiment, color coding may appear in the buy and sell columns of the display at price levels at which there is no quantity currently in the market. The buy and sell cells that correspond to these price levels appear in a visually different manner than those cells at which such quantity is entered. Color coding may be enabled through a ‘Color Code Blank Spots’ field of an ‘Options” display, shown in
In another preferred embodiment, color coding and/or shading may be applied not only to cells without quantity, but also to cells in which the quantity falls below a threshold. Preferably, the threshold may be set by a user or an administrator. In addition, the user may set different thresholds either within one trading window or across multiple trading windows. When different threshold levels are utilized, it is preferable that each threshold value be assigned a distinct color so that the user may quickly recognize the meaning of the color coding.
Display of Net Price of Open Position
In accordance with a preferred embodiment, a trader is provided with a display of the net price of the working buy and sell orders. A visual indicator such as text, color, a combination of text and color, or a graphical indicator is used to highlight to the trader the net price of working buy and sell orders. The graphical indicator may take any form, including a line or even a colored pixel.
In one embodiment, it may be useful to display the net price open position, where a position is the difference between the number of orders bought (a long position) and the number of orders sold (a short position). A trader'"'"'s position is open when the number of orders bought or sold is not equal. If these orders are equal, the trader'"'"'s position is considered closed. When orders are traded on an exchange, it is possible for a trader to receive multiple fills, for multiple quantities, and at different price levels for the quantities that make up the trader'"'"'s orders. This feature incorporates the price levels of these multiple fills to determine the net price at which the fills occurred. The trader can then use this net price to gauge whether trading out of a position would result in a realized gain, loss, or scratch (neither a gain nor a loss).
To determine the net price of a trader'"'"'s open position, this embodiment divides the total price of the quantity that has been filled by the total number of orders either bought or sold (a.k.a. the trader'"'"'s current position). For example, a trader who purchased 10 contracts of a commodity (4 @ 99, 2 @ 100, and 4 @101) would have a long 10 position, meaning that the trader would need to sell 10 contracts in order to close the trader'"'"'s position. The net price of the trader'"'"'s filled quantity would be 100, and would calculated as follows:
Total price of Filled Quantity/Current Position=Net Price of the Open Position
Based on the calculation above, the value of 100 is displayed as the trader'"'"'s net price of the trader'"'"'s open position. The net price can be displayed in one of several manners, which include, without limitation, a box 2100 around the net price'"'"'s price level cell as shown in
A trader may benefit in that the visual representation of the net price of the trader'"'"'s open position reduces or eliminates the need to mentally calculate such a price when, depending on the market'"'"'s volatility, the price may change repeatedly. A trader who has had consecutive buy quantities filled will have a long position and will see a display signifying the net price of that long position. Any sell quantities that are filled will not be calculated into that net price. Likewise, a trader who has consecutive sell quantities filled will have a short position and will see a display signifying the net price of that short position. Any buy quantities that are filled will not be calculated into that net price. The trader benefits from such a feature in that the trader will always have a display of the net price of the trader'"'"'s primary position (either of all of the trader'"'"'s buy quantities or all of the trader'"'"'s sell quantities), which will therefore provide the trader with a better indication of the price level at which the trader needs to buy or sell additional quantities to make a profit and close the position. Alternatively, the average price of the trader'"'"'s open position may be calculated based upon both buy and sell orders filled.
The marker indicating the net price may be anything that is suitable to serve as an indicator for the trader, including, for example, graphical symbols, numbers and/or colors. Thus, although
Consolidation Control Icon
In accordance with a preferred embodiment, a trader may consolidate price information, or other useful information, by a control icon that is displayed to the user on the same interface that is used for trading. Consolidation of price information is described in U.S. patent application Ser. No. 09/971,087, incorporated above. In the embodiment described herein, the control icon is preferably presented to the user on the same screen that is used for trading, thereby allowing the user to maintain his or her view of the market information as the control icon is adjusted.
In a preferred embodiment, the control icon is a slide control 2200, shown in
Although described with reference to a vertical price scale that is subject to consolidation, the preferred embodiments are not limited to consolidating a price scale, nor are they limited to consolidating a vertical display element. Rather, any numerical sequence is subject to consolidation, regardless of its orientation or number of dimensions. The preferred embodiments allow user selectable consolidation through an icon presented on the user interface.
The consolidation of price information by adjusting a control icon benefits a trader in that it quickly allows for a greater number of prices and/or associated values such as bid/ask quantities and working orders to be displayed at any given time. Thus, a trader has a greater chance of not only seeing a majority, if not all, of the quantity entered at those prices, but the trader also has a greater spectrum of prices in which to enter the trader'"'"'s own quantities.
It should be understood that the above description of the preferred embodiments, alternative embodiments, and specific examples are given by way of illustration and not limitation. For example, the features described herein could be incorporated into a variety of displays. Many changes and modifications within the scope of the present embodiments may be made without departing from the spirit thereof, and the present invention includes all such changes and modifications.