EP1825326A1 - Systeme de vente - Google Patents

Systeme de vente

Info

Publication number
EP1825326A1
EP1825326A1 EP05801605A EP05801605A EP1825326A1 EP 1825326 A1 EP1825326 A1 EP 1825326A1 EP 05801605 A EP05801605 A EP 05801605A EP 05801605 A EP05801605 A EP 05801605A EP 1825326 A1 EP1825326 A1 EP 1825326A1
Authority
EP
European Patent Office
Prior art keywords
display
price
market
data
movable
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP05801605A
Other languages
German (de)
English (en)
Inventor
John Tierney
David Shaw
Paul Dennis Uplands Cozens
Robert Bruce Mathys & Squire MACKENZIE
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ffastfill PLC
Original Assignee
Ffastfill PLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from GB0424850A external-priority patent/GB0424850D0/en
Priority claimed from GB0515201A external-priority patent/GB0515201D0/en
Priority claimed from GB0517177A external-priority patent/GB2420197A/en
Application filed by Ffastfill PLC filed Critical Ffastfill PLC
Publication of EP1825326A1 publication Critical patent/EP1825326A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

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

Definitions

  • the invention relates to the processing of data, and in particular to the processing of movable elements, particularly movable data elements, which can move about a display screen, and which can be selected and unselected.
  • Such movable selectable elements are found in many systems and applications, but are of particular importance in financial and commodity market related systems and applications, and in particular in trading systems.
  • the invention relates in particular to lists of data elements which can move, by moving across, for instance, a display screen and /or changing order.
  • the invention relates in particular to trading systems.
  • the invention finds particular, but not exclusive, application in electronic trading systems.
  • Particularly preferred examples of the invention relate to methods and apparatus for trading commodities, including grain, oil, coffee, or financial instruments and the like.
  • Financial instruments can include currencies, bonds, stocks and shares, or derivatives based on such commodities or financial quantities, including futures, options, swaps, swaptions and more exotic derivatives.
  • Commodities may be traded by buying and selling contracts, embodied in standard legal agreements, between buyers and sellers concerning an underlying commodity.
  • Such contracts have traditionally been traded on exchanges which have existed as physical places where buyers and sellers and brokers gathered to trade.
  • a popular system employed for trading at physical exchanges is referred to as the "open-outcry" method auction trading, where, for example, buyers and sellers gather around the outside of a pit or within a pit, and verbally and/or using pre-determined hand signals, agree contracts.
  • orders could be sent and filled electronically in shorter time intervals and in potentially greater numbers than previously possible in the open-outcry exchange, which depended on a slower manual system for recorded trades and prices. Also, the number of traders and brokers participating in an "electronic pit" could be far greater than previously possible in the open outcry model. Therefore, the existence of faster-placed orders and more traders connected to a single exchange created, in some markets, a more volatile market, where the best buying and selling prices changed more frequently.
  • any system which provides movable elements, particularly movable data elements, which can move about a display screen presents the problem that a movable element may move as a user is about to perform an operation on the element, or in relation to the element. This can cause the operation to fail, or to be carried out on an element other than the one intended, or can cause delay in performing the operation.
  • Such systems can include:- auction systems, for instance internet auction systems; computer games, including gambling games and arcade style games; transport management systems, including air traffic control systems, traffic flow systems, and rail management systems; and industrial process control systems, for instance used on production lines, or in oil and chemical processing plants.
  • - auction systems for instance internet auction systems
  • computer games including gambling games and arcade style games
  • transport management systems including air traffic control systems, traffic flow systems, and rail management systems
  • industrial process control systems for instance used on production lines, or in oil and chemical processing plants.
  • a method of processing market data relating to trading on an electronic trading exchange comprising the steps of: dynamically generating, in response to market data received from an interface connected to the exchange, a market information display comprising a plurality of entries relating to price levels on a price axis and moving the entries on the display in response to changes in the market data; allowing a user to select an entry by positioning a pointer over a selection area associated with the entry using an input device, in response to selection of an entry, generating a display element comprising information relating to the entry, the display element being superimposed on the display at the location of the pointer; and in response to a further user input received while the pointer is positioned over the display element, performing a trading operation in relation to the selected entry.
  • a trade operation is typically a trade order such as an order to buy, sell, bid or offer.
  • An entry preferably comprises a data value or collection of data values (though it may alternatively or additionally comprise a label or other fixed information), and may be in the form of a cell or group of cells in a table or grid, or in the form of a row or column or part of a row or column.
  • an entry may be (a cell containing) a bid or ask price relating to a price level or may be a row or column containing a price level and a bid or ask price.
  • the term price level may refer to a price or to a price range.
  • price axis generally refers to a price axis in an abstract or conceptual sense, and is not necessarily intended to refer to a visual representation of an axis, though the price axis may be visually represented. Often, a series of price levels are displayed which represent the price axis.
  • the term pointer preferably refers to any selection element which is moveable on a screen or display, usually in response to user input, in order to select, highlight or otherwise manipulate an entry or other element on the display.
  • the pointer may be a mouse cursor.
  • the display element may, for example, be a box, window, graphical overlay or any other graphical element suitable for conveying the relevant information.
  • the display element is preferably superimposed on the display at the location of the pointer; here, "at the location of the pointer” preferably means that the pointer and the display element are adjacent or overlap, typically in such a way that the pointer points to the display element such that further user action (e.g. a mouse click) without movement of the pointer will be in respect of the display element.
  • the pointer preferably remains superimposed on the display and, where overlapping, the display element.
  • the term "the pointer is positioned over the display element” shall be construed accordingly.
  • the aspects need not relate to market data received from an electronic trading exchange but can be applied to other forms of data in other application domains. Accordingly, the data need not be received from an exchange or an interface connected to an exchange.
  • the information displayed need not relate to price levels on a price axis, and need not be in the form of a market information display.
  • Other data may be displayed and manipulated, and instead of trading operations, the aspects may be applied to other forms of operations relevant to the application domain. Instead of the inside market, some other point or region of interest may be used.
  • the method preferably comprises removing the display element relating to the entry from the display if the user moves the pointer away from the display element and/or away from the selection area of the selected entry, and preferably further comprises changing or replacing the display element to display information relating to another entry if the user moves the pointer to a selection area associated with the other entry.
  • the method comprises keeping the display element static and continuing to display information relating to the selected entry in the display element when the selected entry moves away from the pointer.
  • a user can more reliably perform trade operations in relation to a given entry without having to constantly re-position the pointer as the entry moves, and certain user errors (for example performing a trade operation in relation to the wrong entry due to unexpected movement of entries) can be prevented.
  • the display element is preferably visually distinct from the market information display.
  • the display element is preferably displayed at a location determined in dependence on either or both of the location of the pointer and the location of the selected entry.
  • the display element may, for example, be aligned with at least one boundary of the selected entry, or may be aligned with the pointer.
  • the display element is preferably displayed at a location determined such that the pointer points to the display element. At least a portion of the display element may be displayed with a translucent or transparent effect, such that information displayed in the market information display behind the portion remains at least partially visible. This can prevent other information being obscured by the display element or changes of information being missed by the user. For the same reason, the information is preferably displayed at a location within the display element such that the information does not overlap information displayed in the market information display behind the display element.
  • the input device may be a pointing device having movement input means (for instance a mouse) for positioning the pointer and further input means for providing the further user input.
  • the further input means may be a button, the further user input being a button click.
  • the method preferably comprises updating the information displayed in the display element in response to a change in the market data. This can ensure that the user sees up-to-date information when looking at the display element.
  • the selected entry is preferably associated with a given price level, the display element displaying the price level.
  • the selected entry may comprise a bid or offer (ask) volume or current working order volume associated with a given price level, the display element displaying the bid or offer (ask) volume or current working order volume.
  • the method comprises updating the bid or offer volume or current working order volume displayed in the display element in response to a change in the market data or user action (as an example of the latter, user action to increase or decrease an order volume may change the current working order volume).
  • Offer volumes can also be referred to as ask volumes.
  • Current working order volumes relate to any orders placed by the user at a given price level and are usually displayed in a 'Work' column in the display as described in more detail later.
  • a method of processing market data relating to trading on an electronic trading exchange comprising the steps of: dynamically generating, in response to market data received from an interface connected to the exchange, market display data comprising movable data elements for display on a display means (for instance a computer screen); allowing a user to select and de-select, using a user input device, a movable data element; and whilst a movable data element is selected, displaying a frozen element including data relating to the selected movable data element such that at least one un-selected movable data element remains movable.
  • a display means for instance a computer screen
  • the invention provides a method of processing market data relating to trading on an electronic trading exchange having an inside market defined by at least one price level, the method comprising the steps of: dynamically generating, in response to market data received from an interface connected to the exchange, a market information display comprising trading information relating to a plurality of price levels which define a price axis, including a first price level displayed at a first display location and a second price level displayed at a second display location, the first price level corresponding to the inside market; and in response to the inside market changing from the first price level to the second price level, adjusting the display of the trading information to move the price axis so that the second price level corresponding to the changed inside market is displayed at a third display location intermediate the first and second display locations.
  • This adjustment preferably occurs in a single step, i.e. in the form of a sudden jump.
  • the third display location may be a specified distance from the first or second display location, the specified distance being determined either as a fixed distance (e.g. as a part, whole, or (possibly fractional) multiple of a row height or column width where the information is displayed in rows or columns, or as a number of pixels) or as a proportion of the distance between the first and second display locations (e.g. calculated in rows or columns, or pixels).
  • a fixed distance e.g. as a part, whole, or (possibly fractional) multiple of a row height or column width where the information is displayed in rows or columns, or as a number of pixels
  • proportion of the distance between the first and second display locations e.g. calculated in rows or columns, or pixels.
  • the method preferably further comprises scrolling the market information display to move the second price level corresponding to the changed inside market from the third display location to a selected display location, preferably to the first display location, or to a predetermined display location or a central display location.
  • the method preferably further comprises including in the display a visual indication of the inside market.
  • the method preferably further comprises moving the indication in response to the change in the inside market.
  • the scrolling step also scrolls the visual indication.
  • Including a visual indication may comprise highlighting information relating to the price level corresponding to the inside market.
  • the trading information relating to the plurality of price levels is displayed in a plurality of adjacent display sections, the first and second price levels being displayed in adjacent display sections at the first and second display locations respectively, the third display location lying between and overlapping the first and second display locations.
  • the trading information relating to the plurality of price levels is displayed in a plurality of adjacent display sections, and adjusting the display of the trading information to move the price axis comprises moving the adjacent display sections by a distance of a fraction of the size of a display section.
  • the method preferably further comprises scrolling the plurality of adjacent display sections to move the second price level corresponding to the changed inside market from the third display location to the first display location.
  • the display sections may be rows or columns, preferably of a table or grid.
  • the inside market may be defined by at least one of a highest bid price and a lowest ask price.
  • a method of processing market data relating to trading on an electronic trading exchange comprising the steps of: dynamically generating, in response to market data received from an interface connected to the exchange, a market information display comprising a plurality of entries relating to price levels on a price axis and moving the entries on the display in response to changes in the market data; allowing a user to select a given entry by positioning a pointer over a selection area associated with the given entry using an input device; and where the given entry has moved after selection so that the pointer is no longer positioned over the selection area and a further user input is received to initiate a trading operation, initiating a trading operation in relation to the given entry if the further user input is received within a predetermined time period after movement of the given entry, and preferably initiating a trading operation in relation to another entry or not initiating a trading operation if the further user input is not received within the predetermined time period.
  • the method preferably comprises initiating a trading operation in relation to the other entry.
  • a method of processing market data relating to trading on an electronic trading exchange comprising the steps of: dynamically generating, in response to market data received from an interface connected to the exchange, a market information display comprising a representation of a price axis having a plurality of price levels and trading information associated with the price levels, the generating step comprising: identifying a point or region of interest on the price axis; and generating the market information display with the identified point or region positioned in a predetermined region of the display; and, in response to changes in the market data resulting in a change of the point or region of interest: updating the display to reflect the changes in the market data, and scrolling the display so as to move the changed point or region of interest to the predetermined region.
  • the point or region of interest can always be displayed in the predetermined region so that the user can more easily access information relating to the point or region, without having to search for it on the display.
  • the updating step is preferably substantially instantaneous or sudden, at least when compared to the scrolling step.
  • the scrolling step preferably scrolls the display at a speed selected in dependence on one or more predetermined criteria.
  • the one or more predetermined criteria may include one or more of: the distance by which the display is to be scrolled, trading activity at the exchange, the rate of trading activity at the exchange, the rate or frequency of change of the point or region of interest, the distance of movement of the point or region of interest on the price axis, a cumulative or average indicator relating to trading activity on the exchange or to the movement or distance of movement of the point or region of interest on the price axis, the market data, and changes in the market data.
  • the scrolling step preferably varies the scrolling speed during scrolling, preferably by reducing the scrolling speed as the point or region of interest approaches the predetermined region.
  • the method preferably further comprises including in the market information display a visual indication of the point or region of interest and moving the visual indication to a new position in the display when the point or region of interest changes; and the scrolling step preferably scrolls the representation of the price axis, associated trading information and the visual indication.
  • the visual indication may comprise a highlighting of a cell, column or row in the display at the point or region of interest.
  • the point or region of interest may relate to a best bid or ask price or inside market.
  • the predetermined region is preferably a substantially central region of the screen, display or window.
  • the method may comprise commencing scrolling of the display before updating the display or commencing scrolling of the display after updating the display to achieve a desired visual effect.
  • a method of controlling a user interface for a trading application the user interface receiving market data from an electronic trading exchange and comprising a market depth display displaying trading information based on the market data and including a plurality of entries relating to price levels forming a price axis, the entries being moveable on the display in response to changes in the market data; the user interface further comprising a pointer positionable within the display using a user input device, the method comprising: allowing a user to select an entry by positioning the pointer within a selection area associated with the entry; in response to selection of a given entry, superimposing on the market depth display a display segment displaying information relating to the given entry, the superimposed display segment being static whilst the plurality of entries including the given entry remain moveable behind the static superimposed display segment; in response to movement input for movement of the pointer by the user after selection of the given entry and display of the static superimposed display segment, determining a location on the display to which to move the pointer in dependence on
  • the static superimposed display segment is preferably displayed at the location of the given entry.
  • the method preferably comprises, in response to movement input by the user to move the pointer within the static superimposed display segment, moving, by the user interface, the pointer to a corresponding location in the given entry, and preferably comprises, in response to movement input by the user to move the pointer in a given direction to a location outside the static superimposed display segment, moving, by the user interface, the pointer to an entry adjacent the given entry in the given direction.
  • the method may further comprise removing the static superimposed display segment from the display after movement of the pointer by the user interface.
  • a method of controlling a user interface for a trading application the user interface receiving market data from an electronic trading exchange and comprising a market depth display displaying trading information based on the market data and including a plurality of entries relating to price levels forming a price axis, the entries being moveable on the display in response to changes in the market data; the user interface further comprising a pointer positionable within the display using a user input device, the method comprising: allowing a user to select an entry by positioning the pointer within a selection area associated with the entry; in response to selection of a given entry, superimposing on the market depth display a display segment displaying information relating to the given entry, the superimposed display segment at least initially remaining static whilst the plurality of entries including the given entry remain moveable behind the static superimposed display segment in response to changes in the market data; and where the given entry has moved on the display and a predetermined time period has elapsed since movement without user input being received in relation to the given entry or the
  • the method preferably comprises continuing the movement until the superimposed display segment is displayed at the location of the moved given entry or until interrupted by user action.
  • the superimposed display segment (which corresponds to the "frozen row" of certain embodiments described later) can be returned to its correct position after a while, the user thereby being provided with an up-to-date display, whilst maintaining the benefit of temporarily
  • the pointer may be moved (by the user interface) to follow the superimposed display segment as it returns to the correct position (the location of the moved given entry) in the same way as is described in relation to the tracking mechanism below.
  • the invention provides a method of processing market data relating to trading on an electronic trading exchange, the method comprising the steps of: dynamically generating, in response to market data received from an interface connected to the exchange, a market information display comprising a plurality of entries relating to price levels on a price axis and moving the entries on the display in response to changes in the market data; allowing a user to select an entry by positioning a pointer over a selection area associated with the entry using an input device; in response to selection of an entry, displaying information relating to the entry in a display area separate from the market information display and/or the plurality of entries, and visually linking the separate display area to the selected entry.
  • the method preferably further comprises, in response to a further user input received while the entry is selected and the information is displayed in the separate display area, performing a trading operation in relation to the selected entry.
  • the method further comprises, if the selected entry moves on the display, updating the visual link so that the separate display area remains visually linked to the selected entry.
  • visually linking the separate display area to the selected entry may comprise drawing a line or lines connecting the separate display area and the selected entry.
  • a method of processing market data relating to trading on an electronic trading exchange comprising the steps of: dynamically generating, in response to market data received from an interface connected to the exchange, a market information display comprising a plurality of entries relating to price levels on a price axis, each entry being displayed in an associated display segment; allowing a user to select an entry by positioning a pointer over a selection area associated with the entry using an input device; and moving entries including a selected entry on the display in response to changes in the market data by moving the associated display segments; and wherein moving a selected entry on the display comprises increasing the size of the display segment associated with the selected entry.
  • a method of processing market data relating to trading on an electronic trading exchange having an inside market defined by at least one price level comprising the steps of: dynamically generating, in response to market data received from an interface connected to the exchange, a market information display comprising trading information relating to a plurality of price levels which define a price axis, including a first price level displayed at a first display location and a second price level displayed at a second display location, the first price level corresponding to the inside market; and in response to the inside market changing in one direction from the first price level to the second price level, moving the price axis on the display in the opposite direction so as to move the second price level corresponding to the changed inside market beyond the first display location to a third display location.
  • Moving the price axis on the display preferably comprises scrolling the display.
  • Moving the price axis on the display may comprise adjusting the display (preferably in a single step) so that the second price level corresponding to the changed inside market is displayed at a fourth display location intermediate the first and second display locations, and scrolling the display to move the second price level from the fourth display location beyond the first display location to the third display location.
  • the scrolling step preferably scrolls the display by a distance corresponding to the distance between the first and second display locations.
  • the plurality of price levels are preferably displayed in adjacent display segments (e.g.
  • each movement of the inside market causes a small but (especially cumulatively) perceptible shift in the display location of the inside market, which can help convey market trends.
  • the invention further provides apparatus for performing any of the methods set out herein, including those of the various method aspects set out above or below.
  • Some apparatus aspects are set out in the appended claims.
  • Claims directed to apparatus aspects include:- Claims 58 to 71; Claims 44 to 87 and Claim 89 of the section headed Additional claims - Set 'A'; and Claims 63 to 125 and Claim 127 of the section headed Additional claims - Set 'B'.
  • the various apparatus aspects include various means. Such means may, each or severally, comprise a suitably programmed processor, and may be implemented in hardware or software. The means may each be located in proximity to a user terminal, for instance forming part of a computer and associated software used for controlling the user terminal, or may be associated with a server remote from the user terminal.
  • apparatus for processing market data relating to trading on an electronic trading exchange comprising:- means (for instance a suitably programmed processor) for dynamically generating, in response to market data received from an interface connected to the exchange, a market information display comprising a plurality of entries relating to price levels on a price axis and moving the entries on the display in response to changes in the market data; means (for instance a suitably programmed processor) for allowing a user to select an entry by positioning a pointer over a selection area associated with the entry using an input device; means (for instance a suitably programmed processor) for, in response to selection of an entry, generating a display element comprising information relating to the entry, the display element being superimposed on the display at the location of the pointer; and means (for instance a suitably programmed processor) for, in response to a further user input received while the pointer is positioned over the display element, performing a trading operation in relation to the selected entry.
  • means for instance a suitably programmed processor
  • the apparatus may comprise means for removing the display element relating to the entry from the display if the user moves the pointer away from the display element and/or away from the selection area of the selected entry.
  • the apparatus may comprise means for changing or replacing the display element to display information relating to another entry if the user moves the pointer to a selection area associated with the other entry.
  • the apparatus may be arranged to keep the display element static and continue to display information relating to the selected entry in the display element when the selected entry moves away from the pointer.
  • the display element may be visually distinct from the market information display.
  • the display element is preferably displayed at a location determined in dependence on either or both of the location of the pointer and the location of the selected entry.
  • the apparatus comprises means for aligning the display element with at least one boundary of the selected entry.
  • the display element may be displayed at a location determined such that the pointer points to the display element.
  • the apparatus is arranged so that at least a portion of the display element is displayed with a translucent or transparent effect, such that information displayed in the market information display behind the portion remains at least partially visible.
  • the information is displayed at a location within the display element such that the information does not overlap information displayed in the market information display behind the display element.
  • the input device may be a pointing device having movement input means for positioning the pointer and further input means for providing the further user input.
  • the further input means may be a button, the further user input being a button click.
  • the apparatus comprises means for updating the information displayed in the display element in response to a change in the market data.
  • the selected entry may be associated with a given price level, the display element displaying the price level.
  • the apparatus comprises means for updating the bid or offer volume or current working order volume displayed in the display element in response to a change in the market data or user action.
  • apparatus for processing market data relating to trading on an electronic trading exchange comprising:- means (for instance a suitably programmed processor) for dynamically generating, in response to market data received from an interface connected to the exchange, market display data comprising movable data elements for display on a display means (for instance a screen); means (for instance suitably programmed processor) for allowing a user to select and de-select, using a user input device, a movable data element; and means (for instance a suitably programmed processor) for, whilst a movable data element is selected, displaying a frozen element including data relating to the selected movable data element such that at least one un-selected movable data element remains movable.
  • apparatus for processing market data relating to trading on an electronic trading exchange having an inside market defined by at least one price level
  • the apparatus comprising:- means (for instance a suitably programmed processor) for dynamically generating, in response to market data received from an interface connected to the exchange, a market information display comprising trading information relating to a plurality of price levels which define a price axis, including a first price level displayed at a first display location and a second price level displayed at a second display location, the first price level corresponding to the inside market; and means (for instance a suitably programmed processor) for, in response to the inside market changing from the first price level to the second price level, adjusting the display of the trading information to move the price axis so that the second price level corresponding to the changed inside market is displayed at a third display location intermediate the first and second display locations.
  • the apparatus may comprise means for scrolling the market information display to move the second price level corresponding to the changed inside market from the third display location to a selected display location, preferably to the first display location.
  • the apparatus comprises means for including in the display a visual indication of the inside market, and preferably further comprises means for moving the indication in response to the change in the inside market.
  • the apparatus may comprise means for scrolling the visual indication.
  • the apparatus comprises means for highlighting information relating to the price level corresponding to the inside market.
  • the apparatus may be adapted to display the trading information relating to the plurality of price levels in a plurality of adjacent display sections, the first and second price levels being displayed in adjacent display sections at the first and second display locations respectively, the third display location lying between and overlapping the first and second display locations.
  • the apparatus may be adapted to display the trading information relating to the plurality of price levels in a plurality of adjacent display sections, and may be adapted to adjust the display of the trading information to move the price axis by moving the adjacent display sections by a distance of a fraction of the size of a display section.
  • the apparatus comprises means for scrolling the plurality of adjacent display sections to move the second price level corresponding to the changed inside market from the third display location to the first display location.
  • apparatus for processing market data relating to trading on an electronic trading exchange comprising:- means (for instance a suitably programmed processor) for dynamically generating, in response to market data received from an interface connected to the exchange, a market information display comprising a plurality of entries relating to price levels on a price axis and moving the entries on the display in response to changes in the market data; means (for instance a suitably programmed processor) for allowing a user to select a given entry by positioning a pointer over a selection area associated with the given entry using an input device; and means (for instance a suitably programmed processor) for, where the given entry has moved after selection so that the pointer is no longer positioned over the selection area and a further user input is received to initiate a trading operation, initiating a trading operation in relation to the given entry if the further user input is received within a predetermined time period after movement of the given entry, and initiating a trading operation in relation to another entry or not initiating a trading
  • the apparatus may be arranged so that if the further user input is received more than the predetermined time period after movement of the given entry and at a time when the pointer is positioned over a selection area associated with another entry, the apparatus may initiate a trading operation in relation to the other entry.
  • apparatus for processing market data relating to trading on an electronic trading exchange, the apparatus comprising:- means (for instance a suitably programmed processor) for dynamically generating, in response to market data received from an interface connected to the exchange, a market information display comprising a representation of a price axis having a plurality of price levels and trading information associated with the price levels, the generating means comprising:- means for identifying a point or region of interest on the price axis; and means (for instance a suitably programmed processor) for generating the market information display with the identified point or region positioned in a predetermined region of the display; the apparatus further comprising means (for instance a suitably programmed processor) for, in response to changes in the market data resulting in a change of the point or region of interest, updating the display to reflect the changes in the market data, and scrolling the display so as to move the changed point or region of interest to the predetermined region.
  • means for instance a suitably programmed processor
  • the scrolling means is adapted to scroll the display at a speed selected in dependence on one or more predetermined criteria.
  • the one or more predetermined criteria may include one or more of: the distance by which the display is to be scrolled, trading activity at the exchange, the rate of trading activity at the exchange, the rate or frequency of change of the point or region of interest, the distance of movement of the point or region of interest on the price axis, a cumulative or average indicator relating to trading activity on the exchange or to the movement or distance of movement of the point or region of interest on the price axis, the market data, and changes in the market data.
  • the scrolling means may be adapted to vary the scrolling speed during scrolling, preferably by reducing the scrolling speed as the point or region of interest approaches the predetermined region.
  • the apparatus may be adapted to include in the market information display a visual indication of the point or region of interest and moving the visual indication to a new position in the display when the point or region of interest changes; and the scrolling means is preferably adapted to scroll the representation of the price axis, associated trading information and the visual indication.
  • the visual indication may comprise a highlighting of a cell, column or row in the display at the point or region of interest.
  • the point or region of interest may relate to a best bid or ask price or inside market, and the predetermined region may be a substantially central region of the display.
  • the scrolling means is adapted to commence scrolling of the display before updating the display.
  • the scrolling means may be adapted to commence scrolling of the display after updating the display.
  • apparatus for controlling a user interface for a trading application, the user interface receiving market data from an electronic trading exchange and comprising a market depth display displaying trading information based on the market data and including a plurality of entries relating to price levels forming a price axis, the entries being moveable on the display in response to changes in the market data; the user interface further comprising a pointer positionable within the display using a user input device, the apparatus comprising:- means (for instance a suitably programmed processor) for allowing a user to select an entry by positioning the pointer within a selection area associated with the entry; means (for instance a suitably programmed processor) for, in response to selection of a given entry, superimposing on the market depth display a display segment displaying information relating to the given entry, the superimposed display segment being static whilst the plurality of entries including the given entry remain moveable behind the static superimposed display segment, means (for instance a suitably programmed processor) for, in response to movement input for movement of the point
  • the static superimposed display segment may be displayed at the location of the given entry.
  • the apparatus may comprise means, responsive to movement input by the user to move the pointer within the static superimposed display segment, for moving, by the user interface, the pointer to a corresponding location in the given entry.
  • the apparatus may comprise means, responsive to movement input by the user to move the pointer in a given direction to a location outside the static superimposed display segment, for moving, by the user interface, the pointer to an entry adjacent the given entry in the given direction.
  • the apparatus comprises means for removing the static superimposed display segment from the display after movement of the pointer by the user interface.
  • apparatus for controlling a user interface for a trading application receiving market data from an electronic trading exchange and comprising a market depth display displaying trading information based on the market data and including a plurality of entries relating to price levels forming a price axis, the entries being moveable on the display in response to changes in the market data; the user interface further comprising a pointer positionable within the display using a user input device, the apparatus comprising:- means (for instance a mouse and associated control software) for allowing a user to select an entry by positioning the pointer within a selection area associated with the entry; means (for instance a suitably programmed processor) for, in response to selection of a given entry, superimposing on the market depth display a display segment displaying information relating to the given entry, the superimposed display segment at least initially remaining static whilst the plurality of entries including the given entry remain moveable behind the static superimposed display segment in response to changes in the market data; and means (for instance a suitably programmed processor
  • the apparatus may be adapted to continue the movement until the superimposed display segment is displayed at the location of the moved given entry or until interrupted by user action.
  • apparatus for processing market data relating to trading on an electronic trading exchange, the apparatus comprising:- means (for instance a suitably programmed processor) for dynamically generating, in response to market data received from an interface connected to the exchange, a market information display comprising a plurality of entries relating to price levels on a price axis and moving the entries on the display in response to changes in the market data; means (for instance a suitably programmed processor) for allowing a user to select an entry by positioning a pointer over a selection area associated with the entry using an input device, means (for instance a suitably programmed processor) for, in response to selection of an entry, displaying information relating to the entry in a display area separate from the market information display and/or the plurality of entries, and visually linking the separate display area to the selected entry.
  • means for instance a suitably programmed processor for dynamically generating, in response to market data received from an interface connected to the exchange, a market information display comprising a plurality of entries relating to price levels on a price axi
  • the apparatus further comprises means, responsive to a further user input received while the entry is selected and the information is displayed in the separate display area, for performing a trading operation in relation to the selected entry.
  • the apparatus may further comprise means for updating the visual link, if the selected entry moves on the display, so that the separate display area remains visually linked to the selected entry.
  • the means for visually linking the separate display area to the selected entry is adapted to draw a line or lines connecting the separate display area and the selected entry.
  • apparatus for processing market data relating to trading on an electronic trading exchange, the apparatus comprising:- means (for instance a suitably programmed processor) for dynamically generating, in response to market data received from an interface connected to the exchange, a market information display comprising a plurality of entries relating to price levels on a price axis, each entry being displayed in an associated display segment; means (for instance a suitably programmed processor) for allowing a user to select an entry by positioning a pointer over a selection area associated with the entry using an input device; and means (for instance a suitably programmed processor) for moving entries including a selected entry on the display in response to changes in the market data by moving the associated display segments, wherein moving of a selected entry by the moving means comprises increasing the size of the display segment associated with the selected entry.
  • a suitably programmed processor for dynamically generating, in response to market data received from an interface connected to the exchange, a market information display comprising a plurality of entries relating to price levels on a price axis, each entry being
  • the means for moving the price axis on the display is adapted to scroll the display.
  • the means for moving the price axis on the display is adapted to adjust the display (preferably in a single step) so that the second price level corresponding to the changed inside market is displayed at a fourth display location intermediate the first and second display locations, and is further adapted to scroll the display to move the second price level from the fourth display location beyond the first display location to the third display location.
  • the scrolling means is adapted to scroll the display by a distance corresponding to the distance between the first and second display locations.
  • the apparatus may be adapted to display the plurality of price levels in adjacent display segments, the distance between the first display location and the third display location being less than the size of one display segment.
  • apparatus for processing market data relating to trading on an electronic trading exchange having an inside market defined by at least one price level
  • the apparatus comprising:- means (for instance a suitably programmed processor) for dynamically generating, in response to market data received from an interface connected to the exchange, a market information display comprising trading information relating to a plurality of price levels which define a price axis, including a first price level displayed at a first display location and a second price level displayed at a second display location, the first price level corresponding to the inside market; and means (for instance a suitably programmed processor) for, in response to the inside market changing in one direction from the first price level to the second price level, moving the price axis on the display in the opposite direction so as to move the second price level corresponding to the changed inside market beyond the first display location to a third display location.
  • a method of processing data comprising generating display data comprising at least one movable element, the or each movable element being selectable and deselectable by positioning a selection element relative to that movable element, the selection element being movable using a user input device; monitoring whether the or each movable element is in a selected state or in a not selected state; and when a movable element is in a selected state, maintaining the relative position of the selection element and the selected movable element in such a way as to maintain the selected movable element in the selected state.
  • a user may reliably select a desired movable element, and in particular may reliably select a desired movable element even in the situation where a plurality of movable elements (which may form a list) are moving (either moving around a display or changing order on the display). This is particularly advantageous in the situation where the user wishes subsequently to carry out an operation on a desired movable element.
  • the movement of the movable elements may be continuous or discontinuous.
  • a method of processing data comprising generating display data comprising at least one movable element, the or each movable element being selectable and deselectable by positioning a selection element relative to that movable element, the selection element being movable using a user input device; monitoring whether the or each movable element is in a selected state or in a not selected state; and when a movable element is in a selected state, maintaining the selected movable element in the selected state despite movement of the selected movable element.
  • a method of processing data comprising generating display data comprising at least one movable element, the or each movable element being selectable and deselectable by positioning a selection element relative to that movable element; monitoring whether the or each movable element is in a selected state or in a not selected state; and when a movable element is in a selected state, moving the selection element in dependence upon movement of the selected movable element, preferably so that the selection element remains in the same position relative to the selected movable element and/or is moved to a desired position relative to the selected movable element.
  • a movable element is an element which can move either relative to a display, or relative to a portion of a display or relative to other elements or features.
  • the term “move” includes "change".
  • select or “selecting” and the like preferably connote either merely hovering over an element using a moveable indicator or selection element or (less usually) clicking on the element.
  • aspects of the method that are described herein include aspects which are directed to the freezing of a selectable movable data element and aspects which are directed to the movement of the selection element in dependence upon movement of a selected movable element.
  • freezing of a moveable element is meant maintaining the element in the same position relative to the display, for instance a window or screen, on which it is displayed.
  • Data displayed within or associated with the moveable element may also be frozen, meaning that the displayed data remains the same, for instance having the same value, despite changes in the underlying (or source) data from which the displayed data is derived.
  • the position of the moveable element may be maintained, but data displayed within or associated with the moveable element is updated in response to changes in the underlying (or source) data from which the displayed data is derived.
  • freeze may mean freezing both position and content of the moveable element, or freezing position only.
  • a further operation may be carried out using the or a user input device without the selection element being moved relative to the movable element.
  • the user input device may be a mouse and the selection element may be a mouse cursor, for instance a mouse pointer, and the further operation may be earned out by clicking on the mouse, and preferably the further operation is a trading operation.
  • the or each movable element remains movable whilst in the selected state.
  • the or each movable element is not frozen whilst in the selected state.
  • the step of maintaining the relative position of the selection element and the selected movable element in such a way as to maintain the selected movable element in the selected state comprises moving the selection element in dependence upon movement of the selected movable element and separate from and/or in addition to any movement of the selection element using the user input device.
  • That feature of the invention is particularly important, and so in a further aspect there is provided a method of processing data, comprising generating display data comprising at least one movable element, the at least one movable element being selectable and deselectable using a selection element movable using a user input device, monitoring whether the at least one movable element is in a selected state or in a not selected state, and, when a movable element is in the selected state, moving the selection element in dependence upon movement of the selected movable element and separate from and/or in addition to any movement of the selection element using the user input device.
  • the selection element is moved in dependence upon movement of the selected movable element until the selected movable element is deselected, and preferably until the selected element is deselected by operation of the or a user input device.
  • the step of maintaining the relative position of the selection element and the selected movable element in such a way as to maintain the selected movable element in the selected state may comprise maintaining the selected movable element in a stationary position.
  • the step of maintaining the selected movable element in a stationary position comprises freezing the selected movable element.
  • That feature is also particularly important, and so in a further aspect there is provided a method of processing data, comprising generating display data comprising movable elements; allowing a user to select and de-select, using a user input device, a movable element; and freezing the selected movable data element whilst it is selected such that at least one movable data element which is not selected remains movable.
  • the or each movable element is adapted to remain in a selected state for a fixed period of time after being selected, and to become not selected at the expiry of the fixed period of time.
  • the user input device may be a mouse and the selection element may be a mouse cursor, for instance a mouse pointer.
  • the or each movable element is adapted to move in a step-wise manner.
  • the or each movable element may be a movable data element.
  • the or each movable element may be movable along an axis, preferably a price axis, and preferably the display data comprises a plurality of movable elements.
  • the method further comprises generating at least one display feature, the or each display feature being associated with a respective one of the movable elements and being such as to visually distinguish the respective one of the movable elements from other of the movable elements.
  • That feature is also important, and so in a further aspect there is provided a method of processing data, comprising generating display data comprising a plurality of data elements arranged along an axis, and movable along the axis; and generating at least one display feature, the or each display feature being associated with a respective one of the movable data elements and being such as to visually distinguish the respective one of the movable data elements from other of the movable data elements.
  • each display feature is associated with a selected movable element.
  • the or each display feature may be associated with the selection element.
  • the display feature may appear when a movable element is selected, remain whilst the movable element is selected, and disappear (or become associated with another movable element) when the movable element becomes deselected.
  • the display feature may vary (for instance vary in colour) with time from the movable element being selected and/or with trading activity or other market activity.
  • a method of processing data comprising:- generating display data comprising at least one movable element, the or each movable element being selectable and deselectable using a selection element; the selection element being movable using a user input device; and monitoring whether the or each movable element is in a selected state or in a not selected state; and preferably generating at least one display feature, the or each display feature being associated with the selection element and being dependent on at least one of:- trading activity, market activity; movement of a movable element; whether or not one or more movable elements are in selected state; position of the selection element.
  • the display feature may comprise at least one of colour of the selection element, size of the selection element, shape of the selection element, and shading of the selection element.
  • the step of generating at least one display feature comprises generating a plurality of display features each associated with a respective one of the plurality of movable elements and each being such as to visually distinguish the respective one of the plurality of movable elements from other of the movable elements.
  • the plurality of display features may be spaced apart along the or an axis, and preferably are evenly spaced apart along the or an axis. Preferably the spacing of the plurality of display features is set by a user. Alternatively or additionally the spacing of the plurality of display features may be set in dependence upon the size of the area of the display in which the display features are displayed. The spacing may vary automatically if that area changes.
  • the plurality of display features may change an aspect of their appearance, for instance colour, in dependence upon trading activity or other market activity, for instance by the user or by another market participant, and in particular in dependence upon the last trading activity or other market activity.
  • the or each display feature may be adapted to move along the or an axis in dependence upon the movement of the respective associated movable element along the or an axis.
  • the display data comprises a plurality of movable elements and the method further comprises choosing one of the plurality of movable elements and generating at least one display feature, the or each display feature being associated with the chosen movable data element and being generated in dependence upon a trading action relating to the chosen movable data element.
  • a method of processing market data relating to trading on an electronic exchange comprising generating display data comprising a plurality of movable data elements; choosing one of the plurality of movable data elements; and generating at least one display feature, the or each display feature being associated with the chosen movable data element and being generated in dependence upon a trading action relating to the chosen movable data element.
  • the step of choosing one of the plurality of movable data elements comprises choosing a or the movable data element associated with a particular trading action. That particular trading action may be the last trading action to take place.
  • each display feature is generated in dependence upon the type of the trading action, and preferably the colour of the display feature varies with the type of the trading action.
  • the display feature may vary in dependence upon the time since it was generated and/or in dependence upon time since the or a trading action took place.
  • the or each display feature comprises the colour of a respective region of the screen.
  • the or each display feature may comprise the colour of a portion of the respective associated movable element, and may comprise the colour of all of the respective associated movable element.
  • the or each respective region of the screen comprises a row arranged perpendicular to the or an axis.
  • the appearance of the or each display feature is set by a user, and preferably the colour of the or each display feature is set by a user.
  • the step of generating at least one display feature may comprise generating a plurality of display features, and the method may further comprise monitoring whether two or more display features overlap and applying at least one rule to determine the appearance of the two or more display features if they overlap.
  • the at least one rule is set by a user.
  • the or each movable element comprises a respective at least one cell in an array of cells. More particularly, the or each movable element may comprise a respective row (or column) of cells, or portion of a row (or column) of cells, in an array of cells.
  • references to rows and columns herein may be used interchangeably, depending on the orientation of the rows and columns. So references to a row may be substituted by references to a column, with corresponding references to a column being substituted by references to a row.
  • the data may be market data, preferably relating to trading on an electronic exchange.
  • the display data may be market display data.
  • the step of generating the market display data comprises dynamically generating the market display data, in response to market data received from an interface connected to an electronic trading exchange.
  • the display data may be for display on a display means (for instance a screen), and preferably the or each movable element is displayed on a display means.
  • the method may further comprise monitoring the position of the selection element and/or monitoring the position of the or each movable element.
  • the method may comprise monitoring the position of the selection element and/or monitoring the position of the or each movable element.
  • the method may further comprise discriminating between the situation where the selection element is located over a movable element and the situation where the selection element is not located over a movable element, and preferably the method further comprises ensuring that a movable element is in the selected state when the selection element is positioned over that movable element and not selected when the selection element is not positioned over that movable element.
  • the or each movable element comprises a respective active portion and, for the or each movable element, the method may further comprise discriminating between the situation where the selection element is located over the active portion and the situation where the selection element is not located over the active portion, and preferably the method further comprises ensuring that a movable element is in the selected state when the selection element is positioned over the active portion and not selected when the selection element is not positioned over the active portion.
  • the movable elements may be adapted to be displayed within a display area, and the method may further comprise monitoring whether a selected movable element is located inside the display area and if the selected movable element is not located inside the display area then either deselecting the selected movable element or changing the display area so that the selected movable element is within the display area.
  • apparatus for processing data comprising:- means (for instance a suitably programmed processor) for generating display data comprising at least one movable element, the or each movable element being selectable and deselectable by positioning a selection element relative to that movable element; a user input device for moving the selection element; means (for instance a suitably programmed processor) for monitoring whether the or each movable element is in a selected state or in a not selected state; and means (for instance a suitably programmed processor) for maintaining the relative position of the selection element and a selected movable element in such a way as to maintain the selected movable element in the selected state.
  • apparatus for processing data comprising:- means (for instance a suitably programmed processor) for generating display data comprising at least one movable element, the or each movable element being selectable and deselectable by positioning a selection element relative to that movable element; a user input device for moving the selection element; means (for instance a suitably programmed processor) for monitoring whether the or each movable element is in a selected state or in a not selected state; and tracking means (for instance a suitably programmed processor) for moving the selection element in dependence upon movement of a selected movable element and separate from and/or in addition to any movement of the selection element using the user input device.
  • means for instance a suitably programmed processor
  • apparatus for processing data comprising:- means (for instance a suitably programmed processor) for generating display data comprising movable elements; means (for instance a suitably programmed processor) for allowing a user to select and de-select, using a user input device, a movable element; and means (for instance a suitably programmed processor) for freezing a selected movable element whilst it is selected such that at least one movable data element which is not selected remains movable.
  • apparatus for processing data comprising:- means (for instance a suitably programmed processor) for generating display data comprising a plurality of data elements arranged along an axis, and movable along the axis; and means (for instance a suitably programmed processor) for generating at least one display feature, the or each display feature being associated with a respective one of the movable data elements and being such as to visually distinguish the respective one of the movable data elements from other of the movable data elements.
  • apparatus for processing market data relating to trading on an electronic exchange comprising:- means (for instance a suitably programmed processor) for generating display data comprising a plurality of movable data elements; means (for instance a user input device) for choosing one of the plurality of movable data elements; and means (for instance a suitably programmed processor) for generating at least one display feature, the or each display feature being associated with the chosen movable data element and the means for generating the at least one display feature being adapted to generate the at least one display feature in dependence upon a trading action relating to the chosen movable data element.
  • a method of processing market data relating to trading on an electronic trading exchange comprising the steps of: dynamically generating, in response to market data received from an interface connected to the exchange, market display data comprising movable data elements for display on a display means (for instance a screen); allowing a user to select and de-select, using a user input device, a movable data element; and freezing a selected movable data element whilst it is selected such that at least one (preferably the majority or every) un-selected movable data element remains movable.
  • market data is the raw data relating to market prices, quantities, movement, bids, asks, time, and the like, received from the exchange.
  • market display data is the data generated for display based on the raw market data, and may be used to generate a market depth display.
  • the movable data element associated with the market display data connotes preferably either an area of the display containing data or the data itself, that is, a value or a graphical icon associated with an underlying market trade parameter, such as price or quantity.
  • a movable data element relating to a market can move in response to changes in the market, for example in response to changes in either or both of a highest bid (offer to buy) price and/or quantity and of a lowest ask (offer to sell) price and/or quantity.
  • both the display containing the element and the data itself can "move" (which includes "change").
  • trade or “trading” relates to taking action to do at least any of the following actions: buy or sell ("fill” an order); bid (offer to buy), or ask (offer to sell) ("join” the market); vary an order; or delete an order.
  • Market information supplied by electronic exchanges to trading systems includes quantity information of a commodity which is available for buying and selling at different price levels in the market (market depth) which change dynamically during trading.
  • market information such as price might have changed before the user can effect a trade at the exchange, therefore causing the user to potentially harm his/her desired net market position with respect to existing holdings.
  • Selecting or freezing a movable data element can assure the user that the value of a trade parameter selected or frozen, for example, the price, has not changed during the time taken by the user to use the user input device in perfo ⁇ ning the selection function, for example, moving a mouse pointer or other moveable indicator to hover over a desired price on a market depth display. The user therefore can know an exact price that will be used in a trade.
  • the user can take advantage of being able to quickly confirm the trade for further transmission to the exchange, or alternatively being able to abandon the trade, for example if a different frozen price is shown than the price the user originally had contemplated or had attempted to select.
  • the market data includes at least one bid price and associated bid quantity and at least one ask price and associated ask quantity.
  • a bid quantity normally represents all the bid quantities in the market at the bid price level.
  • an ask quantity normally represents all the ask quantities at the ask price level.
  • a quantity of zero is a valid quantity and can be displayed by a "0" numeral or a blank space or cell.
  • the market display data is based on at least one bid price and associated bid quantity and at least one ask price and associated ask quantity.
  • Market display data may be presented in a different form to that which is received from the exchange interface.
  • raw market price data might be modified to improve its readability, for example by generating market display data for a trade parameter in truncated form.
  • An example could be generating a price for display of 345, or 45, originally based on a market data price of 500.345. This could be used where some units do not vary in the market depth. This approach to display data may apply equally to any type of market data.
  • the value of the selected or frozen data element is not necessarily the same as the actual market trading price, as the frozen data element could be a representation, for example a truncated price, for improving a user's visibility.
  • the freezing step freezes a bid price and associated bid quantity (and possibly other quantities).
  • the freezing step freezes an ask price and associated ask quantity (and possibly other quantities).
  • Freezing both movable data items can confirm to the user the market depth information at a particular price level at a time of selection.
  • the method includes a further step of trading using trading data relating to the selected or frozen moveable data element.
  • Trading data is data required for sending a trading instruction to the exchange, for example to trade.
  • Trading may include buying, selling, or submitting a bid or ask, at a specified price level.
  • the trading data includes a bid or ask price or a bid or ask quantity.
  • trading involves communicating a trade order to the exchange.
  • trade orders there are four basic types of trade orders; buy and sell, and bid (offer to buy) and ask (offer to sell).
  • the selected price can be used for joining the market at any place in the market depth (including at the inside market), or filling an order at a particular price level, usually the best price level.
  • Buying and selling typically are normally executed at inside market prices; therefore, a buy or sell order can be submitted without specifying a price (as buy/sell orders can only be executed at market price).
  • buying or selling using a selected or frozen price level in the market depth might for example consist of buying or selling (at inside market price) all of the available quantity up to a specific price level, for example, the price based on the selected or frozen data element.
  • the trading data (or possibly price check data) further includes a pre-determined upper and lower price limit not related to any specific selected or frozen data element.
  • Price limits allows the user added flexibility when trading near a selected price level which is acceptable.
  • Such limits might be set independently of a selected or frozen price, for example an upper limit could be a single tick above a selected or frozen price.
  • trading is automatic at the exchange when a data element is selected or frozen.
  • a user may decrease the overall time taken to trade by automatically trading; which can be valuable especially in volatile markets.
  • the trading step is dependent on the fulfilment of further conditions including a pre ⁇ determined time delay or a single action of the user input device or a pre-determined multiple action of the user input device.
  • the trading step is initiated at the exchange upon user input with respect to a display element relating to either a price or a quantity, preferably when the user uses the user input device to click on a display data element relating to either a price or a quantity, although more usually the user would apply input with respect to a quantity. Further, the user may apply input with respect to a different selected or frozen element.
  • the step of selecting or freezing a moveable element selects or freezes an area of the display, and more preferably the area is an area of data relating to a particular price, even more preferably a complete row or column containing that price.
  • the area is a row, part of a row, or a cell, or a column, part of a column or a cell.
  • the area contains bid or ask price and/or quantity information, although it may contain other information instead or additionally.
  • the area is a cell containing a price or quantity associated with a particular price.
  • the area is any other combination of a row, part of a row, or cell.
  • a frozen row (or column) including a fixed price and variable quantity information stays fixed on the display whilst every other row moves on the display, one row at a time being overlaid by the frozen row (or column).
  • Selecting or freezing an area of the display allows the user to select, potentially for use in trading, any information contained in the selected or frozen area. It also graphically emphasises all related information contained in the selected area in comparison with other un-selected dynamically updateable and movable information.
  • Displaying data in cells or rows or other various combination of areas can enhance the selectability of data.
  • the market data includes a plurality of bid and ask prices and associated quantities, including at least a lowest ask price and ask quantity and at least a highest bid price and bid quantity for a commodity.
  • the lowest ask price and the highest bid price and their related quantities define the "inside market" which are the prices at which commodity units are actually bought and sold in the market.
  • the highest bid price and/or the lowest ask price can change when there is a change in either the lowest ask price or highest bid price.
  • These price changes can occur, for example, when all available quantity at a particular price level at an inside market price is bought or sold, therefore making the next level up in the market depth the new "inside market” price and quantity.
  • market depth includes the best bid and offer prices, although alternatively it might connote trading information outside the inside market.
  • a plurality of bid and ask price and quantity information can be used to display market depth, usually arranged in order of price levels at defined intervals, the lowest of which is typically referred to as a "price tick".
  • a market depth arranged by price level therefore can have two dimensions, a bid side and an ask side, for example, each side notionally beginning at the inside market bid and ask price levels, and extending out in opposite directions from those price levels.
  • a market depth view can be displayed such that only prices which have quantities are displayed, or alternatively, all price levels at a chosen "tick" resolution can be displayed regardless of whether there is a quantity for each price.
  • the movable data elements include bid and ask prices and bid and ask quantities.
  • Movable data elements are used to represent the movement of the bid and ask data on the display screen which movement is based on changes in the inside market.
  • a movable data element relating to at least one bid price which either is or is not the highest bid price, moves when there is a change in the highest bid price.
  • a movable data element relating to at least one ask price which either is or is not the lowest ask price, moves when there is a change in the lowest ask price.
  • bid prices and associated bid quantities move together when there is a change in the highest bid price.
  • Moving bid price and quantity data together allows the user to see the bid market depth including quantity information, move with a change in the inside market.
  • ask prices and associated ask quantities move together when there is a change in the lowest ask price.
  • a mid-point between a highest bid price and a lowest ask price is always shown at a fixed location or area of a market depth display shown on the display means, preferably substantially at the centre of the market depth display.
  • a mid-point between a quantity having the highest bid price and a quantity having the lowest ask price is always shown at a fixed location or area of a market depth display shown on the display means, preferably substantially at the centre of the market depth display.
  • Generating market display data for display always at or centred around a fixed location, for example the centre, of a market depth display can allow a user to easily locate the inside market price/quantity, therefore saving the user valuable time.
  • the location may be user-selectable.
  • the user is prevented from trading when a change in the market display data occurs when a data element is selected and/or frozen, although more normally the user would continue trading even when there has been a change in the market display data, such as changes in the market depth or at the inside market.
  • the user is prevented from trading when a change in the market display data occurs whilst an area is frozen.
  • the user is prevented from trading when a lowest ask price or a highest bid price changes whilst an area is frozen.
  • the method includes the step of automatically de-selecting (and/or unfreezing) the selected or frozen data element when the inside market changes.
  • Automatically de-selecting the selected or frozen data element guarantees protection of the user's trading position in trading situations where the user must trade using the trading value of a selected or frozen element, before the market changes in the depth (for example, before an existing bid or ask is pulled or deleted from the market by another trader), or before the inside market changes.
  • the method includes the step of automatically de-selecting (and/or unfreezing) a selected or frozen data element when the user moves the user input device away from a selected or frozen area.
  • Automatically de-selecting a selected or frozen area can allow the user to enjoy full visibility of a dynamically updated market depth display, and also allows the user to select or freeze another trade parameter, if desired.
  • the method includes a step of generating an alert when any market display data changes whilst a movable data element is selected or frozen.
  • the method includes a step of generating an alert when either a highest bid price or a lowest ask price changes whilst a movable data element is selected or frozen.
  • Generating an alert based on changes in the market depth or at the inside market can allow a user to re-consider trading a selected/frozen value or price. This can be particularly valuable when trading in a market in which the user's trading position is very price-sensitive, for example to price changes of a single tick in either direction (up or down).
  • the alert is visual; it may include modifying the background appearance of a selected/frozen area.
  • This feature can provide a potentially less obtrusive method of alerting the user, thereby avoiding distracting the user from other potential alerts which may appear on the trading screen.
  • the alert is a moving graphical element.
  • This feature provides a potentially “higher” notional level of alert than the modification of the background appearance of a selected/frozen region but is potentially less obtrusive than an audible alert.
  • the alert may be audible.
  • This type of alert can be used when the user may not be looking at the same display screen; some users typically use multiple screens having displays of multiple exchanges, each displaying a different market.
  • the user may be prevented from trading when any alert is generated, although more normally the user would continue trading even when an alert has been generated or when there have been changes in the market depth or at the inside market.
  • the method may include a step of automatically de-selecting (and/or unfreezing) the selected data element when an alert is generated, in which case preferably the selected display would move to the adjacent row (or column).
  • the prevention or de-selection of a selected/frozen data element can guarantee protection of the user's trading position in trading situations where the user must trade using a selected/frozen price before the market changes or the inside market moves.
  • additional information is displayed when the market moves. This may provide the user with visibility of the full market depth.
  • the additional information may include data hidden by the frozen area.
  • the additional information is displayed in a pop-up window.
  • a bid quantity is aligned with an associated bid price.
  • an ask quantity is aligned with an associated ask price.
  • the bid or ask quantity aligned with a price is aligned in a horizontal row.
  • the bid or ask quantity aligned with a price is aligned in a vertical column. Alignment of bid and ask prices with bid and ask quantities can assist the user to select one or both of the quantities based on their proximal association.
  • the method includes a step of generating additional information for display to the user when a movable data element is selected or frozen.
  • Additional market information may allow the user to take a more informed decision regarding trading, whilst overcoming the constraint of limited space on a user's screen, which may have several market depth displays being displayed simultaneously.
  • the step of generating additional information comprises the use of a pop-up window adjacent to a selected area, for instance the selected or frozen region.
  • a pop-up window provides a convenient mechanism for temporary display of context-dependent information to a user.
  • the size and shape of a pop-up window can also be varied depending on the quantity of information that is being generated for display.
  • the additional information includes a cumulative quantity of a commodity being traded.
  • Generating a cumulative quantity for display to the user can provide a single figure showing the quantity of commodity units that need to be bought or sold before trading can occur at a particular price level. This information combined with the user's assessment of the potential market movement potentially allows the user to make a more informed decision regarding trading.
  • the additional information includes information relating to movement of prices or quantities of an inside market.
  • Information relating to market movement provides the user with a specific figure, or alternatively a qualitative measure of the market movement, preferably over a recent interval, or even over a series of recent intervals. This information potentially allows the user to make a more informed decision regarding trading.
  • the market display data is generated for display in at least one generally rectangular area.
  • at least one rectangular area is oriented vertically.
  • At least one rectangular area is oriented horizontally.
  • Rectangular areas may include fields, grids, regions, columns, rows.
  • At least one of a bid or ask quantity is displayed in separate bid and ask areas, each area arranged on an opposite side of a central rectangular region. This arrangement can allow a user to easily distinguish between bid and ask quantities.
  • the at least one bid and ask prices are displayed in rectangular areas. Those rectangular areas may be arranged on an opposite side of a rectangular area in which the at least one bid and ask quantities are displayed.
  • a rectangular area or rectangular areas in which bid and ask prices are displayed may be arranged between a rectangular area in which bid quantities are displayed and a rectangular area in which ask quantities are displayed.
  • a rectangular area or areas in which bid and/or ask prices are displayed may be arranged adjacent to or spaced apart from a rectangular area or areas in which bid and/or ask quantities are displayed.
  • the market display data is displayed in separate bid price areas, ask price areas, bid quantity areas, and ask quantity areas.
  • Using separate rectangular areas can allow the separation of the bid and ask information such that there is no common price or quantity area or region, and movement of asks is not related to movement of bids and vice versa.
  • the ask price area includes a display of prices at the level of at least one bid quantity.
  • the bid price area includes a display of prices at the level of at least one ask quantity.
  • the market display data of at least one bid quantity is aligned with the corresponding bid price data.
  • the market display data of at least one ask quantity is aligned with the corresponding ask price data.
  • At least one ask quantity is movable relative to an associated, preferably an adjacent, ask price.
  • movable is meant either that the quantity may change or that it may be moved to another cell, for example by dragging and dropping.
  • movable in relation to a movable element means that the element may move, for instance on a display.
  • the ask quantity does not move relative to a bid price.
  • At least one bid quantity is movable relative to an associated, preferably an adjacent, bid price.
  • movable is meant either that the quantity may change or that it may be moved to another cell, for example by dragging and dropping.
  • the bid quantity does not move relative to an ask price.
  • a display of ask prices and corresponding ask quantities are displayed in adjacent rectangular areas at a location away from a display of bid prices and quantities.
  • the arrangement of a rectangular area on the display can be determined by the user.
  • the size of a rectangular area on the display can be determined by the user.
  • the colour of a rectangular area on the display and/or the colour of text on the display can be determined by the user.
  • the colour of the border of a rectangular area on the display can be determined by the user.
  • Customising the arrangement and/or sizes, and appearance of rectangular areas can allow the user to vary the visibility and the level of emphasis given to different types of information, for example prices or quantities, participation levels, and/or information relating to previous trades. This may help the user to make best possible use of a limited display area.
  • the method further comprises monitoring the position of the selection element and/or monitoring the position of the or each movable element.
  • the method may further comprise discriminating between the situation where the selection element is located over a movable element and the situation where the selection element is not located over a movable element, and preferably the method further comprises ensuring that a movable element is in the selected state when the selection element is positioned over that movable element and not selected when the selection element is not positioned over that movable element.
  • the or each movable element comprises a respective active portion and, for the or each movable element, the method further comprises discriminating between the situation where the selection element is located over the active portion and the situation where the selection element is not located over the active portion, and preferably the method further comprises ensuring that a movable element is in the selected state when the selection element is positioned over the active portion and not selected when the selection element is not positioned over the active portion.
  • the movable elements may be adapted to be displayed within a display area, and the method may further comprise monitoring whether a selected movable element is located inside the display area and if the selected movable element is not located inside the display area then either deselecting the selected movable element or changing the display area so that the selected movable element is within the display area.
  • apparatus for processing market data relating to trading on an electronic trading exchange comprising:- means (for instance a suitably programmed processor) for dynamically generating, in response to market data received from an interface connected to the exchange, market display data comprising movable data elements for display on a display means (for instance a screen); means (for instance a suitably programmed processor) for allowing a user to select and de-select, using a user input device, a movable data element; and means (for instance a suitably programmed processor) for freezing a selected movable data element whilst it is selected such that at least one un-selected movable data element remains movable.
  • aspects of the invention also provide for an apparatus for performing the above-mentioned independent and preferred methods of the invention.
  • the invention also provides a computer program and a computer program product for carrying out any of the methods described herein and/or for embodying any of the apparatus features described herein, and a computer readable medium having stored thereon a program for carrying out any of the methods described herein and/or for embodying any of the apparatus features described herein.
  • the invention also provides a signal embodying a computer program for carrying out any of the methods described herein and/or for embodying any of the apparatus features described herein, a method of transmitting such a signal, and a computer product having an operating system which supports a computer program for carrying out any of the methods described herein and/or for embodying any of the apparatus features described herein.
  • Figure 1 shows a system architecture of an electronic trading environment with multiple electronic exchanges, trading software suppliers, and independent user trading platforms
  • Figure 2 shows a high level system implementation for electronic trading for a single user trading platform trading on a single electronic exchange
  • Figure 3 shows an illustration of the market information for a single exchange being displayed on the single user trading platform
  • Figures 4a and 4b illustrate the dynamic display of the market information on the single user platform when an inside market changes
  • Figure 5 illustrates the selection of a part of the display and generation of a trade order when a trade order parameter is selected
  • Figure 6 shows a representation of a trade order
  • Figures 7a and 7b illustrate a selected row when the inside market changes
  • Figure 8 shows an alternative display of market information for a single exchange wherein the bid and offer quantities are in a single column
  • Figures 9a and 9b show for the alternative display of market information, the effect of a change of the inside market when a row is selected;
  • Figures 9c and 9d show examples of displays in which selected rows have been frozen;
  • Figure 10 illustrates an alternative example which generates and displays additional information upon the initial selection of a price region
  • Figure 11 shows a screen-shot of a trading application on a single user trading platform
  • Figure 12 shows an updated screenshot after a change in the inside market
  • Figure 12b shows a yet further updated screenshot showing a frozen row when the inside market changes
  • Figure 13 shows a portion of a screenshot of a market depth view, similar to that of the front-end trading application of Figure 8;
  • Figure 14 shows the portion of a screenshot of Figure 13 with a row selected
  • Figure 15 shows the portion of a screenshot of Figures 13 and 14 with the row selected, after the market has traded up
  • Figure 16 shows the portion of a screenshot of Figures 13, 14 and 15 with the row selected, after the market has traded up further;
  • Figure 17 shows a portion of a screenshot of a market depth view with spaced apart rows being highlighted to indicate market flow
  • Figures 18 to 20 show a portion of a screenshot of a market depth view, and illustrate the colouring of a cell in the Last column in dependence upon the last market activity;
  • Figures 21 to 25 show a portion of a screenshot of a market depth view, and illustrate the colouring of cells in the Price and Last columns in dependence upon the last market activity, and also illustrate the use of highlighted spaced apart rows to indicate market flow;
  • Figures 26 and 27 show a portion of a screenshot of a market depth view, with the tracking module functionality switched off and with a freezing capability enabled;
  • Figures 28a, 28b, and 28c illustrate another embodiment
  • Figure 29 is a flow chart illustrating the operation of the tracking module
  • Figures 30a to 30c illustrate the re-centring of a price ladder
  • Figure 31 shows an example of a dialog box for configuring the re-centring process
  • Figures 32 to 36 are screen shots of further embodiments, some including an order tooltip;
  • Figures 37 and 38 are example screen shots of dialog boxes for configuring the tooltip and other user interface options.
  • Figures 39 and 40 show screen shots of further alternative trading screens.
  • Figures 1 to 3 will be used to describe a system architecture used in an electronic trading environment including a market depth trading screen, and a basic description of four types of trade orders and examples of how those trade orders might be used in practice.
  • Figure 5 shows an example of a system which is adapted to select a portion of the trading system, and outlines various options for submitting a trade order.
  • An additional feature of providing an alert when the market has changed whilst a portion of the trading screen is selected is shown in Figures 7a and 7b.
  • Figure 10 illustrates a further alternative example which generates and displays additional information upon the initial selection of a price region.
  • FIG 1 shows nine individual independent users (with trading devices) 2102 which are capable of connecting to one or more of three electronic exchanges 2104 via one or more data centres 2106.
  • the data centres are connected to the exchanges via leased line connections 2108 whilst the users 2102 are connected to the data centres using internet protocol (IP) devices and communication systems, represented by a cloud 2110.
  • IP internet protocol
  • the dotted lines 2112 connecting the users 2102 to the data centres 2106 represent the specific data centre to which each user is connected.
  • a user 2102 is able to connect to one or more independent electronic exchanges, receive live market information, and execute trades and submit offers to trade by sending appropriate electronic trade orders (not shown) to the relevant exchange.
  • Each exchange consecutively processes received trade orders, regardless of which user 2102 or data centre 2106 the order originates from.
  • Data centre 2206 is connected to the exchange 2204 via a leased line connection 2208, and to the trading terminal 2202 via an IP communications system 2210.
  • Data centre 2206 contains a port 2212 directly connected to the exchange.
  • the port 2212 communicates with an ISV gateway 2214 that allows an ISV trading system 2216 to send information such as trade orders and receive information such as market depth data to and from the exchange.
  • the trading system 2216 receives market information from the exchange (via the gateway) and communicates this information using a suitable Markup Language, for example Extensible Markup Language (XML), to the trading terminal via client-server application software 2218.
  • XML Extensible Markup Language
  • a CitrixTM client 2220 is installed on the trading tenninal 2202, which allows a front-end trading screen 2222 to be interactively displayed over an IP communications system 2210 (e.g. the internet) on a display screen 2222 on a trading terminal.
  • IP communications system 2210 e.g. the internet
  • the preferred embodiment is implemented to operate over a local area network or, in certain variants, over the internet, via an internet browser front end, typically Microsoft Internet Explorer version 6 and above.
  • the preferred embodiment works on Microsoft operating systems such as Server 2003 and XP.
  • Figure 3 shows a rectangular front-end trading screen 2302 for use by a user / trader, hereinafter referred to as a 'user'.
  • market depth information is displayed in vertical or horizontal columns of individual cells which contain prices and quantities at which the goods or commodities being traded can be bought or sold.
  • market depth data is shown in the vertical orientation.
  • the grid as a whole provides a visual representation of the market depth including other users' offers to buy 2306, or "bids” which can be understood to represent quantities and related prices at which the user can sell (to other users). Similarly, other users' offers to sell 2308, or “asks” can be understood to represent prices and quantities which are available for the user to buy (from other users).
  • the price column 2310. is located between the bid and offer columns and shows the prices for bids and asks. It is important to note that in this example any given price level (grid position) can only relate to either a bid or an ask but never to both. This is due to the automatic centering of the market, which will be described below with reference to Figures 4a and 4b.
  • the prices in the price column are separated by intervals of one price unit, or what is commonly referred to as a price "tick", which always represents the minimum price interval between two closest buying or selling prices which can be specified for a tradeable commodity.
  • the market depth display shown in Figures 3 to 13 can show all price levels in the market depth, regardless of whether there is any tradeable quantity for that price.
  • market depth displays are not limited to showing all price levels of market depth; other examples (not shown) display only price levels for which quantities are available (for buying or selling) in the market.
  • market depth displays show price levels separated by a fixed multiple of price ticks; this is used to collapse a market depth into a shorter viewable area, which is sometimes required to save display space on a user's desktop trading environment.
  • bid and offer columns can be displayed adjacent to each other and away from the price column and each or any of the columns can be displayed horizontally or at an angle, or following a defined straight line or a curved path.
  • a quantity in a bid or ask column is more than one, this could represent orders from more than one user.
  • the number of users participating in the market at different price levels is not shown in any of these examples; however there is the facility (not shown) for the system to display the user's contribution or holding in either a bid or ask quantity at any price level.
  • Each number in the bid 2306 or ask 2308 columns represents the total number of bids or asks, respectively, in the market at a specific moment in time.
  • the bid 23 at price 107 may include bids from several users, the quantity shown is the sum of all quantities of the users who will buy at that price.
  • each number in the bid 2306 and ask 2308 columns represents the number of bids or asks available to a particular user at a specific moment in time which, for some markets, may differ from the total number of bids and asks in the market at the moment in time, as a particular user may not be able to participate in some trades or with some counterparties.
  • the inside market is designated as the (best) highest bid price 2312 of 108 and the (best) lowest ask price 2314 of 111.
  • the inside market spread is the price difference between the best bid and ask prices. In the example shown the spread has a value of 3 price units. In this example, the values of ticks within the spread are not shown, however in other examples a price level is shown for each tick value within the best bid and ask prices.
  • the inside market spread could be a single tick.
  • the inside market is normally separated by a single tick, although in other markets several ticks may separate the inside market.
  • a user can perform four basic trading transactions in the market.
  • other trading transactions are possible, including:
  • the rules of the market may include that buying and selling transactions are only to be executed at the inside market prices.
  • the user wants to buy or sell at prices other than the market prices, he/she can participate or trade in the market depth by submitting offers to buy and offers to sell.
  • Such orders might only be filled when the trading activity of the market forces the inside market buy/sell prices up or down so that the previously entered offer to buy or sell is at the inside market price, and therefore can be filled by another user's order.
  • the system displays prices and quantities dynamically; therefore a change in the inside market brought about by trading activity will be represented by the bid or offer quantities and prices moving together with the movement of the market, such that the inside market quantities and prices are always displayed at the centre of the trading screen. If the window is resized, the mid ⁇ point between the best bid and offer quantities is kept in the middle of the screen. Showing the inside market at the mid point or centre of the market depth screen provides the advantage that the best bid and ask prices will not move and therefore will be easily available to the user. However, in a volatile market this gives rise to a situation in which the prices at which a user may wish to trade are moving about on the screen. This dynamic movement of the market will now be described with reference to Figures 4a and 4b.
  • Figure 4a shows the inside market and the market depth before a trade occurs.
  • there is in the market one user willing to buy one unit at the market price of 108 and one or more users offering 2 units for sale at the market sell price of 111.
  • Figure 4b shows the appearance of the market after a trade has occurred.
  • a user (elsewhere connected to the exchange) bought the 2 units for sale at the price of 111. Accordingly, the two units are no longer available and are no longer displayed.
  • the display now shows the best sale price for units on the market as 112, for which there are 54 units available.
  • the best ask price 112 and quantity 54 have both moved to the centre line 2402, which represents the location of the inside market.
  • the best bid price and quantity have remained in the same position. Accordingly, the market depth at prices 113, 114 has moved downwards.
  • the market price of 115 (not shown previously in Figure 4a) has now appeared at the top of the ask column on the market display.
  • the user can see instantly the best bid and ask quantities and the best bid and ask prices, as they are always located on either side of the inside market line 402.
  • Preferred embodiments provide mechanisms for ensuring that the user can trade quickly and accurately at a selected market price at a pre-determined order quantity even though prices are moving about on the screen with the movement of the inside market.
  • FIG. 5 shows an order entry apparatus 2500 that uses the system architecture described in Figures 1 and 2 and the market depth display behaviour shown in Figures 3 and 4a and 4b.
  • a trading screen 2504 shows a market depth display 2501 which represents market information provided by an electronic exchange 2506.
  • An exchange interface 2513 housed in a data centre 2508 receives data from the exchange 2506 via a leased line connection.
  • Market info ⁇ nation is supplied to the trading screen 2504 from a trading application program 2512 via internet protocol communications network 2510.
  • Trading application program 2512 uses a generating module 2515 to dynamically generate, in response to the market information received from the interface 2513, values of trade order parameters, for example commodity prices and quantities.
  • the market price is selected for use in a trade order.
  • a trade order also requires a predetermined or automatically determined order quantity.
  • the application program allows the user to set a predetermined trade order quantity before executing the trade so that this variable can be selected or set in advance of selecting the desired market price. This is set using a variable selection interface (not shown) on the trading screen which uses graphically displayed symbols including arrows and/or roman numeral symbols to allow the user to vary the pre-selected order quantity by individual units or multiples such as ten or twenty, for example, providing a convenient and fast method for changing an order quantity.
  • the order entry system 2512 includes a user input device 2503, in this example a mouse which moves arrow 2502, which allows a user to select a specific dynamically generated value, in this example, a price value, by "hovering" over a specific price region or cell on the market grid associated with that price.
  • a pointing device also enables the user to save time in selecting a value of interest.
  • the user input device could be a keyboard, or a voice- recognition system, or an eye-tracking device such as those common in the art of pointing and selecting user input devices.
  • a tracking module 2520 is used to monitor the position of a selected price region or cell on the grid, and to ensure that whilst the price region or cell is selected, the arrow 2502 remains over the selected region or cell despite any movement of the selected region or cell across the screen, in particular any movement of the selected region or cell up or down the market grid.
  • the tracking module 2520 can operate independently of the user input device, so even if the user does not operate the user input device, the tracking module 2520 will move the arrow 2502 to ensure that it remains over the selected region or cell, whilst the selected region or cell remains selected.
  • the user can deselect a selected region or cell by moving the arrow 2502 off the selected region or cell. When the region or cell is deselected, the tracking module ceases to ensure that the arrow 2502 remains over that region or cell.
  • the mouse cursor i.e. arrow 2502
  • This tracking mechanism is thus also referred to herein as a “sticky mouse” mechanism.
  • a trade order generator 2519 is used for generating trade orders 2514 for transmission to the exchange for placing buy or sell orders at market prices (filling), or orders to buy or sell in the market depth (joining or participating).
  • a trade order 2602 is shown which includes the type of order 2604, a price 2608 (if applicable), and a quantity 2610 to be traded or offered for trade.
  • the user moves the mouse arrow 2502 over or in alignment with the row, or in a variant part of the row, or even a specific cell containing the desired trading price.
  • the application program 2512 senses the position of the mouse arrow 2502 and when the position of the tip of the mouse arrow is within the location of a region of the grid which relates to or is associated with a specific price, the row in which that price appears is selected. Once the row is selected, the tracking module 2520 monitors the position of the row. Even if the market changes and the selected row moves up or down the screen, the tracking module 2520 ensures that whilst the row is selected, the arrow 2502 remains over the selected row despite any movement of the selected row across the screen.
  • the quantities in the other columns of the row namely the Bid and Ask columns 2306 and 2308, change in line with the market. If the display includes further columns, the information in these may also change in line with the market, so that the information in the selected row updates in the same way as the other, unselected, rows in the grid.
  • the selected nature of the row is shown in Figure 5 by the emboldening of the screen font of the values and border of the row containing price 112 and the quantity 54 when the tip of the mouse arrow hovers within the relevant part of the grid.
  • the price 112 is received 2516 (shown by a downward pointing arrow) by the trading application 2512 and the trade order generator 2519 as a price at which the user might participate (e.g. submit an ask trade order 2514) in the market.
  • Specific details concerning the setting up of a trade order vary from exchange to exchange.
  • the user can set the trading application program 2512 to generate and/or submit 2518 (shown by a downward pointing arrow) a trade order 2514 (generated by trade order generator 2519) automatically or if certain conditions are fulfilled or particular actions taken.
  • the program 2512 can be set to submit the order upon receiving one or more clicks (for instance, either a down click or the subsequent up click) of a mouse key whilst the mouse pointer is hovering in the defined area, or is pointing to a particular sub-region of the row, for example the blank cell to the left of the price cell having the price of 112.
  • clicks for instance, either a down click or the subsequent up click
  • the trade order can be sent by the system if the inside market does not move within a specified or user-defined period of time from the row being selected, for example, two tenths or one half of a second.
  • This delay is used to allow the user to abandon the trade order, for example by actuating a user- input device such as a keyboard, or by moving the mouse before expiry of the pre-determined time period.
  • the system can also be set to send varying types of trade orders whilst the row is selected, depending on the location of the mouse pointer and on which mouse button, or input device selection function, is actuated.
  • a left click on the bid column buys the default quantity at that price.
  • the order may be submitted on the button release but can be set to be submitted when the mouse button is initially pressed, and a left click on the ask column can sell the default quantity at that price.
  • Other input devices can also be used to signal the application to generate and/or submit a trade order to the exchange using the selected static price, such as a keyboard, motion tracking device, foot pedal, or another mouse.
  • the trading system is also adapted to provide visual indication to the user, or other functionality, if the inside market changes after the user hovers the mouse pointer over a particular price region before a trade order is sent. Providing the user with such a market change alert allows the user to re-consider sending a trade order in view of a change in market conditions.
  • An example of this functionality is shown with reference to Figures 7a and 7b.
  • Figure 7a shows the trading screen of Figure 4a when a user hovers the mouse pointer over the region containing price 112 and quantity 54.
  • Figure 7b shows that after the inside market has changed, the selected region containing price 112 and quantity 54 has moved down the screen and that the mouse pointer is still positioned over the selected region, even though the user has not used the user input device to move the mouse pointer.
  • Figure 8 shows a market display 3100 showing a price column for bids 3104 located in the left lower region of the market grid, and the price column for asks 3106 located in the right upper region. A column showing quantities for bids and asks 3108 is shown in the centre.
  • a selected row 3202 having a price 112 and quantity 54 is shown in both Figure 9a and 9b to illustrate the effect of the change in the inside market.
  • the selected row containing price 112 and quantity 54 has moved down the screen and the mouse pointer is still positioned over the selected region, even though the user has not used the user input device to move the mouse pointer.
  • the selected row is frozen in its current position after selection such that, regardless of the movement of other rows, the selected row remains displayed at the position it occupied prior to selection.
  • the frozen row may be superimposed on the row(s) behind in such a way that the info ⁇ nation behind remains at least partially visible, for example using a partial transparency or translucency effect.
  • this embodiment functions similarly to the mouse tracking embodiment described above.
  • selection is achieved by hovering the mouse cursor over certain cells (though other methods of selection, such as clicking, may also be used). The selected row or area is then frozen.
  • the user can freeze a portion of interest of the dynamically displayed market depth whilst the other data is continuously updated, by pointing to the desired region with a mouse.
  • the value of the parameter which is frozen is held for use in generating a trade order for further transmission to the exchange.
  • the frozen portion of the display can be returned to its former dynamic state when the mouse pointer is moved away from the desired region.
  • a freezing display module is used to freeze the mouse-selected price value whilst keeping the other non-selected values continually updateable. That is, the row does not move even though the other rows in the display may move.
  • the data values in the frozen row may also be frozen, that is to say they may retain their value from the point the row was selected despite changes to the underlying data. Alternatively, the data values may change with the underlying data.
  • Freezing a selected dynamically generated value allows the user to know that the information remains steady on the screen once it is selected. This provides the user an important time advantage of being able to quickly confirm the order for further transmission to the exchange or abandon the order, for example if a different static price is shown than the price the user originally had in mind, and can prevent mistakes occurring where there is movement of market information between selection of a row and transmission of a trade order.
  • Figure 9c An example of a display in which a region has been frozen is displayed in Figure 9c.
  • Figure 9c corresponds to Figure 9b described above, except that, instead of the tracking of mouse movement to follow the selected row as it moves, here, the selected row has been frozen.
  • the market depth display returns to its prior state (with no row selected, as shown in Figures 4a, 4b and 8), or an alternative row is selected (depending on whether the mouse cursor is moved outside the selection region, or to a selection region of a different row).
  • the freezing mechanism is used, the frozen row becomes dynamically updated.
  • the tracking module ceases to operate on that grid or region.
  • additional information relating to the market for example, relating to a price level, such as summary or statistical market information, is presented to the user.
  • Such information can be useful in allowing the user to make a more informed decision regarding trading.
  • additional information is preferably displayed in a pop-out window or region for the selected row only.
  • Figure 10 shows a market depth display 3302 of such an embodiment, having a central bid and ask quantity column 3304 similar to those described above with reference to Figures 8 and 9a to 9c.
  • the system is adapted to provide further information 3306 in a pop-out region or window 3308 which is generated when the initial selection (hovering over) of a cell or region is performed by the user.
  • the further information 3306 generated includes: the current quantity at price 112 (it can be seen that the quantity has changed since the row was selected) 3305, the cumulative quantity 3310 of other users' offers priced a tick lower than the user's selected price of 112; the cumulative quantity 3312 of other users' offers priced a tick higher than the user's selected price of 112; the difference between the current best ask price and the best ask price over a specified past time interval, in this example, ten minutes prior 3314; and the difference between the current best ask price and the best ask price over another specified time interval, in this example, one hour prior 3316.
  • data in a selected row (whether selected using the mouse-tracking mechanism or the freezing mechanism described above) is updated automatically, in the same manner as for non-selected rows (only the screen position of the row being frozen).
  • the current quantity at price 112 is not included in the further information provided in the pop-out region, as the quantity information in the bid and ask quantity column would anyway be updated to be current.
  • the market depth display returns to its prior state, that is, the pop-up window disappears (and, if the freezing mechanism is used, the frozen row becomes dynamically updateable), as shown in Figure 8, when the mouse pointer is moved away from the grid or region associated with the trading price which was previously selected.
  • a visual indication of a change of the market information occurs to alert the user that the inside market has changed.
  • the visual indication is shown as a change in the background shading which does not obscure the price and quantity information.
  • the system prevents the user from trading at the selected displayed price if the market moves before the trade order is sent.
  • Preventing the generation or sending of the order provides an important automatic fail-safe feature for the user for situations in which it is imperative that a trade order is submitted at the desired price.
  • the system also allows the user to set criteria for preventing sending of a trade order to allow for situations in which a user in a given position prefers to be prevented from trading only when the market moves in a particular direction, e.g. down. This is achieved for example by providing customisable limits for trade order parameters which may include price, market spread or direction of market movement.
  • Figures 11, 12 and 12b show screen-shots of a trading application for a single user trading platform.
  • Figure 11 shows a screenshot of a market depth view 2800 with a top row 2802 positioned horizontally above the (vertical) columns.
  • Each market depth trading view has a movable order entry parameter ticket (not shown), columns which are movable and resizable and which have resizable display fonts.
  • the Net Column 2804 shows the current net position at that price level.
  • the Inf (Infront) column 2806 shows the quantity left in the market until the user's order is filled.
  • the Inf quantity is estimated by taking the quantity in the market when the order is submitted and then removing the last traded quantities as they get traded. When all the quantity has been traded this cell is left blank.
  • markets that are pro-rata that is, markets in which lots are bought from or sold to traders pro rata to the number of lots in those traders' working orders) the user's order would start to get filled before this volume disappears.
  • the quantity left in the market until the user's order is filled can only be guessed in some cases, even for markets that work on a first come-first served basis, as, for instance, some orders in the market, ahead of the user's order, may be pulled before being filled.
  • the Wrk column 2808 shows the quantity of lots the user is trading at that price. This shows the extent to which the user is "participating" in the market at that price level.
  • the bid column 2810 shows the current bid quantity at each price level.
  • the price column 2812 shows the price level for either of a bid or ask quantity.
  • the ask column 2814 shows the current ask quantity at each price level.
  • the inside market is shown at about the centre of the screen at 2803 with inside market prices of 97.795/97.800.
  • the Last column 2816 shows the last traded quantity. Whenever the last traded price and quantity changes, a small pop-up (not shown) with the quantity appears temporarily half line below the last traded price.
  • the top row 2802 data shows data for five variables measured over the course of a trading day.
  • the High cell 2818 shows the day's highest price
  • the Low cell 2820 shows the day's lowest price
  • the Move cell 2822 shows the day's move, which is equal to the current price minus the settlement price from the previous Trading Day.
  • the VoI cell 2824 shows the day's total traded quantity or volume.
  • the Limit cell 2826 shows the limit allotted to the user in the market; that is the maximum amount they can be long or short for that market. In particular variants there is also a Clipsize cell (not shown) which limits the value of a single order which can be submitted to the market to a given "clipsize".
  • This particular screen employs a pointing device, for example, a mouse, to instruct an application program to generate and send trade orders.
  • a pointing device for example, a mouse
  • a left click in the Bid column at a location where the price is at or lower than the inside market submits a bid order at the price level relevant to that location, hence enabling a user to "join" the market.
  • Such a bid order is otherwise known as a "working order", that is one that has not yet been filled.
  • a left click in the Ask column at a location where the price is at or higher than the inside market submits an ask order at that price level.
  • two different default volumes can be set up, one applied using a left click and one applied using a right click.
  • the order is submitted upon release of the clicked mouse button - but can alternatively be set on mouse down or one-click if that option is chosen in the application program preferences.
  • the user can trade on the down click of a mouse or on the up click, according to preference.
  • bid and offer quantities at prices corresponding to those locations are incremented by pre-set amounts.
  • a left click in the Wrk column 2808 pulls (deletes) the last order entered by the user at that price level.
  • a right click in the Wrk column 2808 allows the user to adjust the order (for instance the volume or price). Pushing down on the right button combined with movement of the mouse enables a drag and drop feature which allows the user to move an existing order at one price to another price.
  • a left click on the Price column 2812 sets the chart levels, in the sense that a left click on a particular price highlights that price permanently. If a user clicks on say two prices either side of the inside market this can assist the user for example in trading between those two prices. A price can be unhighlighted by clicking on it again.
  • Figure 12 shows an updated screenshot 2900 after a change in the inside market 2902.
  • the price at the middle of the screen is always the price at the middle of the inside market. If the inside market price shifts then the display shifts to take account of that shift.
  • the colour of an entire row is changed when the row is selected.
  • the colour of only the three bid, price, and ask cells of the selected row is changed upon selection of a row.
  • the colour of the border of the cells in a selected row, or at least some of those cells, is changed upon selection of the row.
  • the colour of the cells of the selected row is further changed when there is a change in the inside market.
  • whether or not the colour of cells, text, and borders of cells changes automatically upon selection of a row - and which cells, text, and borders, and to which colours - is determined by the user. Similarly, whether or not any further changes of a selected row occur automatically upon a change in the inside market is also determined by the user.
  • the front-end trading application described may use the mouse-tracking mechanism described above to force the mouse cursor to follow a selected row on the display.
  • the freezing mechanism described above may be used.
  • Figure 12b shows a screen shot corresponding to Figure 12, but where a row has previously been selected and frozen.
  • the frozen row is superimposed over other rows and remains in its position despite movement of other rows.
  • display 3500 shows a frozen row 3502 and a highlighted 3504 change in background appearance of the frozen row 3502 after the inside market 3506 has changed.
  • the colour of all cells in the frozen row 3502 has been changed.
  • the colour of only the three bid, price, and ask cells of the frozen row is changed upon selection of the row.
  • the colour of the border of the cells in the frozen row, or at least some of those cells, is changed upon selection of the row.
  • Figures 13 to 16 show portions of screenshots from an alternative front-end trading application.
  • the mouse-tracking mechanism (described above) is used when a row is selected, but the freezing mechanism could also be used.
  • Figure 13 shows a portion of a screenshot of a market depth view, similar to that of the front-end trading application of Figure 8.
  • the column headings shown in Figure 13 (namely Net, Inf, Wrk, Bid, Ask, Price, and Last) have already been described in connection with Figure 11.
  • the mouse pointer 4000 is resting over the 96.02 cell in the price column. No row is selected, as in the embodiment of Figures 13 to 16 particular rows are selected only by positioning the mouse pointer 4000 over cells in the Wrk, Bid, and Ask columns, and not by positioning the mouse pointer 4000 over cells in the Net, Inf, Price and Last columns.
  • the inside market is at 96.01/96.02.
  • the inside market is still at 96.01/96.02.
  • the mouse pointer 4000 has been positioned over the Ask cell in the row corresponding to a price of 96.02, and that row has thus been selected. It can be seen that the row has changed colour to indicate that it has been selected.
  • the user can choose how they wish the selection of a row to be indicated; for instance the colour of the selected row can be chosen by the user, or the user can choose to change the colour of only particular cells in the selected row.
  • the user would submit an order (either on the down click or on the up click, depending on the set-up chosen by the user) at the ask price of 96.02. If instead the user were to move the mouse one cell to the left, into the bid column, and then to left click on the mouse they would buy the default volume at the price of 96.02. If instead the user were to move the mouse one cell upwards to the row corresponding to the price of 96.02 would be deselected, and instead the row corresponding to the price of 96.03 would be selected.
  • the mouse pointer or cursor, is specific to the price in the cell and the row moves according to market conditions.
  • Figure 17 shows a portion of a screenshot from a variant of the front-end trading application described with reference to Figures 13 to 16.
  • rows 4104, 4106 and 4108, corresponding to prices 96.05, 96.02 and 95.99 respectively, are highlighted, even though none of those rows have been selected using the mouse pointer 4100.
  • the highlighted rows 4104, 4106, and 4108 move with movement of the corresponding prices (96.05, 96.02, and 95.99) up and down the market, and the use of the highlighted rows provides a striking visual indication of movement of the market, and enables a user to discern movement in the market without having to read the numbers appearing in particular cells in the Price column.
  • the user is able to discern movement in the market easily and immediately and, for example, even when using only peripheral vision to look at the display.
  • the highlighted rows 4104, 4106 and 4108 shown in Figure 17 are evenly separated by three price ticks.
  • the user is able to set the separation of the highlighted rows to be any desired separation from two ticks upwards.
  • the user is also able to specify that the highlighted rows are not unevenly separated, or to specify that only a single row is highlighted.
  • Figure 17 It can be seen in Figure 17 that it is the cells in the Net, Inf, Wrk, Price and Last columns of the highlighted rows 4104, 4106 and 4108 that are highlighted.
  • the highlighting of the Price cell and the Last cell in the highlighted row 4106 has been overridden, and those cells are coloured green, to reflect the last trading action that has taken place. That feature of cells being coloured to reflect the last trading action is discussed in more detail in connection with Figures 18 to 25.
  • the user is able to specify which cells in each highlighted row are highlighted, and how the highlighting should be overridden, if at all, by other display features.
  • the user is also able to specify the manner in which each cell is highlighted, for instance by a difference in colour, a difference in shading, by inclusion of additional text, characters or lines.
  • the user is able to set the various options relating to the highlighted rows, including spacing of highlighted rows, shading, and colouring options, from a drop-down menu.
  • the preferred embodiment also provides the user with the option of setting the colour of particular cells, for instance the cells in the Last column, to be dependent upon the last trade that occurred in the market. That feature is illustrated in Figures 18 to 20, each of which shows a portion of a screenshot from a variant of the front-end trading application described with reference to Figures 13 to 16.
  • the last trading activity that has taken place is a buy trade at the Ask price.
  • the highlighted cell 4200 in the Last column has been coloured blue as the last trade was at a lower price than that of the previous trade.
  • the last trading activity that has taken place is a sell trade at the Bid price.
  • the highlighted cell 4202 in the Last column has been coloured red as the last trade was at a higher trade than that of the previous trade.
  • the last trading activity that has taken place is a trade at the same price as the previous last trade price.
  • the highlighted cell 4204 in the Last column has been coloured green as the last trade was at the same price as the previous trade.
  • the colour of the highlighted cell in the Last column also varies with time since the last trade took place, usually towards a default colour.
  • the highlighted cells 4200, 4202, 4204 in the Last column would each change to the same default colour within a fixed period of time after the last trade took place.
  • each of the highlighted cells 4200, 4202, 4204 would fade towards the same default colour (for instance grey) from blue, red, and green respectively.
  • the user is able to choose the possible colours of the cells in the Last column (or indeed in any other column) and the conditions under which those cells appear in those colours, in dependence upon the last trade that took place, and whether and on what timescales the colours vary after the last trade.
  • the user is also able to specify other market events - in addition to type of last trade, and time since last trade - which cause particular cells to change colour.
  • Figures 21 to 25 show a series of portions of screen shots following a series of consecutive trading activities.
  • Figures 21 to 25 show an example of the highlighted row feature described above with reference to Figure 17, and an example of the colouring of cells in dependence of last trading activity features described above in relation to Figures 18, 19, and 20.
  • the last trade has taken place at a price of 96.02 which is the same price as the previous last trade price, and accordingly the cell 4300 in the Last column corresponding to a price of 96.02 has been coloured green.
  • cells in the Price column are also set to change colour in dependence on the last trading activity, and thus the 96.02 Price cell 4302 has also been coloured green.
  • rows 4304 4306 4308 corresponding to prices 96.05, 96.02, and 95.99 have been highlighted by colouring them yellow.
  • the rows have not been selected but rather are coloured yellow to visually indicate flow of the market to a user, as described with reference to Figure 17 in another example.
  • the Bid and Ask cells in the highlighted rows have not been coloured yellow (in variants of the embodiment the Bid and Ask cells in a highlighted row are coloured in the same way as other cells in the highlighted row, in this case yellow).
  • the cells in the Price column in the highlighted rows have been coloured a darker shade of yellow in order to provide a greater contrast with the grey colour of the other cells in the Price column.
  • the exception to this is the cell at a price of 96.02 in the Price column, which is coloured green.
  • the colouring green of that cell in dependence on the last trading activity has overridden the colouring yellow of the cell due to the row being highlighted.
  • the colouring green of the Last cell in the row corresponding to a Price of 96.02 has overridden the colouring yellow of the cell due to the row being highlighted.
  • Price cell 4400 and Last cell 4402 in the row corresponding to a price of 96.03 have been coloured red, as the last traded price, of 96.03, is towards the offer depth.
  • Price and Ask cells in the row corresponding to a price of 96.02 are no longer coloured green as the price of 96.02 is no longer the last traded price. Instead those Price and Ask cells are coloured yellow as they are in a highlighted row.
  • the colouring of the cells in dependence on the last trading activity is determined by a user in the preferred embodiment.
  • the user is able to select whether or not to use the highlighted rows feature to indicate market flows.
  • the user is also able to select whether the tracking module is used when a row is selected, or whether an alternative method is used when a row is selected, for example the freezing mechanism described above.
  • the user is able to select whether the tracking module is used when a row is selected, or whether the selected row is frozen.
  • Figures 26 and 27 show a portion of a screenshot of a market depth view, in a variant of the embodiment of Figures 13 to 16 in which the user has chosen not to use the tracking module but instead has chosen that selected rows be frozen.
  • the user is able to set up the application to their own personal preferences, and to trade in the way that they find most effective.
  • the further embodiment relates to the processing of trades after they have been placed.
  • Such post trade processing might typically be carried out in a middle office or back office environment.
  • a user would instead view a list of individual trades ordered, for instance, by trader name, company name, counterparty name, time of trade, trade size, or price.
  • the user selects one or more of the trades and then takes further action with regard to the one or more trades.
  • Such further action includes one of pulling the trade; amending the details of the trade; including one or more of the details of the trade in a further process such as a risk management, settlement, or audit process; or authorising settlement of the trade.
  • the trades in the list move, both individually (appearing, disappearing, and changing order) and as a whole (the whole list moving across a display).
  • the user selects and deselects trades by hovering a mouse cursor over particular areas of the display, and subsequently takes further actions by clicking on the mouse (although in variants, other user input devices and methods of selecting, deselecting, and carrying out further processes are used).
  • FIG. 28a, 28b, and 28c Another embodiment is described with respect to Figures 28a, 28b, and 28c.
  • Four movable elements, A, B, C, and D are shown displayed on a screen 4500 in each of Figure 28a, Figure 28b, and Figure 28c.
  • a cursor 4502 is also shown in each of the figures. The cursor 4502 is movable using a mouse (not shown).
  • Figures 28a, 28b, and 28c illustrate the movement of the movable elements and the cursor with time.
  • movable element A is selected by movement of the cursor to a position adjacent to movable element A. No further movement of the cursor using the mouse then occurs. However, after being selected, the movable elements move across the screen and the cursor follows the movement of movable element A, under control of a tracking module (such as that of the preferred embodiment), not under control of the mouse. The situation is then as shown in Figure 28b. It can be seen that movable element A is emboldened indicating that it is selected.
  • the tracking module Whilst a row is selected the tracking module monitors the movement of the selected row and ensures that the mouse pointer remains positioned over the selected row regardless of the movement of the selected row.
  • the reference to a 'sticky column' in the flowchart is to any column which causes a row to be selected when the mouse pointer is positioned over the column (for instance any of the Wrk, Bid, and Ask columns in the embodiments described with reference to Figures 13 to 17 for instance).
  • the tracking module will first consider whether the price column has moved up (which is the same as considering whether the selected row has moved up).
  • the tracking module considers whether, if the mouse pointer is made to follow the movement of the price column, the mouse pointer will move off the area of the screen in which the rows and columns are displayed (this is equivalent to considering whether the selected row has moved off that area of the screen).
  • the area of the screen in which the rows and columns are displayed is referred to as the quick trade screen.
  • the tracking module causes the mouse pointer to move up the number of pixels that make up a row, thus ensuring that the mouse pointer remains positioned over the selected row.
  • the Windows User Interface library of functions is used by the system to interact with a mouse controlled by a user, and the tracking module uses the SetCursorPos(x,y) function to change the position of the mouse cursor to move the mouse cursor in dependence upon the movement of a selected movable element, in particular a selected row or cell.
  • the SetCursorPos function moves the cursor to specified screen coordinates.
  • the system automatically adjusts the coordinates so that the cursor stays within the rectangle.
  • the new coordinates are not adjusted and the cursor moves outside the rectangle.
  • the rectangle is automatically resized so that the new coordinates fall within the new rectangle.
  • the parameter X specifies the new x-co-ordinate of the cursor, in screen coordinates.
  • the parameter Y specifies the new y-co-ordinate of the cursor, in screen coordinates.
  • the GetLastError function can be called. Usually, the cursor is a shared resource and a window should move the cursor only when the cursor is in its client area.
  • the calling process has WINSTA_WR1TEATTRIBUTES access to the window station.
  • SetCursorPos function in the preferred embodiment usually requires:- user32.dll as a minimum; a header declared in Winuser.h, including Windows.h; User32.1ib as the import library; and Windows 95 or Windows NT 3.1 or later operating systems.
  • the SetCursorPos function is typically used in conjunction with one or more of the following functions:- ClipCursor, GetCursorPos, SetCaretPos, SetCursor, ShowCursor.
  • nRow GetRowForPrice(m_lFloatingPrice) ;
  • ActiveX components are used by the system to interact with a mouse controlled by a user.
  • the ActiveX components enable the use of the same function calls, in this case SetCursorPos(x,y), as locally installed executables. ActiveX components that give functionality for mouse manipulation are currently available.
  • Mechanisms have been described above for assisting the user in keeping track of a desired or selected row and to ensure that trading instructions are submitted in relation to the intended row despite movement in the market display. This can be useful especially where trading instructions can be submitted by way of a single mouse click, so that mistakes could otherwise easily be made.
  • the mechanisms described include the tracking mechanism in which the mouse pointer is automatically moved to follow a selected row, and the freezing mechanism, in which a selected row remains static on the screen despite movement of other rows. Other mechanisms can also be used, and features of the mechanisms described may be combined freely.
  • Trading displays in which the price column or axis remains fixed and the inside market moves up and down the display in response to trading activity can have the advantage of reducing confusion due to movement of price levels and can also reduce the likelihood of trade orders accidentally being placed at the wrong price level.
  • a disadvantage is that the position of the inside market may not be immediately apparent, and may even move off the display.
  • the market display In the trading displays described herein, the market display generally displays the inside market at a pre-determined location, usually approximately at the centre of the screen or window. This gives the user clear and instant access to the most important market information.
  • the price axis moves up and down in response to trading activity (in some examples described above, only part of the price axis may move, e.g.
  • Mechanisms have been described which aim to alleviate the latter problem by ensuring that, once a price point has been selected, future trade orders are processed with respect to the selected price point, for example by freezing the relevant row on the display.
  • the scrolling of the price ladder to return the inside market to the central position is referred to herein as centring or re-centring the price ladder (or price axis or display).
  • the position to which the inside market is scrolled need not necessarily be the actual centre of the screen, display or window, but could be some other position (the user may for example select the display position at which the inside market should be shown); and references herein to a central position and to re-centring shall be interpreted accordingly.
  • An example of this re-centring process will now be described with reference to Figures 30a to 30c.
  • Figure 30a shows the market situation before movement of the inside market.
  • an upward movement of the inside market by four price ticks might lead directly to the situation shown in Figure 30c.
  • This sudden jump of the price axis could, as already mentioned, be disorienting and cause errors. Therefore, instead of moving directly to the display of Figure 30c, in the present example, the price axis initially remains static, with the inside market jumping to a position further up the display as shown in Figure 30b.
  • the price axis in this display has not yet moved and is identical to that of Figure 30a.
  • the position of the inside market is depicted by the highlighting of a relevant cell, in this case the highest bid price (alternatively, the lowest ask price could be highlighted), by displaying the cell using a lighter background colour.
  • the background colour in each of the bid and ask columns changes at the inside market, resulting in a clear visual demarcation.
  • a marker such as a line or arrow could be displayed overlaid on or adjacent the location of the inside market. This would then also be moved when the inside market first jumps.
  • the user interface After the display has been updated to reflect the change of the inside market, the user interface then begins to scroll the price axis down smoothly (in the direction of the arrow shown in Figure 30b), until arriving at the situation depicted in Figure 30c.
  • the same end result is therefore achieved, but the movement of the information, and in particular the price levels, is made obvious to the user, which can help to prevent mistakes.
  • the best bid/offer volumes i.e. the inside market
  • they may move up and down the display, they always end up centred in the middle of the display after a short while, which can assist the user in identifying the most important market information relatively quickly.
  • the information is scrolled smoothly on a pixel-by-pixel basis or in small scroll steps of a few pixels, rather than, for example, in row-by-row steps. In this way, the movement can be more effectively communicated to the user.
  • the speed of the scrolling movement of the price axis during re-centring is preferably user- definable, for example by way of a slider, or by selection of one of a number of defined speed settings. For example, “off, “slow”, “medium” and “fast” settings could be provided, with “off corresponding to no scrolling, and “slow”, “medium” and “fast” corresponding to scroll speeds of, say, 1, 1.5 and 2 rows per second respectively. If the re-centring / scrolling speed is set to zero or "off then the price axis is re-centred without scrolling (i.e. immediately / instantaneously). Alternatively, switching off scrolling could result in a fixed price axis display.
  • Scrolling at the correct speed can be achieved by calculating a time increment by dividing the scroll time by the number of pixels to be scrolled (e.g. 1 second divided by the number of pixels in a row for a 1 row/second speed), and then repeatedly scrolling the displayed price axis by 1 pixel at intervals defined by the time increment.
  • a different minimum step size could be used for scrolling.
  • the minimum step size could be defined as a proportion of the row height (which may itself be variable), rounded down or preferably up to the nearest whole number of pixels.
  • the minimum scroll step size is one eighth of a row height
  • the minimum step sizes for row heights of 16, 20 and 24 pixels may be 2, 3 and 3 pixels respectively.
  • the time interval would be calculated accordingly (i.e. for a scroll speed of 1 row/second with a row height of 16 pixels, the price axis could be scrolled by 2 pixels every one eighth of a second).
  • the speed of re-centring may be varied depending on the distance of movement of the inside market from the centre of the display - the further the rows in question have to move during the re-centring operation, the faster they are moved. For example, the speed may be adjusted so that re-centring takes a substantially constant amount of time regardless of the distance.
  • the user can specify the speed and behaviour of the re-centring process by way of a number of configuration parameters.
  • a Time parameter (for example, set as a value between 1 and 10 seconds) specifies the time that the user interface will take to re-centre the price ladder. This time limit may be independent of the distance of the inside market jump (i.e. the distance to be scrolled during re-centring), so that a larger jump (greater distance) would result in quicker movement, for example by increasing a scrolling step size.
  • a Frequency parameter may be used to specify the number of frames, movements or steps per second.
  • a higher frequency would typically mean smaller scrolling steps and hence a smoother scrolling effect but may be more processor-intensive.
  • the product of the Time and Frequency settings defines a maximum number of movements (scrolling steps) required to re-centre the price ladder (for example 5 steps per second for 3 seconds would result in a maximum of 15 scrolling steps).
  • the minimum possible scrolling step size is typically 1 pixel.
  • the frequency thus also determines the minimum number of pixels the ladder will be moved per second.
  • the above parameters may provide an upper bound, i.e. the user interface may in some examples (for example where the distance is very short) re-centre the price ladder more quickly.
  • the scroll speed may also vary during re-centring, for example starting faster nearer the edge of the display and gradually slowing as the inside market approaches the centre of the display (or vice versa) to achieve the desired visual effect.
  • an Acceleration or Deceleration parameter may be provided to specify that the scrolling should accelerate or decelerate as the central position is approached.
  • a Deceleration parameter could take values between 0 and 20 with a value of 0 defining a constant speed and all other values defining varying degrees of deceleration to be applied during scrolling, so that the re-centring slows down as the central position is approached.
  • the inside market moves by 5 ticks corresponding to 5 rows each having a row height of 16 pixels.
  • the total (maximum) number of scroll steps is 20, so that, at constant speed (zero deceleration) each step would be 4 pixels.
  • a deceleration setting of 1 may correspond to very light deceleration, in which the step size starts at 5 pixels (slightly faster than at the constant speed setting) and ends at 3 pixels (slightly slower than for constant speed).
  • Deceleration setting 5 may correspond to a normal deceleration which starts with 8 pixel steps and ends with 2 pixel steps.
  • a strong deceleration may be represented by a deceleration setting of 10, which starts with 12 pixel steps, with the last five steps being 1 -pixel steps. Deceleration settings greater than 10 could start with large initial steps (e.g. 20 pixels), with scrolling finishing in less than the maximum 20 steps.
  • a First Step parameter may also be provided (for example with a value range of 1-16) which corresponds to the number of pixels the price ladder is moved before the inside market is updated on the display. For example, for 16-pixel rows, a 4 pixel initial step could be specified. In this case, the price ladder is initially not static as described above. This aspect is described in more detail below in relation to the hybrid dynamic price ladder embodiment.
  • the user can disable scrolling (and hence re-centring) altogether if desired.
  • a screen shot of a configuration dialog box for setting the above parameters is shown in Figure 31 (including a check box with which scrolling can be selectively enabled and disabled).
  • a predefined set of deceleration options could be provided (e.g. selectable by way of radio buttons), for example “off corresponding to no deceleration and hence fixed scroll step sizes (e.g. 1 pixel), and “slow", “medium” and “fast” settings starting at, say, 5, 8 and 15 pixel step sizes respectively (for a 20 pixel row height) and decelerating to single pixel steps (or some other minimum step size such as an eighth of a row height as in the example above).
  • deceleration options e.g. selectable by way of radio buttons
  • the automatic re-centring of the inside market may be combined with the mouse tracking mechanism described above. In that case, if a row has been selected by hovering the mouse pointer over a relevant cell, and re-centring occurs following a change in the inside market, leading to movement of the selected row, then the user interface forces the mouse cursor to follow the selected row as it moves. In this way, the user can continue to issue trade orders at the selected price level during re-centring without needing to reposition the mouse pointer.
  • a time delay may be introduced between the original jump of the inside market and re-centring of the price axis.
  • the speed of movement during re-centring could also be adjusted automatically in response to market conditions, for example, in response to the rate at which market changes are occurring.
  • re-centring can operate more quickly to ensure that the user is not confused by excessive movement.
  • the user interface may allow the user to manually re-centre the display, for example by way of a dedicated button, or by dragging a marker associated with the inside market to a desired location to indicate where the inside market should be displayed (which need not be the actual centre of the window or screen as already mentioned).
  • a change in the inside market may be visually anticipated by commencing the re-centring movement of the price axis shortly before the display is updated to reflect the change in the inside market.
  • the re-centring movement would already have begun before the second row was highlighted to indicate the position of the inside market.
  • the user interface may enable the user to manually scroll the price axis, for example to re-centre the price axis where automatic re-centring is disabled, or simply to view information not currently being displayed. Where the user manually scrolls the price, axis and automatic re-centring is enabled, re-centring may operate (e.g after a suitable delay) to re-centre the inside market in the same way as described above.
  • a hybrid approach is used.
  • the display is adjusted so as to move the inside market to an intermediate position between the position to which it would move on a fixed price axis (as shown, for example, in Figure 30B) and the centred position.
  • This requires the price axis to be shifted in the direction opposite to the movement of the inside market so that the inside market appears at that intermediate position. In this way, though movement of the inside market still occurs, the extent of movement is reduced.
  • the initial shift of the price axis is preferably carried out in a single step, i.e. in the form of a sudden jump, before highlighting of the new inside market.
  • Re-centring of the price ladder (as described above in relation to the dampened price ladder embodiment) may then optionally be used to gradually scroll the inside market back to the centred position. Re-centring in that case would typically start from the intermediate position after the inside market shift (but could alternatively be commenced before the shift as already mentioned).
  • the inside market moves by a single row at a time.
  • the inside market may be moved up by part of a row's height (corresponding to a downward shift of the price axis by part of a row's height), after which (optionally) the inside market drifts back to the central position by way of the re-centring process.
  • the initial jump of the price axis may be fixed at part of a row's height. The initial jump can simply serve as a visual indication that a change has occurred without necessarily being related in distance to the extent of the change.
  • the price axis is moved down towards the inside market by half a row height and the (new) inside market is highlighted as normal.
  • the inside market is thus displayed half a row above its previous position but half a row below the position it would be displayed at if the price axis remained completely static. If used, the re-centring process then smoothly scrolls the inside market back do ⁇ Vn to the central position.
  • the distance by which the inside market or price axis is moved need not be half a row but could instead be, for example, a tenth, a quarter, a third, two thirds, three quarters or nine tenths of a row.
  • a distance of between half and three-quarters of a row height is preferred, preferably slightly more than half a row height, for example half a row height plus one pixel.
  • the re-centring process thus operates as before, except that part of the re-centring distance is skipped.
  • the distance skipped need not necessarily be half a row.
  • the distance skipped could be 8 pixels, 4 pixels, 2 pixels or even just a single pixel (smaller values might produce an effect similar to that described above as visually anticipating movement of the inside market).
  • the initial shift of the price axis may similarly be a proportion (such as a quarter, third, half, two thirds or three quarters) of the total distance that the inside market would move on a fixed price axis (or put another way, of the total distance to be traversed during re-centring). For example, in a four tick upward shift of the inside market (corresponding to a four-row leap on the display) the price axis may be shifted down by 2 rows, i.e. half the total distance.
  • the price axis could be shifted by a fixed amount regardless of the distance (on the price axis) by which the inside market moves. That fixed distance could, for example, be a part of a row as in the examples given above (e.g. a half-row), a single row, or multiple rows. Where rows are resizable, "fixed distance" may mean fixed with regard to the row size (i.e. changing with adjustment of the row size) or may mean an absolute distance such as a fixed screen distance (i.e. a fixed number of pixels, not changing in response to adjustment of the row size).
  • the price axis is always moved by half a row.
  • a movement of the inside market upwards by one tick results in the downward shift of the price axis by half a row.
  • the cell highlighting is then updated to reflect the changed position of the inside market. This corresponds to the above example and results in the inside market being displayed half a row above its previous location.
  • the inside market moves up by four ticks.
  • the price axis is first moved down by the fixed distance of half a row.
  • the new inside market is highlighted, and is now positioned three and a half rows above the previous (central) location.
  • the initial jump of the price axis (in this case by half a row) can help instantly convey the occurrence and direction of the market change to the user.
  • Re-centring is then preferably used as described above to automatically reposition the inside market.
  • the distance by which the price axis is scrolled is reduced by the distance of the initial jump (in the above example by half a row).
  • a one-tick inside market change results in a half-row initial jump followed by a half-row scroll of the price axis
  • a four-tick inside market change results in a half-row initial jump followed by a three and a half row scroll.
  • the scrolling which follows the initial jump may scroll some other distance, typically a distance greater than is required to return the inside market to its previous (central) location.
  • the distance scrolled is the full distance by which the inside market has changed; thus, in the above example, a one-tick inside market change produces the half-row initial jump of the price axis followed by the highlighting of the new inside market and then scrolling of the price axis by a full row.
  • a four-tick change in the inside market produces the half- row initial jump followed by scrolling of the price axis by four full rows.
  • this modified re- centring process actually overshoots the previous (or central) position of the inside .
  • This overshooting (which can occur in either direction) can help convey cumulative changes in the market over time: where the market remains relatively steady, successive upward and downward movements of the inside market will keep the inside market displayed approximately at the desired (central) display position, but where over time the market moves in a particular direction, the cumulative effect of the inside market overshooting its previous position on successive inside market changes will result in a slow drift of the display position of the inside market towards the edge of the display. For this reason, this overshooting feature is also referred to herein as "scroll drift", and it can help convey the general trend of market changes whilst keeping the display position of the inside market relatively steady in the short term.
  • the overshoot is preferably relatively small (usually less than a row), and preferably is of the same distance as the initial price axis jump, which can be achieved by always scrolling the price axis by a full number of rows after the initial jump.
  • the scroll drift feature can also be used without the initial price axis jump (for example with the dampened price ladder embodiment described above).
  • the interface may allow manual re-centring of the price axis, for example by way of a dedicated button, as already mentioned.
  • the initial jump of the price axis is fixed as a proportion of a row height, preferably of between half and three-quarters of a row height.
  • An initial jump of just over half a row is preferred.
  • the initial jump may be set as half a row height plus one pixel.
  • the initial jump may be fixed in an absolute sense or may be fixed with respect to a variable row height, i.e. changing in response to a change in the row height (for example as a result of the user zooming the display, resizing rows, changing display fonts or cell margins or the like).
  • the initial jump distance may be 11 pixels.
  • the price axis is then shifted by the initial jump distance of 11 pixels, and the new inside market is highlighted.
  • the price axis is then scrolled by a full row height of 20 pixels.
  • the inside market is then displayed below or above its previous position, and can slowly drift away from its preferred (central) position in response to successive inside market changes as already mentioned.
  • the scroll drift feature is preferably a user-selectable option. With the scroll drift option disabled, the initial 11 pixel jump would be followed by a scrolling of the price axis by 9 pixels (i.e. a single row height minus the initial jump distance), so that the total movement distance of the price axis is 20 pixels (one row height), resulting in the inside market returning (after movement) to its previous position.
  • This option thus corresponds to the automatically re-centred hybrid dynamic price ladder embodiment already described.
  • the re-centring process described above in its various variants combines the advantages of a fixed-priced axis with those of a centralised display of the inside market which requires a moving price axis.
  • the system provides a relatively high certainty that when a trade order is issued by clicking on a row the trade order will be issued in respect of the intended price level (since though the inside market can jump suddenly, price levels mostly move smoothly).
  • the user is always able to find the position of the inside market on the display very quickly (since this will usually be either at or visibly moving towards the centre of the display).
  • a process similar to the re-centring or dampening process may be used in combination with the freezing mechanism described above.
  • the price axis moves freely, with a selected row being frozen and displayed superimposed over the market information behind, as already described.
  • the frozen row after a certain delay period without interaction by the user, begins to move back towards the correct position (assuming the price axis has moved since the row was frozen), the correct position being the equivalent row in the moving price ladder displayed behind the frozen row.
  • the tracking mechanism described above could be used to force the mouse cursor to follow the frozen row as it moves towards the correct position in the price ladder.
  • the overlay is graphically clearly distinguished from the market depth display, and displays the price point and bid or offer quantity (or current working volume) of the relevant row.
  • This overlay is preferably in the form of a tooltip (as used, for example, by applications on the Microsoft
  • FIG 32 An example of a trading screen before selection of a row is shown in Figure 32.
  • the screen is similar to those described above, having a central price column and adjacent Bid, Offer and Work columns (amongst others).
  • a row can be selected by moving the mouse cursor over the Bid, Offer or Work columns.
  • Figure 33 when the mouse is moved over a cell in one of these columns (here the bid column at price 1225.50), the relevant price level is selected and a tooltip 5000 is displayed showing the price (1225.50) and volume (232) information for that row and column.
  • the tooltip is vertically aligned with the cell over which the mouse pointer is hovering.
  • the tooltip 5000 (here generated in response to the mouse hovering over the bid column at price level 1225.75) may be vertically positioned with respect to the position of the mouse pointer.
  • Horizontal alignment could similarly be determined by reference to the cell or to the mouse pointer. Alignment may also be based on a combination of the mouse pointer position and the cell.
  • the tooltip could be vertically aligned with the upper and lower cell boundaries (as in Figure 33), and horizontally aligned with (or positioned with respect to) the position of the mouse pointer.
  • the tooltip is substantially the same height as a row and is vertically, aligned with the upper and lower row boundaries of the row, but without being horizontally aligned with left- or right-hand boundaries of the row (though this could also be the case). Regardless of the alignment, however, the tooltip remains tied to the mouse pointer meaning that it does not move when the inside market changes and the price axis moves (thus the tracking mechanism is preferably not used in this example).
  • Figure 35 shows a tooltip (this time on the Offer column) relating to price level 1226.25. Since positioning of the mouse pointer to select that price level and display the tooltip, the price axis has moved down, but the tooltip remains displayed at its original position, and orders can still be placed at that price level without repositioning the mouse pointer.
  • the tooltip may move with the pointer or may instead remain static, with the mouse pointer moveable within the tooltip.
  • a trade order is submitted at the price point displayed in the tooltip using the currently applicable quantity (as set by the user) and other currently applicable trade rules/parameters. If the mouse cursor is moved outside the tooltip but within the same cell (assuming this has not moved) then the tooltip may be re-drawn at a new position (i.e. following the mouse cursor). If the mouse cursor is moved outside the tooltip to a different selectable cell, either in the same row or in a different row, then the tooltip changes (or is replaced with a new tooltip) to contain the price and volume for the new cell or row. The volume displayed in the tooltip is preferably updated as the market information changes. Where the mouse cursor is hovered over a Work column cell, the tooltip shows the contents of that cell together with the price, and clicking on the tooltip performs a relevant action such as reducing or cancelling a bid or offer volume at that price level.
  • the tooltip disappears if the mouse pointer is moved away from the selectable cells.
  • the tooltip could also be used with columns other than the Bid, Offer and Work columns, with information relevant to the given column being displayed in the tooltip.
  • the user may drag-and-drop entries in the Work column from one row to another (by pressing down the mouse button on the entry or cell, moving the mouse within the Work column to a new row and releasing the mouse button).
  • the interface may continue to display the tooltip over the original cell until the mouse button is released and then optionally redisplay the tooltip for the new cell.
  • the tooltip may move with the mouse pointer to the new cell, optionally being updated to reflect the contents of any cells it passes or hovers over (or at least being updated on release of the mouse button).
  • the tooltip is designed to appear visually distinct so that it is clear that the information displayed is not part of the main price ladder.
  • the tooltip will be displayed as a box having a dark outline and a background colour distinct from those used for the different areas of the price ladder (as shown in Figures 33 to 35).
  • the tooltip (or the tooltip background) may have a translucent appearance so that data displayed underneath remains at least partially visible.
  • the tooltip may also be justified depending on the column over which the mouse pointer is located; in the present example, hovering the mouse cursor over the bid column produces a tooltip positioned (mostly) to the left of the mouse cursor ( Figure 33), whereas positioning the mouse cursor over a cell in the offer column results in a tooltip positioned (mostly) to the right of the mouse cursor ( Figure 35). In this way, less of the market information is obscured.
  • a translucent tooltip may be used with the information displayed in an outside portion, so that the information does not obscure the price ladder behind.
  • the tooltip is displayed (mostly) to the right of the mouse cursor, and the price and volume values are centre- or right- justified within the (sufficiently wide) tooltip so that no information is obscured.
  • only the relevant portion of the tooltip or its background need be translucent (though in the example shown, the entire background of the tooltip is translucent).
  • the opacity of the tooltip may be set by the user, for example using a slider. This can allow the user to adjust the opacity in dependence on their own particular display settings (for example colour and font settings) to ensure both the tooltip and the information in the price ladder can be clearly seen.
  • the tooltip preferably stays visible until the user moves the mouse away from the tooltip and/or away from the relevant cell, and a trade order can be entered by clicking anywhere within the tooltip area.
  • the user may select options relating to the display of the tooltip, such as the alignment and display colour of the tooltip and may be able to turn the tooltip feature on or off.
  • Figure 36 shows a similar screen but with the tooltip feature disabled - instead, the selected row is highlighted (here in grey), and the mouse tracking mechanism ("sticky mouse") could instead be used.
  • the highlighting of the selected row could be combined with the display of the tooltip to enable the user to quickly identify the row to which the tooltip relates (since this may move).
  • the tooltip is not displayed immediately when a row is selected by positioning of the mouse pointer, but only if the selected row moves due to market changes. This can again prevent the user accidentally clicking on the wrong row; to issue a trade order, the user can then click on the tooltip as before.
  • a custom mouse cursor could be used to display the relevant information.
  • the normal arrow-shaped cursor could be replaced with a graphical element similar to the tooltip displaying the relevant information as soon as the mouse cursor moves to a selectable cell. If the user moves the mouse within the selectable columns, then the information displayed in the custom cursor changes depending on the cell over which the mouse cursor is positioned. If the user moves the mouse cursor away from the relevant columns, then the mouse cursor reverts to the conventional arrow icon.
  • Figure 37 shows an example of an options dialog box 5100 for setting various options relating to the operation of the trading screen and the tooltip feature.
  • the dialog allows the selection of the highlighting mechanism (by way of option group 5102 "Trading Style") from a number of options, including “Sticky mouse” (the mouse tracking mechanism already described) and "Order tooltip".
  • option group 5102 “Trading Style”
  • options including “Sticky mouse” (the mouse tracking mechanism already described) and "Order tooltip”.
  • the tooltip functionality has been selected, and a number of further options are available:
  • Order Tooltip Align For specifying how the tooltip should be aligned with respect to the mouse pointer. Alignment can be configured individually for each column by selecting the column to be configured in drop-down box 5110 (here, the Bid column is selected) and then selecting the required alignment using a 3-by-3 grid of buttons 5112. The grid positions correspond to possible alignments; thus, by activating a button in the left-hand, middle or right-hand column of the grid, left-alignment, centred alignment or right-alignment of the tooltip with respect to the mouse pointer are respectively selected.
  • the vertical alignment of the tooltip with respect to the mouse pointer is configured analogously.
  • the tooltip can be set to be vertically aligned with the relevant cell (and not the mouse pointer) by checking box 5114 ("Middle Of Original Cell").
  • the grid 5112 preferably changes to show only one row of three buttons for configuring only the horizontal alignment with reference to the mouse pointer (as shown in Figure 38). Vertical alignment would then be determined based on the position of the selected row as shown, for example, in Figure 33.
  • the tooltip is set to be centrally aligned with respect to the mouse pointer in the vertical direction, and horizontally left-aligned.
  • the options relating to the tooltip feature e.g. opacity setting.5106 and alignment settings 5108) would typically not be displayed or would be greyed out if a different trading style was selected in option group 5102. Other relevant settings could then instead be displayed.
  • the tooltip feature can be combined with other mechanisms described above, such as the dampened price ladder (automatic re-centring) and hybrid dynamic price ladder embodiments described above.
  • Figure 38 shows a variant of the options dialog of Figure 37 which includes further options relating to the scrolling performed to re-centre the price ladder in those embodiments.
  • the dialog 5100 includes a speed setting 5120 ("Smooth Scroll”) for setting the scroll speed (or switching off re-centring altogether) and an acceleration / deceleration setting 5122 for configuring the acceleration / deceleration behaviour as described above.
  • a check box 5124
  • Scroll drift is provided to allow the user to enable or disable the scroll drift feature (described above). Where scrolling is disabled by selecting "Off in the speed setting 5120, the other related settings such as acceleration / deceleration setting 5122 and scroll drift 5124 are preferably greyed-out as they are then not relevant.
  • the information is displayed in a separate display area of the screen which does not interfere with the market display.
  • that row becomes selected and its data (e.g. price and volume) are copied to this separate display area. Movement of the price axis does not cause the information to change, and the mouse cursor is preferably also forced to follow that movement using the tracking mechanism described above. In this case, when deciding to issue a trade order, the user would be focusing not directly on the price ladder, but instead on this separate display area.
  • the pricing information displayed in this separate display area is visually linked to the relevant (selected) row in the price ladder, for example by using a connecting line. As the price axis moves, the line is continuously re-drawn so that it remains connected to the selected row. This makes it easy for the user to find the selected price level in the moving price ladder.
  • the user's delayed reaction time to movement of the price axis may mean that the user clicks to issue a trade order in respect of a certain row when that row has in fact already moved. This could lead to an incorrect trade order being entered into the system. This problem can be alleviated in a number of ways.
  • a delay mechanism is provided.
  • the system maintains a delay period time setting describing the user's reaction time (this may be set by the user). If a mouse click occurs within the set time period after the mouse pointer has left a given row due to movement of the row (that is to say, the row moves so that the pointer is now over a different row with a different price level), then the system issues a trade order not at the actual price at which the mouse cursor is now positioned but at the previous price. This preferably only applies if the row is moved due to movement of the price axis, not if the user moves the mouse pointer.
  • the delay period is preferably at least 5ms, more preferably at least 10ms or at least 25ms.
  • the delay period may be 50ms or more or even 100ms or 250ms or more.
  • the delay period is preferably no more than 1 second and typically no more than half a second. More preferably, the delay period is no more than 250ms or no more than 100ms or 50ms.
  • the delayed reaction feature can be switched off by the user, for example by setting the delay period to zero.
  • the delay period can preferably be set in milliseconds with a default value, for example, of 10 or 20 milliseconds.
  • the above delay mechanism can prevent a trade order being issued at the wrong price level if the market information suddenly starts moving just as the user is about to issue a trade order. Whilst the price ladder is moving (e.g. re-centring) it is less likely that the user will click on the wrong row; though if they do click just on the edge of a row as the display moves to the next row, then this delayed reaction time should mean that the order is issued at the correct price level.
  • the selected row may be "grown" by half of a row height (or some other distance) in the direction opposite to the movement of the price axis. This may occur before movement of the price axis or simultaneously. Other rows' heights may be reduced correspondingly. Subsequently, the selected row's height is decreased from the other direction (for example when arriving at the final position). The row is thus first stretched and then contracted (providing a morphing effect), with the expansion providing an extra time period to accommodate the user's delayed reaction time.
  • the exact degree of expansion will depend on the movement speed of the price ladder and the estimated reaction time of the user and is selected so that the expansion is sufficient to catch any delayed reaction trade orders.
  • the morphing effect can be combined with the re-centring process (e.g. the dampened price ladder) and/or tracking mechanism described above.
  • freezing of a selected row occurs as already described.
  • the movement of a cursor by the user can have the following effects:
  • the mouse cursor is moved by the user interface not to the row adjacent to the frozen row but to the row adjacent (in the relevant direction) to the live version of the frozen row (where the price axis has moved since the row was frozen).
  • the new row may then become the selected row and may be frozen.
  • 'live version' is meant the row having the same price level as the frozen row in the moving price ladder. This approach can enable efficient movement around the price ladder in a fast-moving market.
  • variants of the mouse tracking or frozen row mechanisms may be combined with the re- centring price axis, dampened price ladder or hybrid dynamic price ladder embodiments described above.
  • scroll wheel this may be used to enhance the user interface functionality in many of the above variants.
  • movement of the scroll wheel up or down may move the mouse pointer or the selection in the market depth display up or down a row.
  • the scroll wheel could be used to scroll the market display up or down. In that case, once the user stops using the scroll wheel (e.g. after a short delay), the system may re-centre the price ladder so that the inside market returns to the centre of the screen, preferably by smooth scrolling as described above.
  • the scroll wheel could be used to adjust quantity values up or down while the mouse is hovered over a bid or ask cell. The selected quantity would be displayed separately. Clicking the mouse on that cell would then issue a trade order at the selected price point using the selected quantity.
  • the quantity value may be increased or decreased in units or intervals (say, of five or ten units). The interval may be selectable.
  • Figure 39 shows a trading screen similar to that of Figure 33, with a tooltip being displayed in relation to a selected row. Additional user interface elements are provided for performing actions such as setting a default trading volume, pulling all bids and/or offers and the like.
  • Figure 40 shows a trading screen for use in scalping.
  • scalping refers to the placing of bids or offers at exactly one price tick better than the current market price.
  • a large button 5202 is displayed at the centre of the price axis at the position of the inside market, with offer and bid data displayed respectively above and below the button.
  • clicking on the button places either a bid or offer trade order at one price tick lower or higher than the inside market (with the currently set default volume).
  • the inside market and hence the scalping button
  • the mouse tracking mechanism could be used to follow the scalping button if it does move, and variants of the re-centring process could be used to return the inside market and scalping button to the central position after a movement.
  • Other mechanisms and features described above could similarly be integrated into the scalping screen, the main difference between this and the previously described trading screens being that here, orders can only be placed in respect of specific price levels (i.e.
  • the scalping button and functionality can, however, be combined with the functionality of other described trading screens to enable both scalping and normal trading as described above from a single screen.
  • the scalping screen shown again includes a variety of other user interface features, including a group of numbered buttons 5204 for setting the default trading volume and a "Single Click" button 5206 for switching between single click mode (in which trade orders at default volume can be placed by clicking on a relevant cell, as in the various embodiments described herein) and another mode in which trade orders are manually specified, e.g. via a separate window or dialog box.
  • the various user interface features shown in Figures 39 and 40 may be integrated into any of the trading screens described above.
  • any of the functionality described herein may be performed on a single computer, on a client or server computer or elsewhere in a distributed system or may be distributed across such a system as is appropriate to a given implementation.
  • the above description of the system architecture is purely by way of example.
  • the trading screen 2504 and trading application program 2512 may operate at a user's (trader's) client terminal or may be separated across a network connection.

Abstract

L'invention concerne un procédé de traitement de données de marché relatives au commerce lors d'un échange commercial électronique. Ledit procédé consiste à engendrer dynamiquement, en réponse à des données de marché reçues d'une interface connectée à l'échange, un affichage d'information de marché présentant une pluralité d'entrées liées à des niveaux de prix sur un axe de prix, et à déplacer les entrées sur l'affichage en réponse aux changements des données de marché, ce qui permet à un utilisateur de sélectionner une entrée en positionnant un pointeur au-dessus d'une zone de sélection associée à l'entrée au moyen d'un dispositif d'entrée, en réponse à la sélection d'une entrée produisant un élément d'affichage (5000) qui renferme des informations liées à l'entrée. L'élément d'affichage est superposé sur l'affichage à l'emplacement du pointeur et, en réponse à une autre entrée d'utilisateur reçue, alors que le pointeur est placé au-dessus de l'élément d'affichage. Puis, le procédé consiste à réaliser une opération commerciale en rapport avec l'entrée sélectionnée.
EP05801605A 2004-11-10 2005-11-10 Systeme de vente Withdrawn EP1825326A1 (fr)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
GB0424850A GB0424850D0 (en) 2004-11-10 2004-11-10 Trading system
GB0505551A GB0505551D0 (en) 2004-11-10 2005-03-17 Trading system
GB0515201A GB0515201D0 (en) 2004-11-10 2005-07-22 Trading system
GB0517177A GB2420197A (en) 2004-11-10 2005-08-22 A trading system
PCT/GB2005/004326 WO2006051293A1 (fr) 2004-11-10 2005-11-10 Systeme de vente

Publications (1)

Publication Number Publication Date
EP1825326A1 true EP1825326A1 (fr) 2007-08-29

Family

ID=36336247

Family Applications (1)

Application Number Title Priority Date Filing Date
EP05801605A Withdrawn EP1825326A1 (fr) 2004-11-10 2005-11-10 Systeme de vente

Country Status (2)

Country Link
EP (1) EP1825326A1 (fr)
WO (1) WO2006051293A1 (fr)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1782378A4 (fr) * 2004-07-29 2008-04-09 Espeed Inc Systemes et procedes pour fournir des axes de prix dynamiques
US10102579B2 (en) 2015-07-16 2018-10-16 Chicago Mercantile Exchange Inc. Facilitation of deterministic interaction with a dynamically changing transaction processing environment
CN109816363A (zh) * 2017-11-21 2019-05-28 富泰华工业(深圳)有限公司 存储介质、商品交易信息的处理装置及方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6772132B1 (en) * 2000-03-02 2004-08-03 Trading Technologies International, Inc. Click based trading with intuitive grid display of market depth
US7047502B2 (en) * 2001-09-24 2006-05-16 Ask Jeeves, Inc. Methods and apparatus for mouse-over preview of contextually relevant information

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2006051293A1 *

Also Published As

Publication number Publication date
WO2006051293A1 (fr) 2006-05-18

Similar Documents

Publication Publication Date Title
JP6330079B2 (ja) 動的価格軸を提供するためのシステムおよび方法
US7805355B2 (en) Graphical user interface to facilitate rapid and reliable electronic trading assessment and execution
US8601391B2 (en) Dynamic functionality based on window characteristics
US7693780B2 (en) Trading system and method having a configurable market depth tool with dynamic price axis
US9619839B2 (en) Systems and methods for viewing and trading futures
US20060129474A1 (en) Electronic trading system
US20130339215A1 (en) Dynamic price axes in featured user interfaces
EP1853974A2 (fr) Systeme de transaction assorti d'un outil de sondage du marche avec axe de prix dynamique
GB2420197A (en) A trading system
WO2006051293A1 (fr) Systeme de vente
JP2013532861A (ja) 市場注文情報を表示し注文を発注する方法
WO2007103856A2 (fr) Systeme et procede commercial ayant un outil de sondage du marche configurable avec axe de prix dynamique

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20070611

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC NL PL PT RO SE SI SK TR

DAX Request for extension of the european patent (deleted)
17Q First examination report despatched

Effective date: 20080723

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20081203