AU2017200063B2 - Method and apparatus for motion based target prediction and interaction - Google Patents
Method and apparatus for motion based target prediction and interaction Download PDFInfo
- Publication number
- AU2017200063B2 AU2017200063B2 AU2017200063A AU2017200063A AU2017200063B2 AU 2017200063 B2 AU2017200063 B2 AU 2017200063B2 AU 2017200063 A AU2017200063 A AU 2017200063A AU 2017200063 A AU2017200063 A AU 2017200063A AU 2017200063 B2 AU2017200063 B2 AU 2017200063B2
- Authority
- AU
- Australia
- Prior art keywords
- order
- cursor
- target element
- target
- prediction
- 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.)
- Ceased
Links
- 230000033001 locomotion Effects 0.000 title claims abstract description 100
- 230000003993 interaction Effects 0.000 title claims abstract description 11
- 238000000034 method Methods 0.000 title claims description 105
- 230000000977 initiatory effect Effects 0.000 claims description 3
- 230000009471 action Effects 0.000 abstract description 94
- 238000004891 communication Methods 0.000 description 23
- 230000006854 communication Effects 0.000 description 23
- 238000012545 processing Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 19
- 206010012289 Dementia Diseases 0.000 description 15
- 241000699666 Mus <mouse, genus> Species 0.000 description 13
- 230000006870 function Effects 0.000 description 10
- 230000000007 visual effect Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 230000008859 change Effects 0.000 description 7
- 238000012790 confirmation Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 229910052729 chemical element Inorganic materials 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000013479 data entry Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- BUAJNGPDPGKBGV-UHFFFAOYSA-N 1-(1-phenylcyclohexyl)piperidin-1-ium;chloride Chemical compound [Cl-].C1CCCC[NH+]1C1(C=2C=CC=CC=2)CCCCC1 BUAJNGPDPGKBGV-UHFFFAOYSA-N 0.000 description 1
- LISQPVFOWSYUMT-UHFFFAOYSA-N BOOB Chemical compound BOOB LISQPVFOWSYUMT-UHFFFAOYSA-N 0.000 description 1
- 229910052684 Cerium Inorganic materials 0.000 description 1
- 241000282994 Cervidae Species 0.000 description 1
- 101100328463 Mus musculus Cmya5 gene Proteins 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 241001282736 Oriens Species 0.000 description 1
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 1
- 244000046052 Phaseolus vulgaris Species 0.000 description 1
- 206010041235 Snoring Diseases 0.000 description 1
- 241000534944 Thia Species 0.000 description 1
- ATJFFYVFTNAWJD-UHFFFAOYSA-N Tin Chemical compound [Sn] ATJFFYVFTNAWJD-UHFFFAOYSA-N 0.000 description 1
- RTAQQCXQSZGOHL-UHFFFAOYSA-N Titanium Chemical compound [Ti] RTAQQCXQSZGOHL-UHFFFAOYSA-N 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 235000000332 black box Nutrition 0.000 description 1
- 239000004568 cement Substances 0.000 description 1
- GWXLDORMOJMVQZ-UHFFFAOYSA-N cerium Chemical compound [Ce] GWXLDORMOJMVQZ-UHFFFAOYSA-N 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 230000000881 depressing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000001404 mediated effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- KRTSDMXIXPKRQR-AATRIKPKSA-N monocrotophos Chemical compound CNC(=O)\C=C(/C)OP(=O)(OC)OC KRTSDMXIXPKRQR-AATRIKPKSA-N 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
Landscapes
- User Interface Of Digital Computer (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
Embodiments ihr motion based target prediction and interaction are described herein. One example embodiment includes predicting a target element based on a user moving a cursor in relation to a trading interface. When a target element is identified, one or more actions may be pre-configured based on the target element. For example, when a target element is associated with a buy action and a price, an order message to buy a tradeable object at the price may be generated based on the predicted target element. Then, a user action may be received to select the target element and to execute the action. The user action selecting the target element may be received prior to the cursor reaching the desired target. -48 Cursor 106 Movement Prediction Component Display Component Action 108 Estimate Component User Input Device Component
Description
2017200063 05 Jan 2017
ABSTRACT
Embodiments for motion based target prediction and interaction are described herein. One example embodiment includes predicting a target element based on a user moving a cursor in relation to a trading interface. When a target element is identified, one or more actions may be pre-configured based on the target element. For example,· when a target element is associated with a buy action and a price, an order message to buy a tradeable object at the price maybe generated based on the predicted target element. Then, a user action may be received to select the target element and to execute the action. The user action selecting the target element may he received prior to the cursor reaching foe desired target.
- 48 1/11
2017200063 05 Jan 2017
100 \
FIG. 1
2017200063 05 Jan 2017
METHOD AND APPARATUS FOR MOTION BASED TARGET
PREDICTION ANO INTERACTION
SPWVEW (IWI] A number of inventions «re disclosed herein dm ere directed towards motion based target prediction and interaction. .More specifically, a number of inventions Are directed to setting or ummutmg a plurality of parameters, such as feeds order parameters, using movement prediction techniques applied io relation to a user input device and a graphical user interface.
SAfiKSSOO [00O2J An electronic trading system includes an electronic matching system lor tradable items, such as stocks, options, and commodities,, The electronic trading system often includes an electronic exchange to perform the order matching. The electronic exchange Also provides market data and trade confirmation bate, among other things, to subscribing trading devices. By way of illustration, an electronic exchange in derivatives trading is the CME® Globe,electronic trading platform, which is offered by the Chicago Mercantile Exchange Group; though the inventions described herein are not limited to derivatives trading.
(0003J To trade m an electronic trading system, a person (commonly a trader- uses a trading device to receive and electronically process data fiont the electronic exchange. The trading device generally outputs the information to the person via cue or more display screens. The person may also interact with the computer and the information using an input device, such ns a mouse or keyboard or both. Regardless of the actual user input device being used, a cursor, also referred to ns a pointer, is displayed on a screen. In relation to graphical user interfeoes, a cursor is a visible and moving object or pointer that a user may control with an input device. In relation fo a trading interface, a user may move the cursor to a desired selection area on tbs trading interface and enter a keystroke input at the selection area to set various trade order parameters and/or to perform other actions, such as, for example, to generate a command to send a trade order to an electronic exchange.
|O0(M] The success of a trade? who trades in a competitive electronic trading environment depends on many factors. One of tbs factors is how fest a tradin' can make a trade, The faster and more frexihie a trader can trade, the less likely it will be that the trader will miss the
2017200063 05 Jan 2017 trader’s price and more likely the trader will make money. This is especially true when a first-in, firet-ont matching method is used at an electronic exchange, where tire speed at which an order is sent to and reaches the electronic exchange often detennines whether the order will be matched. Because the success and profitability of a trader depends on speed, if is desirable to offer tools feat can assist the trader in making trades as quickly as possible and at the best possible prices.
~ 2 ....
(0005] The following will bo better understood by a person skilled in the- aii when read in copjuncoon with the figures which show various example embodiments. The tiguras ere for the purpose of illustratingexample systems <w1 methods according to certain embodiments, but it is understood that the various inveotions, described herein, are not limited to foe arrangements and instr«mentality shown in ths figures,
2017200063 05 Jan 2017
[0000] Figure 1 is a block diagram of a system that can be used to perform various embodiments described herein;
[06071 Figure 2 is a block diagram of a system that can be used to provide an order message to an electronic exchange;
[BOOB] Figure 3 is a block di agram illustrating an example linear corsor track prediction [0000] Figure 4 is a block diagram illustrating an example angular change cursor track prediction method in relation to an example interface;
(0010( Figure S is a flowchart Illustrating an operation cf certain embodmracts described herein;
[0011] Figure 6 is a block diagram illustrating an example trading system for employing [0612} Figure 7 illustrates an example trading interface for trading an item in an electronic trading system in which certain embodiments of cursor track prediction may be [0013] Figure 8 is a flowchart illustrating an operation of certain embodiments described herein;
[0014] Figure p illustrates one example trading interface for trading an item in an electronic trading system in which multiple track prediction targets are involved;
[0015] Figure 10 illustrates an example trading interface for trading an item in an electronic trading system using a plurality of region sets; and [0016} Figure ί 1 illustrate another example trading interface using a plurality of regions extending beyond the trading interface.
2017200063 05 Jan 2017
-4aw a number of inventions described herein that relate to systems and interacting with user-seteetable targets on a graphic;
2017200063 05 Jan 2017
WTAILO-DESCRIPTION specifically, various cursor movmncm prediction methods are used to predict one or more selectable targets and to allow a user interaction with the predicted target prior to a cursor cf a user input device reaching a desired target.
[0010] to the context of electronic trading, the success of a trader often depends on how fast s tender may respond to various changing market conditions and how feo, toe muter can enter and send a trade order. Even w action as simple as moving a cursor on the screen to a target location css take as much as 500 to WOO milliseconds. Any teelutigue that can reduce thia time by even 10-100 milliseconds will actually make a difference to the trader m terms of success and profitability. as the trader will be able to have his order at an electronic exchange fester than other traders. The embodiments described herein take into consideration the importance cf speed and allow a trader to enter orders quickly and efficiently, fOftWj As will be described in greater detail below, 'when a cursor of a user input device is being repositioned in relation to a graphical user interface, a user is making an intentional spatial action moving the cursor from one locations be,, a start point, to a goal location, i.e,, a target point, According to the embodiments described herein, one or more possible target points or elements are determined by tracking the cursor* s location, trajectory, movement direction, speed andtor acceleration as a cursor is bring moved by a user mput device ia relation to a graphical user interface. As the target elements ere identified, a user may internet with the target elements prior to a cursor of a user input device reaching the desired element The user interaction may involve selecting a desired target element and/or performing a certain action associated with the desired target element.
(0020J Additionally, prediction data may be used to preset one or more parameters associated with one or more events or actions to bo performed upon selecting a predicted target element. For example, when the example cursor tracking prediction methods are used ia relation to a trading interface, one or more trade related messages may be generated prior to a cursor reaching a desired target location on the trading interface. The generated messages may include one or more trade order parameters determined based on the predicted _____ S
2017200063 05 Jan 2017 target locations. Then, one or more actions of a user input device, such as selecting a desired target location at the time when a cursor is positioned over the desired target location or prior to reaching the desired target location, may send one of the pre-generated trade related messages to an electronic exchange.
[0021] As will he described in greater detail below, a user may interact with one or more potential target locations feat are determined using cursor prediction methods when, a pointer of a user input device reaches the potential target location. Alternatively, a user may interact with a potential target location before a pointer of a user input device reaches the target, in such an embodiment, one or more actions or events associated with the potential target may be initiated before the potential target is selected by a user.
[0032] Before explaining any further, it is worth noting again that the various inventions are not limited in their application to the details of design and the arrangement of the components set forth in the following description or illustrated in the drawings. The inventions are capable of other embodiments or of being practiced or carried out in various ways.
I. Smsle Sgten [0023] Figure 1 is a block diagram of a system 100 that can be used to perform various methods described herein. The system 100 includes a cursor movement prediction component 102, an action estimate component 104, a display component 106, and a user input device component 108.
[00241 display component 106 is in communication with the cursor movement prediction component 102. the action estimate component 104, and die user input device component 108. According to one example embodiment, the components 102-108 may he part of a client device. An example client device is a desktop computer or a server computer. According to another example embodiment, some components may he part of a client device, while others may be located at a different device in communication with the client device, [0025] The display component 106 displays, on a display screen of a computer, a graphical user interface. The display screen could he a conventional display (CRT, LCD, OLED, electronic paper, etc.) or a projection display. Alternatively, the display screen may
... g ..
2017200063 05 Jan 2017 include a display or» a head-moonted device, augmented reality device, or a mediated reality device. Further alternatively, a plurality of different displays cook! be used, some of which having display elements superimposed on other elements. The graphical user in terface nay include one or more user interface elements, such as locations, areas, icons, or buttons that are selectable by a user with a cursor of a user input device position over a desired user interface element Alternatively, using the cursor prediction methods described below, a user interface element may he selected prior to a cursor reaching the user interface element- In some embodiments, a user interface element may he associated with a specific location or area of an interface. Additionally, a user interface element may take a format of a ballon or an. icon that is displayed on a user foterfece and that is selectable by a user input device.
(0036] In some embodiments, a user interface element allows a user to trigger sn event or confirm an action, for example, Uses' interface elements nay have different sizes nr shapes. For example, a user interface element may he rectangular, round, rounded, triangular, or yet of any other shape. If so programmes!, A user may select a user interface element using the user input device component 108. The user input device component, 108 may include a physical input device, a device driver, and software program tor handling user inputs and providing It to an application pro^am. For example, a user interface element may fee selected by positioning a curaor of the user interface over the target element and clicking it with a cursor controlled by a mouse device, A cursor may be controlled by mouse, keyboard, hnokball, or some other user input device, It should be understood that other Inputs such as a keystroke could also be used to execute a function of a user interface element. 11 should be understood that more than on© pointing device could also be used (e.g., two mice, or two cursors for a touch screen interface), each with us own cursor. Using cursor prediction methods described in greater detail below, a use? can interact with a target user interface element by clicking white still outride fee location or area corresponding to the target element In such an embodiment, a visual indicator can be wed in relation to a predicted forget element to indica- e the predicted target element feat can be selected by a user.
|0S27| A user interface element may require a user m simply press down on a mouse button to execute fee function, click only once to execute the function, or fee user interface element may require two or more clicks to execute fee function (e.g., a double click). It should be understood feat ofeet inputs, such as a keystroke, could also be used to select a
2017200063 05 Jan 2017 desired user interface element and to execute a function associated with die selected element Thus, it should be understood that selecting a user interface element or clicking on a user interface dement refers to any act of selection, and can include any of a mouse down action only, a single click of a mouse button, a double-click of a mouse button, a key press on a keyboard, or a combination of inputs, and so on. In some embodiments, selecting a user interface element sends a command to the program and/or computer to execute (or initiate) a predetermined function. A user interface element might also indicate on the display screen when it has been selected, [0028) The cursor movement prediction component 102 may predict a target interface element using one or more cursor track prediction methods. While certain cursor track prediction methods will be desorbed below, it should be understood that other existing or future cursor track prediction methods could be used as well by the cursor movement prediction component 102. Some example track prediction methods include: linear prediction methods, angular change prediction methods, or prediction methods which use historical data, such as simple order linear prediction models, linear regression models, Bayesian models, or Hidden Markov Models. Additionally, track prediction methods could use velocities and accelerations of a moving cursor to determine a target element on an interface. Prediction models which use such information include Kalman filters, also known as Linear Quadratic Estimation (“LQE”) filters. Additionally, some prediction models, such as Kalman filters, may use various estimates of statistical characteristics of noise involved in position measurements. In relation to the cursor track prediction methods, the noise may correspond to imprecision and local errors by a user operating a user input device.
[0029J The cursor movement prediction component 102 may also use additional methods separately or in combination with various prediction models, such as the ones described above. For example, one additional method may use information about user’s individual history' of cursor motion tracks. Such a method could employ one or more data mining techniques applied to motion tracks in order to make predictions for future motions, including, In certain embodiments, eventual target selection. It should be understood that the cursor movement prediction component 102 could use any number of independent motion prediction methods in parallel. Additionally, as will be described in greater detail below, a probability or likelihood of selection could be assigned to various predictions. In such an „ g...
2017200063 05 Jan 2017 embodiment, one or more prediction targets could he eliminated teem the predicted set when a threshold of selection for the targets reaches a. predetermined level |003®l When used in relation to a trading environment, fhe cursor movement prediction component 102 could also use trade related data or market related data in making cursor motion predictions. Additionally, market movement or product trading history could be used as well to add or eliminate certain predicted targets.
[0031] As mentioned earlier, the cursor movement prediction component 102 could also include logic that assigns probability of selection factor to various target elements. The probability factors may then he used to eliminate certain target elements. Different methods could be used to reduce the number of possible target elements.
[032] Additionally, it should be understood that the cursor track prediction component 102 can exam me every position or substantially every position of the cursor as if moves. Alternatively, the cursor’s position can be evaluated periodically, or can be event driven where fhe cursor movement prediction component. 102 receives update events from, fhe user input device component 108 on changes of tire cursor’s positioning. It should be understood that the user input device component 10S can rise receive queries from the cursor movement prediction component 102 uud the display component 106 to provide updates on changes of the cursor’s positioning.
[0033] Referring back to Figure 1, the action estimate component I04 may use the prediction data provided by fhe cursor movement prediction component 102 to prepare for nr to take certain actions based on predicted target elements. It should be understood that the component 104 may fee configured to dynamically update any action estimations or actions to be taken based on the prediction data updates. When used in relation to a trading interface, the action estimate component 104 may pre-generate order messages with a plurality of trade order parameters determined based on target prediction data. As will be described in greater detail below, certain regions of a trading interface may be. associated with a distinct value for one or more order parameters. When a cursor of a user rapid device moves, the prediction component 102 determines a predicted track of the cursor. The predicted track may intersect a region on a trading interface that is associated with a specific value for a particular order parameter. When the selection cursor moves, n is possible to make one nr more new
2017200063 05 Jan 2017 predictions of a future cursor track. If the predicted track intersects a different region, then the order parameter may he changed to reflect the new prediction. When the cursor actually enters a particular region which is associated with a particular value of a particular order parameter, the action estimate component 104 may suspend the parameter update process, as the proper order parameter value! s) might have already been pre-set. Various other embodiments for selecting desired regions and setting order parameters will be described in greater detail below, [0034] It should he understood that various values of certain state variables, such as variables associated with commands or actions taken when a user input action is made by a user, could he preset based on predicted target elements in advance of the user input action to issue or execute the application command or action. When the example embodiments are used in an electronic trading environment, various trade order parameters could be preset based on predicted target elements on an interface. Example trade order parameters may define an order as a buy order or a sell order, and may also include an order type, such as a limit order, a stop order1, etc., an order price, an order quantity, and many other parameters.
As the trade order parameters are pre-set based on tire predicted targets, the action estimate component 104 may also generate trade order messages including the pre-set parameters. For example, if a predicted trade order parameter is for an order to buy associated with a specific price and quantity, the action estimate component 104 may generate a trade order message including the price and the quantity for a buy order. Different parameters could also be preset in the order message, [0035] As mentioned above, the action estimate component 104 could also prepare for certain actions to be taken based on one or more predicted target elements on un interface.
For example, a trading interface may include a selection icon that allows a trader to cancel all of bis working orders at an electronic exchange. If such a selection icon is predicted to be a possible target, the action taking component 104 may pre-generate a transaction message including a request to cancel all working orders. According to another1 example, if a predicted target includes a icon that can be activated to modify a display of the trading screen, such as to re-position market information displayed on the trading screen, the action taking component 104 may initiate the process of modifying the trading screen prior to a cursor reaching the target icon. According to one example embodiment, tire action taking
- 10 . .
component 104 may initiate an action associated with a target icon upon identifying the target icon and detecting a. predetermined user input that occurs prior to a cursor reaching the target icon. Various embodiments tor initiating actions prior to the cursor reaching a desired
2017200063 05 Jan 2017 [0036j As explained above. the action estimate component 104 may prepare order related messages prior to a cursor reaching a target element based on prediction data provided by the cursor movement prediction component 102. in an alternative embodiment, all valid order related messages for all valid prices and order parameters, as well as order related action messages, such as order cancelations, may be prepared in advance. For example, all possible pre-generated messages may be stored in a database. Then, prediction date may be used as a pointer to select specific messages in the database, Regardless of how and when various messages are generated in the example embodiments, a user may also inrarac- with a target element prior so a cursor of a user input device reaching the target element (@037] In addition to preparing one or more order related messages or order related actions in advance based on prediction date, additional steps may be taken to allow a desired message to reach m exchange even fester. Figure 2 is a block diagram of a system 200 that cun be used to provide an order message to art electronic exchange. While Figure 2 is described in relation to a trading environment, it should be understood that the example embodiments could also be used in different technical environments, 'toe system 200 irsohrdes an application programs element 202 and a gating element 204, The application program element 202 may prepare an otdes message to be sent to as electronic exchange. According to one example embodiment, order messages may be prepared using the movement prediction methods described herein; however, various other messages not using the movement prediction methods could be prepared as well. Once an order message is prepared, the application program element 202 prov-des the prepared order message to the gating element 20«.
[@@3S] When toe application program element 202 prepares an order message, toe message is typically funhet precessed before it is placed onto the physical communications medium. The processing of the message may involve getting toe message into toe operating system°s protocol stack, a device driver for a network adapter, and then tore -he network adapter itself before the message is put on the wire, or onto the physical com muni cations
.... h -2017200063 05 Jan 2017 medi um. All these steps may take additional time. According to tire embodiment of Figure 2S the gating element 204 is located at one or more elements inside the process flow between the application program and the physical communications medium. When the application program element 202 prepares one or more messages, the application program element 202 pushes the message onto the gating element 204 as if a user had already takes as actios to send the prepared message. Once the gating element 204 receives the prepared message! s), the gating element 204 may store the received messages). The gating elemexS 204 may then release the stored message^) onto the physical communications medium upon detecting a certain signal from the application program element 202. The signal may be generated by the application program element 202 upon defecting a user initiated action or a computer initiated action to send the stored mesaage(s) and/or to cancel incorrect predictions. Using such, an embodiment, processing of the message(s) may be finished ahead of time, thus shortening the time of one or more messages reaching as electronic exchange.
[003$] It should be understood that the gating element 204 could be located at any element between the application program and foe physical communication medium. For example, the gating element 204 may be located anywhere within the protocol stack, at a network adapter, within the operating system’s device driver for the network adapter, or within a module of the operating system's software that communicates with the device driver. T he gating element 204 could also be located further along the network path between a client device and an exchange, such as at a gateway or yet a different network device. In such an embodiment, the application program element 202 may provide signals to the gating element 204 to release and/or cancel one or more pre-stored messages at the gating element 204. The signaling operation may be provided via a trading network or another network designated for signaling purposes. Further, alternatively, the gating element 204 may be located at or near an electronic exchange. In such an embodiment, one or more orders may be held at the gating element 204 for later execution when signaled by a trader. It should be understood that each order to be held at the gating element 204 may include an Identifier that indicates that a predefined signal is required to release the order from the gating element 204. In such an embodiment, when a signal is generated by the application program element 202 or yet some other component, the signal may include an Identifier of an order to be released. Different embodiment for providing a signal to release a prepared order or to identify one or more orders could also be used.
..., π 2017200063 05 Jan 2017
[08401 Figure 3 is a block diagram 300 illustrating an example linear cursor track prediction method applied in relation to an example interface. As shown in Figure 3. % cursor 302 is positioned in relation to an interface 304 having two regions 30o and 308. Each region has a number of selectable elements, such as a target element (UTA’S) 310 m the fitja region
new location tL2s;). A simple linear prediction .method based on the two locations may be need to generate a prediction back mdkated with a dotted line 314, fe should be understood that the interface 300 may be configured to display the prediction track such as the dotted line 314, Various other indicators could be used as well. As shown in Figure 3, the prediction track 314 intersects the first region 306 at the location of the first target element 310. Then, if the prediction trank 314 is extended to the second region 308, it intersects the second region 308 at the location corresponding to the second target dement 312, According to one example embodiment, fins first target element 310 may be associated with a first parameter and/or a first action, white the second target element 312 may he associated with a second parameter and/or a srcond action.
[0041] It should be understood that if an interface includes multiple regions, with each region having a selectable element that is intersected by a prediction track, such as shown in Figure 3, one example medsod may take into consideration all target elements that are intersected by the prediction track. In such an embodiment, when a user intends to take an action in relation to one of the predicted target elements prior to the cursor reaching that element, the user may indicate a desired target element with a specific user input, such as by selecting a key on a keyboard, or by depressing one of the mouse buttons. Alternatively, rather titan analyzing all target elements In multiple region, one example method may take certain actions based on a target element of the region that is intersected first by a prediction track, such as the element 310 m the first region 306 of Figure 3, while not taking into consideration target elements m other reg-ons tira; could be also intersected by the prediction track, such as the element 312 in die second region 308, Fmtiter, alternatively, all possible messages may be pre-generated ahead of time, as explained above, and cursor prediction» data
--13
2017200063 05 Jan 2017 may be used to select and/or eliminate specific messages. Various other embodiments are possible as welt
100421 As the cursor is being moved In relation to the interface 304 along the prediction track 314, the interface 300 may be configured to provide a graphical indicator in relation to one or both target elements. According to one example embodiment, the graphical indicator may be displayed in many different formats. For example, a target element determined based on a prediction track may be color-coded or shaded. According to another example embodiment a target element may be indicated by al tering the display of a plurality of other elements on the mterfece 304. For example, all areas of the interface could be graphically changed except for the indicated target element!s). In such an embodiment, the target elements may have their original appearance, while the remaining portions of the interface may be graphically modified. However, different indicators could also be used.
[0043] Figure 4 is a block diagram 400 illustrating another example embodiment of a cursor track prediction method that uses a cursor’s angular change to determine one or more possible target elements. As shown in Figure 4, a cursor 402 is positioned in relation to an interface 404, At time %the cursor 402 is shown at a first location (“Lf’J. Then, subsequently, at ‘V’ and “t3,” the cursor 402 is repositioned by a user input device to a second location (“L2”) and a third location (“Lj”), respectively. The first linear prediction could generate the first prediction target Ta, and the second linear prediction could generate the second prediction target Tc. As shown in Figure 4, the simple linear prediction from Li to L2 forms an angle (“Θ) with the simple linear prediction from L® to Lj. According to one example embodiment, the angular change between the two predictions may be used to generate a different track prediction, which is at the same angle (“Θ”) ss the linear prediction from U to La, The predicted target generated using such a method is shown at TD. A variant of this method could generate multiple prediction targets, e.g.. the tar gets from the previous two linear predictions (Ta and Tc), the target from the second prediction. (To), and all potential targets in between, such as a target Ts.
[0044] As explained above, various other track prediction methods could also be used. It should be understood that the example embodiments described herein are not limited to any specific cursor track prediction method, and any track prediction methods could be combined as well.
.,, 142017200063 05 Jan 2017
ΠΙ Example Track Prediction and foie-action Method [taMdj Figure S is a flowchart 500 illustrating an operation of curtain embodiments described herein. The flowchart 500 shows the functionality and operet-on of certain embodiments, fa this regard, each block may be implemented alone or in combination in various forms of hardware, firmware, or as & set of instructions in software, for example. Certain embodiments may be provided as a set of instructions residing on a computer readable medium, such as a memory, hard disk, CD-ROM, DVD, or EPROM, for execution on a computer or other processing device. Alternative implementations are included within the scope of the example embodiments of in which functions may be executed out of order from that shown in flowchart 500 or discussed, including substantially concurrent or in reverse order, depending oo the functionality involved, as would be understood by those [StMti] At step 502, a user begins movement of a cursor in relation to a graphical user interface including one or more selectable dements. At step 504, based on tu cursor's movement, an initial target prediction is made. As discussed above, the initial target prediction may include a single target element or multiple target elements. At step 506, a visual indicator is provided in relation to each predicted target «dement, As discussed herein, various methods could be used to visually nriicate the predicted target elements. In addition to graphically md-catiug tbs prediction targets, a prediction track could fee displayed as 'wall. At step SOS. one or more aetirms/pammeters may be taketapreconftgured based on fee identified target element. For example, if & target element is associated with a certain action to he taken, such as sending a message with one or more parameters, the message may he pre-generated upon klenfificution of tine target element. Alternatively, as explained above, all ahead of time and stored in a database. In such an embodimrat, the prediction data could be used to point to or select specific pro-generated messages, Further, alternatively, one or more actions may be taken based on a prediction data upon detecting a predetermined user input prior to a cursor of a user m.put device reaching a desired target dement. For example, upon detecting a predetermined action, one or more messages may be generated based on the prediction data. Further, altonudivcly; upon ldGrstiiyin.g a target element, a price for an order ™ 15 2017200063 05 Jan 2017 may be set based on the identified target element. Then, another action may be used to generate an order message with the identified price.
[0047] It should be understood that the example embodiments described herein are not limited to using prediction data in relation to trading interfaces, and could be applied in various other environments as welt For example, when the methods are used in relation to menu interfaces, a target element may be associated with, a drop-down menu, and selection of the target element may result in a display of the drop down menu having a number of' selectable elements. In such an embodiment, various actions associated with the number of selectable elements on the drop-down menu may be pre-configured before the target element is selected, [0048] At step 510, it is determined if a user interaction is detected in relation to one of the target elements. As explained earlier, according to one example embodiment, a user may interact with predicted target elements prior to a cursor reaching a desired target element. For example, a user may enter a predetermined input to select a desired target element prior to the cursor reaching that element, If the user interaction is detected, at step 512, one or more actions maybe taken based on the target element selected by a user, such as sending a pregenerated order message to an electronic exchange. If there is no user interaction with one of the predicted target elements, a user may continue the cursor movement, and tbs method continues at 504 when, new target predictions may be made as the cursor is moved by tire user In relation to the interface, [0049] According to one embodiment, a movement prediction mode may be provided to allow a user to activate and dc-aotivate the movement prediction methods described herein. The movement prediction mode maybe activated upon detecting a predetermined user action, such as, a predetermined user input, such as holding down a key, or detecting a cursor of a user input device in a specific area of a graphical user interface, A user could exit the movement, prediction mode upon taking another predetermined action. Alternatively, Ac movement prediction mode may be disabled upon expiration of a preset time period combined with another event, such as a user not moving a cursor during the preset time period. It should be understood that some other action, or a combination of different actions, could be used to activate and deactivate the movement prediction mode.
- 162017200063 05 Jan 2017 f(H150] When a user enters the movement prediction mode, various actions may be initiated to select a target. One or more user initiated actions, such ns a mouse-eliek, may be devoted solely to taking actions baaed on the predicted target el orien t, and not based on any other element of an interface fee mouse cursor may be actually over at the time of the action, i<e.} mouse-click It should be undemtood that one or more other selection methods could be used as well.
[0051] While the example embodiments below are directed to trading interfaces, it should he understood that the example various methods described herein are not limited to a trading environment. The example methods eould be applied In other environments that involve using one or more graphical user· interfaces.
tv
BxffiVpte Blecripuie Trading Syptom [0052] Figure 6 is a block diagram illustrating an example system 600 lor employing certain embodiments described herein. System 600 Includes a trading device 602 and an electronic exchange 60S, The system 600 may also include a gateway device 604 and a server side device 606, According io the example of Figure 6» the trading device 602 is in communication with fee gateway 604, which is in communication wife fee electronic [0053] Before elaborating on system 600, it Is understood that fee components described in Figure 1 may be implemented at one or more blocks described in Figure 6, For example, fee trialing device 602 might implement all of the components 1.02,104, and 106 described in each implement one or more components of system 100, That is, it is understood that a particular device 602,604.606, and 608 might implement all of system 100, just a portion of system 100. or a modified versson of system 100. Also, it should be understood feat more than one trading device could also be used by a user. In such an embodiment, one trading device may implement a portion of the system in Figure 1, while another trading devi ce may implement another portion. For example, a display component eould be implemented on a • I? 2017200063 05 Jan 2017 different trading device from the trading device implementing the cursor movement prediction or action estimate.
[0054] In operation to trade, the trading device 602 may be used to send orders to buy or sell tradable objects at foe exchange 608. The orders are seat through the gateway 604 to foe exchange 608. In addition, market data is sent from the exchange 608 through the gateway 604 to the trading device 602, The trading device 602 may also be used to monitor this market data and base a decision to send an order for a tradable object on foe market data.
[0055] The trading device 602 may include one or more electronic computing platforms such as a hand-held device, laptop, desktop computer, workstation with a single nr multi-core processor, server with multiple processors, and/or cluster' of computers, for example.
[0056] lire trading device 602 may include one or more trading, applications. The trading applieation(s) may, for example, process market data by arranging and displaying tire market data in trading and charting windows, fins processing may be based on user preferences, for example. By way of illustration, the trading device 602 may be a computing system running a copy of X. TRADER™, an electronic trading platform provided by Trading, Technologies International, Inc. of Chicago, Illinois.
[0057] The trading device 602 may include an electronic trading workstation, a portable trading device, an algorithmic trading or “black-box” system, an embedded trading system, and/or an automated trading tool, for example. The trading application^) may include an automated trading tool such as an automated spread trading tool, for example.
[6058] The trading device 602 may be adapted to send orders to buy or sell tradable objects. The trading device 602 may also be adapted to cancel orders, change orders, and/or query an exchange, for example.
[0659] The orders sent by the trading device 602 may be sent at foe request from a user or automatically, for example. For example, a trader may utilize an electronic trading workstation to place an order for a particular tradable object, where the order includes various parameters, such as an order price and/or quantity. As another example, an automated trading tool may calculate one or more parameters for an order and automatically send foe order. In some instances, an automated trading tool may prepare the order to be sent but not .· 18 actually send ri without confirmation from the user. Order parameters may also he
2017200063 05 Jan 2017
10666] Jn certain embodimmfo, the trading device 602 includes a user interface. The user interface may melude one or mere display devices for presenting a text-based or graphical interface of a trading application to a user, for example. For example, the display devices may include computer monitors, hand-held device displays, projectors, and/or televisions.
The user interface may be used by the user to specify or review parameters for an order using a trading application. The user interface may include one or more input devices for receiving input from a user. For example, the input devices may include a keyboards trackball, two or three-button mouse, and/or touch screen. The user interface may include other devices for interacting with a user. For example, information may he aurally provided to a user through a [0661] In certain embodiments, foe orders from the trading device 662 are sent to foe exchange 608 through the gateway 604. The trading device 602 may communicate with the gateway 604 using a local area network, a wide area network, a virtual pro ate network, a Tl [0062] The gateway 604 is adapted to communicate with foe trading device 602 and the exchange 608, The gateway 604 facilitates communication between the trading device 602 and the exchange 60S. For example, the gateway 604 may receive orders from the trading device 602 and transmit the orders to the exchange 608, As another example, foe gateway 604 may receive market data from the exchange 60S and transmit fee market data to the [0063] to cerium embodiments, foe gateway 604 performs processing on data communicated between the trading device 602 and foe exchange 608, For example, foe gatew ay 604 may process an order received from the trading device 662 into e data format acceptable by the exchange 608, Similarly, foe gateway 604 may transform market data in an exchange-specific format received from the exchange 60k into a format understood by the trading device 602, The processing performed by the gateway 664 may also include tracking orders from the trading device 602 and updating the status of the order based on fill confinuations received from fee «change 608, for example. As another example, the
-192017200063 05 Jan 2017 gateway 604 may coalesce market data from the exchange 608 and provide it to the trading device 602.
10064) In certain embodiments, the gateway 604 provides services other than processing data communicated between foe trading device 602 and foe exchange 608. For example, foe gateway 604 may provide risk processing. Likewise, server side device 606 may provide simitar risk processing as gateway 604, [0065] The gateway 604 may include one or more electronic computing platforms such as a hand-held device, laptop, desktop computer, workstation with a single or multi-core processor, server with multiple processors, and/or cluster of computers, for example. Serverside device 606 may include a similar computer platform as gateway 604, [0066] The gateway 604 may include one or more gateway applications. The gateway application(s) may, for example, handle order processing and market data processing. This processing may be based on user preferences, for example.
[0067] In certain embodiments, the gateway 604 communicates with foe exchange 608 using a local area network, a wide area network, a virtual private network, a Ti line, a T3 line, an ISDN line, a point-of-presence, and/or foe Internet, for example, [0068] The exchange 608 is adapted to match orders to buy and sell tradable objects. The tradable objects may be listed for trading by the exchange 608. The orders may include orders received from the trading device 602, for example. Orders may be received from foe trading device 602 through the gateway 604, for example. In addition, foe orders may be received from other devices in communication with the exchange 608. That is, typically foe exchange 608 will be in communication with a variety of other trading devices (which may be similar to trading device 602) that also provide orders to be matched.
[0069] As described above, foe exchange 608 is adapted to provide market data. The market data may be provided directly to foe trading device 602, for example. The market data may be provided to the trading device 602 through foe gateway 604, .for example. The market data may include data that represents foe Inside market, for example. The inside market is the lowest sell price (also referred to as the “best ask”) and the highest buy price (also referred to as the “best bid”) at a particular point in time, lie market data may also include market depth. Market depth refers to the quantities available at the inside market and may also refer to quantities available at other prices away from the inside market. Thus, the inside market may be considered the first level of market depth. One tick away from the inside market may be considered the second level of market depth, for example, la certain embodiments, market depth Is provided for all price levels. In certain embodiments, market
2017200063 05 Jan 2017 market data may also include information such as the last traded price (LTP), the last traded quantity (LTQ). and order Kl! information.
[OOW'j In certain embodiments, the system 600 includes more than one trading device 602, For example, multiple trading devices similar to the trading device 602, discussed above, may be in communication with tire gateway 604 to send orders to the exchange 608.
[007! I In certain embodiments, the system 600 includes mom than one gateway 604. For example, multiple gateways similar to the gateway 604, discussed above, may be in communication with tire trading device 602 and the exchange 608, Such an arrangement may ire used to provide redundancy should one gateway 604 fail, for example.
[0072] In certain embodiments, the system 600 includes mom than one exchange 608.
For example, the gateway 604 may be in communication with multiple exchanges similar to the exchange 608, discussed above. Such an anyngemeoi may allow the trading device 602 to trade at more than one exchange ihrough the gateway 604, for example, [6673] In certain embodiment, the trading device 602 includes one or more comparing devices or processing components, In other words, the fcnetmualify of the trading device 602 may be performed by more than one computing device. For example, one computing device may generate orders to be sent to the exchange 608 while another computing device may provide a graphical user interface to a trader. In. certain embodiments, fee gateway 604 includes one or more computing devices or processing components. In other words, fee functionality of the gateway 604 may be performed by more than one computing device. In certain. embodiments, fee exchange 60S includes one or more computing devices or processing components. in other words, fee functionality of fee exchange 608 may be performed by more than one computing device.
— 21
2017200063 05 Jan 2017 [0074] In certain embodiments, the gateway 604 is part of the trading device 602. For example, the components of the gateway 604 may be part of the same computing platform as the trading device 602, As another example, the functionality of the gateway 604 inay be performed by components of the trading device 602. In certain embodiments, the gateway 604 is not present. Such an arrangement may occur when the trading device 602 does not need to utilize the gateway 604 to communicate with the exchange 608, for example. For example, the trading device 602 maybe adapted to communicate directly with the exchange 608.
[00751 In certain embodiments, the gateway 604 is physically located at the same site as the trading device 602. In certain embodiments, the gateway 604 is physically located at the same site as the exchange 608, in certain embodiments, the trading device 602 is physically located at foe same site as the exchange 608. In certain embodiments, the gateway 604 is physically located at a site separate from both the trading device 602 and the exchange 608.
[0076| Wliile not shown for the sake of clarity, in certain embodiments, the system 600 may include other devices that are specific to the communications architecture such as middleware, firewalls, hubs, switches, routers, exchange-specific communication equipment, modems, security managers, and/or mcayption/decryption devices.
V, Example Cursor Prediction Methods in relation to a Trading interface [00771 Figure 7 illustrates an example trading interface 700 for trading a tradeable object in an electronic trading system in which certain embodiments of cursor track prediction may be employed. The trading interface 700 includes a price column 702, a bid quantity column 704, an ask quantity column 706, and a last traded pries column 708 for the tradeable object. The price column 702 includes price levels (or values based on price). The bid quantity column 704 includes bid quantity indicators. The ask quantity column 706 includes ask quantity indicators. The bid quantity indicators and ask quantity indicators are aligned with the corresponding price level of the price column 702, The inside market 710 includes the best bid price and the best ask price. The last traded price column includes a last traded price indicator 712 that moves relative to the price levels along the price column 702, it should be understood that various other indicators could be provided as well.
2017200063 05 Jan 2017 (W7S] Figure 7 shows two positions for a selection cursor 714, Using a simple cursor tack prediction method, a prediction tack lias 716 is projected fe the direction of the movement, extending until it intersects with a specific region from a region set on the trading interface 700, According to one example embodiment, the first intersected region has one or more particular values for one or more order parameter values, fe the example linear eureer track prediction model shown in Figure 7, a target element 718 is intersected by the prediction track line 716 in fee hid quantity column 704, [0075] As explained above, once the prediction target is determined, the interface 700 may display fee prediction trade tine 716 to indicate the current prediction target to a user. While Figure 7 shows a line, it should be understood that various mechanisms could be used to visually indicate fee current prediction targets, For example, a line or curve could have a particular style, such color, weight, sclid/dottod/dashed, wife or without Ifee-begm and lineaid symbols such as arrows. Additionally, fee prediction track line could be displayed and continuously updated according to tire current prediction target set Also, more than one prediction tine could be displayed as well Additionally, depending on fee type of the movement prediction algorithm used, a movement prediction indicator could include the entire prediction trajectory (not just a target), and the mo cement prediction indicator could be different than a line. For example, a “prediction curve” could he provided representing the predicted trajectory from the enmor position to the predicted targets), it should he understood that the prediction track could have various other shapes depending on a specific movement prediction algorithm being used as well as the cursor movement.
[0OSOJ According to another example embodiment, a visual indicator may be «sad in relation to a target element For example, a target element could be color-coded. Alternatively, a shading pattern could be used in relation to an area corresponding to a target element. As shown In Figure 7, an. outline is drawn around a cell corresponding to fee predicted target 718. It should be understood feat any number of visual emphasis or indicators could be used depending on visual attributes essndsted with target elements. Additionally, as explained above, fee visual emphasis of a target clement could be accomplished by changing fee visual appearance of some or ail other elements of an interface.
2017200063 05 Jan 2017 [0081j As mentioned earlier, when the cursor 714 moves, one or more predictions of target elements are made, such as the element 71S in the hid quantity colmnn 704. Based on the predicted target elements, one or more trade order parameters are preset for a trade order to be potentially sent to an electronic exchange. Based on the embodiment illustrated in. Figure 7, an order message for a buy order may he pre-generated based on the predicted target element 718, with a preset trade order price of “89” corresponding to the target element, and a default quantity predefined for the bid order region 704, According to another example embodiment, ail possible messages may be generated ahead of time and stored in a main memory, a database, or a different storage medium. Then, prediction data may be used as a pointer to select specific messages from the database. As the cursor moves, the order parameters may be dynamically updated, or new m essages may be selected, io reflect new target elements. When the cursor actually enters a particular region which is associated with a particular order parameter value, the process of the hack prediction/parameler update may be suspended, as the proper order parameter value(s) have been already pre-set, Thus, a parameter prediction process is based on a track history relative to the interface geometry.
[0082} While the embodiment of Figure 7 illustrates a cursor prediction method that results in a single prediction target, some cursor prediction methods, as described above, may generate multiple possible prediction targets, where each predicted target corresponds to a prepared order message which contains values for one or more order parameters. According to one example embodiment, multiple prediction targets may be associated with a probability value or a likelihood of selecting a particular target. When the probability of selecting a possible target is low, such & target may be removed from foe set. Tims, as the cursor track prediction method operates, there is a set of possible orders, each completely specified in terms of its order parameters, and ready to be sent to an electronic exchange. In such an embodiment, as the cursor gradually approaches one particular target element, there are fewer target predictions, and hence fewer prepared orders in the set. Eventually, there could be a single target element in the target prediction set based on the cursor’s track or history of movement.
[00831 According to one example embodiment, as the cursor track prediction process runs, it can dynamically and continuously update parameter values for orders in a prediction set, and appropriately add or remove prepared orders from the prediction set. Such an
-24 embodiment may be applied when multiple orders are prepared in advance, with each order associated with a probability of selection value. In such an mrbfxhment, some orders may be removed from ihe set as foe probability of selection value falls Mow a predefined threshold.
Alternatively, parameter values in the prediction set may be updated only when there is a change in the prediction. In such an embodiment, orders may fee added or removed from a
2017200063 05 Jan 2017 [0084] Purfoer, according to yet another example embodiment, market data displayed in relation to a hading interface may be automatically or manually repositioned, tor example, to keep the inside market or yet some other item of interest substantially at the center, or at a desired location, on the trading interface. In such an embodiment, assuming that an info al target prediction is made prior to any repositioning, a fixed association may be created between a prediction track and one or more predicted target elements, Then, if the market date Is repositioned aft» the prediction is made, foe predicted target elements may remain ihe same until a user moves a cursor again and away from foe predicted target, for example. To further assist a user, the cursor aa well as the indication of the prediction track may be repositioned in relation to the finding interlace as the market data Is feeing repositioned on the trading interlace Difrerenf embodiments are possible as wall.
[0085] Figure 8 is a flowchart 800 illustrating an operation of certain embodiments described herein, The frowohafi 800 shows foe functionality and operation of certain embodiments. In this regard, each block may fee implemented alone or in combination In various forms of hardware, firmware, or as a set of instructions in software, for example. Certain embodiments may be provided as a set of instructions residing on a computer readable medium, such as a memory, hard disk, CD-ROM, DVD, or EPROM, for execution on a computer or other processing device. Alternative implementations are included w-thin foe scope of the example embodiments of the present invention in which functions may be executed out of order from that shown in flowchart 800 or discussed, including substantially concurrent or in revese order, depending on foe functionality involved, as would be [0086] At step 802, a user begins movement cf a cursor, ii should be understood that there could fee a triggering action to enter the mode of target prediction tracking described herein. In such an embodiment, another action may be configured to exit the prediction
2017200063 05 Jan 2017 tracking mode, the execution of which may terminate the process described in Figure 8.
Additionally, it should be understood that when more than one interface is displayed, the target prediction tracking described herein may be enabled in relation to one or more interfaces, while it may be disabled in relation to others.
[0087] As a user begins movement of a cursor, at step 804, an initial set of cursor target predictions is made. Based on the discussion above, the initial set of predictions could include a single prediction target element or several possible prediction target elements.
When more than one target element is identified, each target element may he assigned a likelihood or probability of selection· As explained above, once the prediction target elements are determined, a number of visual mechanisms could be used to indicate the current prediction targets to a user.
[0088] Al sfeP 806, for each predicted target element, an order message is prepared with order parameters having values corresponding to the current defaults or values associated with each respective target element. For example, a default order quantity may be set for any order that is sent, while each target dement may he associated with a specific order price and/or specific action (buy/sell). As mentioned above, order messages may be generated in advance. In such an embodiment, prediction data may be used to point to and select specific messages corresponding to the predicted target elcment(s). An order message may also include an order cancellation message when a predicted target element includes a working order indicator or yd some other indicator associated with an order cancelation action.
[0089] As the user continues to move the cursor at 808, the method S00 updates the prediction targets, as shown at 810. As explained above, updating may involve removing a possible cursor target from a set of predicted cursor targets, while adding new targets. A cursor target maybe removed from the set when, for example, the probability' or likelihood of a user targeting that location has dropped below a certain threshold value. Different embodiments could be used as well. As the cursor prediction targets are updated, the method updates/adjusts the set of prepared order messages, as shown at 812. For example, orders may be removed from an order set when a particular cursor target, is removed from the prediction set. Similarly, orders may be created and added to the set when a new target element is added to the prediction set It should be understood that the process of the user
- 26 moving the cursor and the method of updating cursor prediction targets and the prepared /xw/SiMW ^s.^x<4,Ajt>n-SxΛΚ n.r* jiii M-tttti «·»ΓΜ<ί·ϊ» co ImjivM ^ A^tivSAiawt $·Μ>ZA iii'CAWLAV X? Ϊ. .¾ «‘.A'to S?/\i5
2017200063 05 Jan 2017 |0090] The flowchart 800 shows three example embodiments relating to how and when a user can send so order. According to one embodiment, at 8Hg a user may take an order send action to send a particular order, as shown at 322, before the cursor gets to the target. Au example of an order send action could be one or more clicks of a user input device, such ns a click· of n mouse button. In such an example embodiment, the order· associated with the closest predicted target would be §em. It should be understood that the cursor may or may not enter the actual order entry region to send the order associated with the psedioted target.
According to another example embodiment that ! δ·ΛΛ> ·ό«ι ΛΛ i A. S’ J 3Λ* 5¾ .£6? f \'e * Γ user could click u different button of a moose to send an order associated with the next closest predicted target (e.g,, along «predicted line or motion track).
|0®91] According to another example embodiment, a computer generated action may be detected, as shown at 816 (while tn cursor prediction mode), to send the previously prepared order, as shown a? 824. it should he understood that the order parameters for the sent orders may he prepared in advance to the cursor entering the region using the cursor track prediction methods described herein.
[0092] In another example embodiment, an order entry region is entered, as shown at 818. A? this point, the prediction set may include a single prediction target with a single order message in the prediction act. In another alternative embodiment, the prediction set may include a number of prediction targets further along or nearby a predicted motion hack. Subsequently, a user may take an order send action, us shown at 820, to send one or more previously prepared orders to an electronic exchange, as shown at 82b. In such an embodiment, a user could indicate which of the orders should be sent by faking another user action teat selects a specific target dement.
[0O93| in yet another dement, once target elements are identified, one or more actions to be taken based on the- target dements may be displayed via another interface that allows a user to select a desired action. For example, the interface coaid display and dynamically update order messages teat may be sent based on tire identified target elements, In such an embodiment, tire interface could allow a user to select and to send a desired message, For example, the interface could be displayed in relation to a moving cursor. A user could also activate and deactivate the display of the interface in relation to the cursor Further, according to yet another embodiment, rather than executing a desired action upon receiving a predetermined input, a confirmation window could he provided to allow a user confirm foe action to be taken, such as to confirm a message to he sent to an electronic exchange.
2017200063 05 Jan 2017 [0094] As explained above, many different motion prediction algorithms could be used. While some of the algorithms may identify a single motion track, they may lead to having multiple predicted cursor targets, each somewhere along the predicted motion track, depending on the layout of an interface. Other motion prediction algorithms could determine the likelihood or probability of multiple different motion tracks, each of which having a plurality of associated cursor targets, such as explained in relation to Figure 4.
f0095] Figure 9 illustrates one example trading interface 900 for trading an item in an electronic trading system in which multiple track prediction targets are involved. According to the example embodiment of Figure 9, multiple regions may be associated with distinct values for one or more order parameters defined for each respective region. In such an embodiment, a user action may set a value for one more order parameters of prepared orders based on a selection of a specific region. Alternatively, in foe embodiment where many orders are preconfigured ahead of time, target prediction data in combination with the region selection may be used to select certain preconfigured orders, As will he described in greater detail below, a user action, such as a predetermined input, may select a desired region. Alternatively, cursor movement, such as when a cursor crosses a region, may select a desired region, [0096] Figure 9 illustrates a region set including two regions 902 and 904 associated with distinct values for the order parameter “BUY” vs. “SELL.” The regions 902 and 904 are overlaid directly over foe trading interface 900. However, ii should be understood that the size of the regions 902 and 904 can vary' bused on user configuration. For example, each column of the trading interface 900 could be associated with a different region. Further, alternatively, une or more regions could he defined outside the boundaries of foe trading interface, as wifi be described in greater detail below. Additionally, foe region boundaries
- 282017200063 05 Jan 2017 could not eoinekle with the natural boundaries of any use? i?dcrface dement. For example, they eould contain more area than just the interface element, [OOf 7] It should be understood that (he regions may be invisible to a user, or (hey may be shown vis a visual indication while a cursor is being repositioned in relation to the Interface 900. Alternatively, a user may activate and deactivate various regions, based on the user’s preferences. Further, a region may be shown only when it is activated. Optionally, a visual indication may be provided in relation to each region showing a specific parameter associated with each region and/or a particular value predefined fc?· each region.
[G09SI Referring back to Figure 9, the region 902 is associated with a “BUY” order parameter, and the region 904 Is associated with a “SELL” order parameter. As ilhrstmted in Figure 9, using a linear track prediction method, a cursor prediction track 906 intersects (wo target dements 90S and 910 positioned in regions 902 and 904, respectively. As explained earlier, as the cursor is being moved, two orders may be preconfigured baaed on the predicted target elements 902 and 904. Alternatively, two orders may be selected from. a preconfigured pool of order messages, (0099] Ac cording to one example embodiment, two indicators such as 1” and “2” may be displayed in relation to the predicted target dements SOS and 910. In such an embodiment, a user may enter an input St1 ” to select the predicted target element SOS and/or to eliminate the target element 910, or “2 to select the predicted target element 910 and/or to eliminate the target element 90S. It should he understood that other indicators could also be used, and may be associated wife other user input actions as well. For example, when the element 908 is selected, order parameters of an order prepared based on the element 908 may be determined based o?s a region m whwl, tie element Atd ts loomed thus m the example of Figure 9, the controlling parameters, such as, an order quantity defined with respect to the region 902, may he based on the order quantity associated with the region 902, Alternatively, prepared basal on the selected target element. For exotoplc, while a use?· may select (he target element 908, the order parameters tor the prepared order may be set based on the order ~
2017200063 05 Jan 2017 [00106] Furthermore, in an alternative embodiment, some order parameters may be set for an order based on order parameters associated with a region in which the selected target element is located, while a user may select a different region to set additional order parameters. Further, alternatively, a user may select one of die regions as a default region, and order parameters associated with the selected region may be used to set all or some order parameters for orders prepared based on the predicted targets. Further, alternatively, a specific region may be selected upon detecting a cursor of a user input device crossing the region. In such an embodiment, when the cursor crosses the region, one or more parameters may be preset for a prepared order. In other words, some prepared orders may be eliminated while others may be added based on a user’s selection of different regions. It should he understood that various other embodiments are possible as well.
[00101] According to one example embodiment, a user may enter an order prior to b cursor reaching one of the regions. For example, while still outside one of the regions, such as shown in Figure 9 with the cursor located at Ls. a user may initiate a first action of a user input device to select a specific target element, while a second action of the user input device maybe used to send an order to an electronic exchange. Alternatively, multiple actions can be used to select a desired target element, to select a desired region to control order parameter settings for an order prepared based on the selected target element, and to send the prepared order. Alternatively, a single action may both select a specific target element and to send an order to an electronic exchange. In such an embodiment, order parameters for the prepared order may be determined based on a region in -which the target element is located, based on an earlier selected region, or based on a default region.
[00102] It should be understood that more than one user input device may he used to select a specific region, a desired target element, and to send an order to an electronic exchange. According to one example embodiment, a first action may be initiated by selecting a specific key on a keyboard to select a desired region, a second action may be initiated to select a desired target element, while another action may he initiated using a mouse, such as by clicking a mouse button, to send an order to an electronic exchange. Further alternatively, a user could select a desired target element by selecting a region in which the desired target element is located. Various other embodiments are possible as well.
— 30
2017200063 05 Jan 2017 [001O3] According to another example embodiment, each region may be associated with snore than one order parameter. More specifically, the region 902 may be associated with the “BUY” order parameter and a first order type (“OT1”), while the second region 904 maybe associated with fee “SELL” order parameter and a second order type (4ΌΤ2ϊ5).
[881041 it should he understood that region sets can he constructed in any manner. While fee regions of Figure 9 are vertical, horizontal regions, or regions at various angles could be created its welt Additionally, two sets of regions could be used io relation to a single interface, with die two sets of regions interaeefing and bemg associated wife ddferent order parameters. It should be understood that in an embodiment where more than one cursor is being used in relation to an interface, different regions may be associated wife different cursors, (001851 Additionally, it should he understood that selection of specific regions may result in generating additional target elements, For example, a horizontal region 912 may he created in relation to the price level of S49L” In such an embodiment, when the target element 910 is identified, a user rnay activate the region 912 to identify additional target elements, such as the target element 914 that may be associated wife fee price of“01” but a different order quantify, or yet some other order parameter, than that associated wife fee target element 910, As described above, each target dement may be labeled with an identifier such that a user may quickly select, a desired target element Additionally, another w'indow may he displayed in relation to each predicted target element indicating current order parameters associated with each target element When multiple regions are used, a window displayed in relation to a predicted target dementmay indicate various combinations of order parameters for orders prepared for the predicted target element In such an embodiment, the window may also display an input combination that activates selection of a specific prepared order.
[0010b] Figure 10 illustrates an example trading interface 1000 for trading an item in an electronic trading system using a plurality of region sets.
[001071 According to the embodiment of Figure 10, fee first region set includes a plurality of horizontal regions associated with a plurality of prices, such as regions 1002 and 1004 associated with prices of <484” and “85,” respectively. Then, the second region set includes two vertical regions 1906 and 1008 corresponding to a. “BUY” order parameter and
2017200063 05 Jan 2017 a “SELL” order parameter, respectively, In such an embodiment, a linear prediction track 1110 intersects the region 1002 corresponding to the price of “84,” Using the linear track prediction, functionality and the region layouts of Figure 10, two target elem ents 1012 and 1014 may be identified corresponding to an order to buy at the price of “84” and an order to sell at the price of tl84.” According to one example embodiment, rather Oran pre-configuring orders or selecting orders from a preconfigured pool of messages based on all possible target elements, the prediction logic may eliminate certain target elements based on which targets are more likely intended by a user, or more likely to be selected, [00108] According to another example embodiment, a second prediction track 1016 may he generated using a cursor prediction method. In such an embodiment, two target elements 1012 and 1018 could be identified. Based cn the target elements 1018 and 1020, an order to buy at “84” and an order to sell at “86” could be pre-configured or selected from a preconfigured pool of messages, [00109] It should be understood that a priority level could be defined for each region set, such that when multiple prediction tracks are generated, one or more of them may be selected based on the priority level defined for each region. For example, if the price-based region set has the highest priority level in Figure 10, the prediction track 1016 could be eliminated, and thus, the target. 1018 could he eliminated from the consideration while preconfiguring one or more orders. Different embodiments are possible as well, where a user may select a specific prediction track when more than one prediction track is available.
[00110] Figure 11 illustrates another example trading interface 1100 using a plurality of regions extending beyond the trading interface, Similarly to the embodiments described above, each of the plurality of regions may be associated with a value preset for one or more order parameters. Figure 11 illustrates five regions 1.10:2-1110, with the region 1106 overlapping the trading interface 1100, and four additional regions 1102, 1104, 1108, and 1110 displayed outside the trading interface 1100. As illustrated in Figure 11, each region is associated with different order parameters. For example, the region 1102 corresponds to a first order quantity (“Qt”) and a first order type (“QTf”), while the second region 1104 corresponds to a second order quantity (“Q;”) and a second order type COT/’). The quantities and order types associated with each region may be user-configurable.
- 32 2017200063 05 Jan 2017
Additionally, various other parameters could be defined in relation to each region in addition to, or instead of the quantity and order type parameters.
fOtil11f As a cursor 1112 is being moved in relation to the trading interface 1100, one or more cursor prediction methods could he used to predict at least one target element. Using a linear prediction method, a target element '1114 corresponding to g price of “87” arid an. order parameter icBUYiS may he identified on the trading interface 1100, According to one example embodiment, an. order to buy at the price of “87” may he pre-configured baaed on the target element 1114. Additionally, s.s the cursor crosses the boundary of each region, additional order parameters may he set for the pre-configured order, For example, as the cursor crosses the region 1102, an order quantity of Q; and an order type of OT3 may he set for the pre-configured order. Alternatively, rather than setting order parameters for an order at the time when the cursor crosses a specific region, all possible messages may be generated ahead of time, and then certain messages may be selected based on the cursor movement in relation to each region and further based on cursor prediction date.
[0Θ112] Alternatively, rather than setting additional order parameters or selecting different precontigcred messages as the cursor 1112. crosses each respective region, a user define one or more parameters ffor a pre-configured order message or may result in selection of a different preconfigured order message, Then, to send the pre-configured order to sn electronic exchange, the user could enter another predetermined input. .Alternetively, a single action may be used to select a desired region, s desired target, and to send un outer mc&augc associated with the desired target. Additionally, when one or more target elements are identified, a user could also pre-select one of the target elements before indicating which cf the regions should he selected. It should he understood that more than one user input device could be u sed for select ing one of the regions, tar get elements, and sending trade orders.
Also, it should he understood tout different regions could be associated with different order parameters For example. the region 1107 could correspond to a specific order quantity value, while the region 11(14 could correspond to an order type. In such an embodiment, a user could select a combination of regions to define desired order parameters for a trade order. Different embodiments are possible as well. Additionally, it should be understood that various indicators noted be displayed in relation to the regions ami largte elements to
2017200063 05 Jan 2017 assist a user in determining what user inputs can be used to activate/se-leet 8 desired region/targei element. Various other combinations described above could be used to select a desired target element, to define order parameters for a preset order, and to send one or more orders to an electronic exchange, [06113] As used herein, a “tradable object” refers to anything that can be traded with a price, a quantity, or both price and quantity. For example, financial products such as stocks, options, bonds, futures, currency, warrants, funds derivatives, commodities, and collections or combinations of these may be tradable objects. A tradable object may be “real” or “synthetic.” A real tradable object includes products that are listed by an exchange. A synthetic tradable object includes products that are defined by the user and are not listed by an exchange. For example, a synthetic tradable object may include a combination of real (or other synthetic) products such as a synthetic spread, A tradable object may also include traded events or goods, for example, [001141 While the inventions have been described with reference to certain embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the invention. In addition, many modifications may be made to adapt a particular situation or material to toe teachings of the invention without departing from toe spirit or scope of the present inventions, Therefore, it is intended that the inventions not he limited to the particular embodiments disclosed herein, [60115) In an embodiment, a system or a method for accelerating order message generation is provided. The time it takes to send an order message to an electronic exchange is reduced. A system responds to a user’s manipulation of a selection device that moves a cursor upon a trading interface. Previous systems generate order-related messages following manual selection, with the cursor, of a trading interface element. In an embodiment, a system and/or method enable generation of one or more order-related messages with order parameters before a cursor reaches a user interface element based on cursor movement detection and prediction processes. The parameters correspond to respective user interface elements. One of these order-related messages wav then be sent to an electronic exchange, to effect, the reduction in time is a result of intelligent pre-processing which takes place in parallel with the user’s manipulation of the selection device. The total time taken to configure
2017200063 05 Jan 2017 an order message with order parameters arid thus send an order message to an electronic exelumge is reduced. This reduction may be on die otder of milliseconds but is concrete and measurable. The cursor movement detection and prediction precesses may foeititete and accelerate data entry for the sending, of order messages to an electronic exchange, as opposed to waiting for the cursor to be placed over a desired element and the element choked'upon.
[OOlltil In an embodiment; a system for selecting a particular order message. configuration ahead of any selection by a user is provided. 11ns is achieved by detecting a movement of a cursor on an interface, lo particular, a movement between two locations is detected, and this movement ts used to identify a particular interface element, for example based os a predicted fotise movement path. litis identification is performed before a cursor reaches the element, for example, before the movement path of the cursor is complete. Each interface component is linked with a particular order message configuration, for example a particular order parameter (price values 710 in column 702 of Figure 7) er & particular command message (“cancel all working orders” [0035]), Hence, identifying a particular interface element ahead of selection enables an order message to be provided, and in some eases sent to an elccnomc exchange, before a oxer actually clicks on an interface element,- This speeds up order entry, gaining vital milliseconds. Predicting a future movement path reduces the time taken to send an order message to an electronic exchange.
[00117] To an embodiment, fhe system includes an action estimate component. The action estimate component configures a set ofcandidate messages based on foe selectable options of accordance with a prediction based on a cursor movement between two locations; that is, the message thatmatches tire trade order that tire tr ader wishes to place.
evaluate changes to the cursor’s position- To modify a prediction of foe one or more target elements, fhe action estimate component is arranged to dynamically select a. subset of a plurality of order messages basal on foe data indicative of die predicted one or more target elements. As a result, processing related to foe selection of a particular message is distributed ever time. For example, the plurality of order related messages may be reduced in size as of any selection is also increased as order related messages that arc not likely based on a
2017200063 05 Jan 2017 particular cursor movement may be dynamically discarded. This improves the efficiency and accuracy of an order-related-message selection.
(001191 In an embodiment, a system includes a cursor movement prediction component feat is configured to monitor changes to the cursor’s position and an action estimate component that is configured to use any modified predictions concerning a selectable element to dynamically reduce the number of order messages that are selectable, in effect there is parallel processing of tracking movement of the cursor and refining the set of candidate messages. By reducing the number of possible order messages over time it is computationally quicker and easier to select fee first order message from the generated plurality of order messages.
(00120] In an embodiment, a display component is arranged to generate a further interface. The further interlace dynamically displays one or more of fee plurality of order messages for selection as an order message to he sent to fee electronic exchange. Displaying fee order messages for selection further speeds up fee selection of a particular order related message and improves the accuracy of a finally selected message for user interfaces wife densely arranged components. The result of the internal processing of the system, in the form of order messages to he sent, is displayed in an additional user interface, which not only informs fee user of the prediction process, and as such, enables them to abort if any inaccuracies arise in the generated order messages, but also enables them to further accelerate fee process by manually selecting one of fee offered plurality of order messages. This improves the accuracy of the orders that are placed.
[00121] In an embodiment, a system includes a user input device component that is communicatively coupled to the cursor movement prediction component for receiving input signals from one or more user input devices, 'Ihe cursor movement prediction component is arranged to predict first and second target elements of fee one or more selectable elements based on the cursor movement. Tim system includes a display component. The display component provides first and second graphical indicators in relation to fee first and second target elements. The system includes a user input device component feat receives an input signal associated with one of fee first and second target elements. The input si goal is used by the cursor movement prediction component to select one of fee first and second target elements. The system may discern a particular target element in ambiguous cases. Further
... 36 ....
2017200063 05 Jan 2017 speeds up the selection of a particular order message ooafigurution for user mterfaees with densely arranged components, [0912 21 In an embodiment, user information indicative of the prediction process, i.e. a plurality of possible target elements is displayed to a user, and additional user input is used based on fee displayed information to shortcut the prediction process by confirming one target element from the plurality of possible target elements, As shown in Figure ? based on s cursor movement TA or TS, possibilities could be generated as part of the prediction process, however, TB may only be confirmed when the cursor had. passed TA, requiring a long tin relative time and distance) cursor path. However, if at location 2 (1,2) graphical indicators for TA and TB were displayed then the user would bo aware that they are possibilities and thus manipulate a user input device so sa to select one of than at fee location, resulting in a much shorter (in time and path distance) selection.
[001231 in an embodiment, first and second target elements may reside on a common inirsor path. A cursor movement prediction component receives a first input signal of a user Input device from the user input device component to detect fee cursor movement and receives a second input signal of fee use- input device from the user input device component (100) to alternately select the first and second target elements along the cursor path. Tins provides a quick means to select possible target elements. A first input signal of a device may be used to move a cursor end a second input signal of the same device may he used to toggle between targets. As the same device is used for both operations the user does not lose time switching between input devices.
[001241 fo an embodiment, a system may include an iuior&ce, a cursor movement predication component, and an action estimate component. The interface Is divided into a plurality ot interface regions, each interface region is associated With a preset ^alue lor one or more said order parameters. The cursor movement prediction component processes the detected movement of the cursor to define a eureor path. The cursor movement prediction component determines one or more of the interface regions that intersect the cursor path. The action estimate component provides one or more order messages based on the predicted one or more target elements and the order parameter values for any intersected interface regions. The use of these regions enables additional parameters to be set for un order message, This farther reduces fee need for manual data entry' increasing the speed at which an order
.... 37....
2017200063 05 Jan 2017 message can be sent to an electronic exchange, As a result» the entry cf multiple parameters for the sending of order messages fo an electronic exchange is accelerated, (00125] In an embodiment, a cursor movement prediction component is adapted to determine a cursor path based on a cursor movement and to determine which regions are intersected by the cursor path, In certain embodiments, a set of selectable elements may represent particular value choices for a parameter of an order message. In these cases, a value for a parameter of an order message may be rapidly selected. However, if an order message requires values for additional parameters of an order message, these may need to be entered manually. By using regions, as well as predicting target elements, these values for one or more additional parameters may also be entered using foe output, of the cursor movement prediction, component. Using regions thus further accelerates order entry when an order requires values for multiple parameters. As different preset order parameter values may be associated with different regions, when a region is intersected by the cursor path the associated value can be retrieved and used to generate a possible order message.
f9Q126] In an embodiment, each interface region is assigned a priority. A cursor movement prediction component processes foe defected movement of foe cursor to define a plurality of cursor paths. The cursor movement prediction component eliminates one or more of foe plurality of cursor paths based on foe priorities of intersected regions. This provides an efficient way in which certain possibilities for predicted targets can be eliminated. It also improves the speed and accuracy of order message generation for interfaces with a large number of densely-arranged selectable elements. The priorities may be used by foe cursor movement prediction component to eliminate certain cursor paths (arid thus certain possible targets).
[00127] fo an embodiment, the system includes a gating element. The gating element is programmatically configured between an application program element and a physical communications medium. The gating element receives and stores one or more order messages provided by the application program element. At least one of the messages Is for transmission to an electronic exchange. The one or more order messages are generated on the basis of one or more order parameters associated with one or more selectable elements of foe interface, The one or more order parameters are identified on die basis of predicted movement of a monitored cursor on foe interface. Data indicative of foe predicted movement
- 38 2017200063 05 Jan 2017 is generated when the cursor is at a location other then that of the selectable elements. The gating element is responsive to receipt of a signal from the application program element to release a selected one of the one or more order messages onto the physical communications medium. An order message can he sent to an electronic exchange before a selection of an element on an interface, hforeover, as the order message has bean stored in the gating element based on one or more identified elements that are in tom based on a predicted movement, it can be released onto the physical communications medium without delay.
[Θ0128] The “gating element” is programmatically configured in a specific position “between an application program element and a physical communications medium” and arranged to receive parti cuter data and signals fam an application program element As a first function, a number of order messages are stored based on a predicted movement of a monitored cursor on an interface. As a second function, one of the stored order messages is released onto the communications medium based on a signal from the application program clement. The signal may be confismation, for example, that a likelihood of selection exceeds a threshold, e.g. this occurs when only a single selectable element is possible based on the predicted movement or on receipt of a user input signal to confirm a predicted selectable element. By configuring the gating element before the physical eonunu.· mentions medium, processing such as getting the message into the operating system’s protocol stack, into a device driver for a network adapter, and then into the network adapter itself, may be performed ahead of time, for example when a prediction is still uncertain. In effect this solution is precessing a number of messages at a network level io parallel with a tracking movement of a cursor to avoid delay, |<K1!29] In an embodiment, an order generation method is provided. Ilte method may be used with aa interface having one or more selectable elements, each of the one or mom selectable elements being associated with a parameter of an order message. The method includes detecting raevesnem; of & cursor fam a first location to a second location in relation elements based on the detected cursor, movement the second location being a location that ts other than a location corresponding to one of the one or more target elements; and prior to the cursor reaching the one or' more target elements, providing one or more order messages on the bas.ss of tiara indicative of the predicted cue or more target elements, in winch each of the
2017200063 05 Jan 2017 one car more order messages comprises a said parameter corresponding to a respective one or more target elements.
[00130] In an embodiment, a method includes accessing a plurality of order messages, each order message having been generated prior to predicting the one or more target elements. The method includes selecting aii order message from the plurality of order .messages based on said data indicative of the predicted one or more, to generate said one or more order messages, [00131] In an embodiment, a method includes predicting one or more target dements includes evaluating changes to die cursor's position, to modify a prediction of the one or more target elements. Preparing one or more order messages includes dynamically selecting a subset of the plurality of order messages based the data indicative of the predicted one or more target elements.
100132] In ai? embodiment, a method includes dynamically displaying one or more of the plurality of order messages on a further interface; and selecting one of said one or more order message on the further interface as an order message to he sent to the electronic exchange.
[00133] In an embodiment, a method tor predicting one or more target elements includes predicting a first target elem ent of the one or more selectable elements and a second target element of foe one or more selectable elements based on the cursor movement. Providing one or more order messages includes prior to the cursor reaching tire first, target element, generating a first order message, wherein the first order message is associated with a first order parameter corresponding to the first target element; and prior to the cursor reaching foe second target element, generating a second order message, wherein, the second order message is associated with a second order parameter corresponding to the second target element. The method further includes selecting a desired target element from the first target element and the second target element; and causing the first order message or the second order message to be sent to the electronic exchange based on the selected desired target element.
[00134] Detecting a cursor movement may include receiving a first input signal of a user input device and, when the first and second target elements reside on a common cursor path.
402017200063 05 Jan 2017
Selecting a desired target element may include receiving a second input signal of the user input device to alternately select the first and second target dements along the cursor path, [OT135] In an embodiment, a method Inclndes defining a p Why of interface regions upon the interface, each interface region being associated with a preset value for one or more said order parameters; and determining one or more of said interfam regions that intersect a cursor path defined by the cursor movement. Providing one or more order messages includes preparing one or more order messages based the data indicative of Ore predicted one or more target elements and the order parameter values for any interface regions intersected by the cursor path, (00130] In an embodiment, a method includes detecting foe cursor movement, determining a plurality of possible cursor paths, assigning a priority to each Interface region; and eliminating one or more of said plurality of cursor paths based on the priorities of intersected regions.
[00137] In an embodiment, a method includes providing tho one or more order messages to a gating element programmatically configured before a physical communications medium; and releasing a selected one of the one or more order related message from the gating element onto the physical comnnmtentlonc medium upon detecting a trigger signal.
[00130] in an embodiment, a computer program including computer program code means is adapted to perform the steps of any of the method steps discussed above.
[00130] The reference to jury prior art in ibis specification. is net, and should not be takers as, an acknowledgement or any form of suggestion that the prior art forms part of the common general knowledge, [00340] la this specification, the terms “comprise”, “comprises” “comprising” or similar tonus are intended to mean a nen-eadusive isotosfon, such that a system., method or apparatus that composes a list of elements does not include these elements solely, but may web include ether elements not listed.
...<:
2017200063 05 Jan 2017
Claims (24)
1. A method for motion based target prediction and interaction, comprising:
receiving via a user input for an electronic trading device a first user input to move a cursor from a location separated from one or more selectable elements toward a first target element of the one or more selectable elements;
in response to the cursor being moved from the location separated from the one or more selectable elements toward the first target element and prior to the cursor reaching the first target element, predicting via the electronic trading device a trajectory path of the cursor according to the location separated from the one or more selectable elements and a second location along the trajectory path, the second location being separated from and without the one or more selectable elements;
in response to predicting the trajectory path and prior to the cursor being moved over the first target element, identifying via the electronic trading device a function to be executed, where the function is identified based on the first target element; and in response to identifying the function to be executed, initiating by the electronic trading device, submission of an order related message to be sent to an electronic exchange.
2. The method of claim 1 where identifying the function comprises setting the order related message to be sent to the electronic exchange.
3. The method of claim 2 where setting the order related message comprises generating the order related message upon predicting movement of the cursor toward the first target element.
4. The method of claim 2, further comprising:
generating one or more order related messages based on the one or more selectable elements of a trading interface before the first target element is predicted, and wherein setting the order related message comprises selecting the order related message from the generated one or more order related messages.
5. The method of claim 1, further comprising: selecting the first target element, and responsively, causing a order related message to be sent to the electronic exchange.
-422017200063 05 Jan 2017
6. The method of claim 5 where the first target element is selected prior to the cursor being positioned over a selectable area associated with the first target element.
7. The method of claim 5 where the first target element is selected when the cursor is positioned over a selectable area associated with the first target element.
8. The method of claim 2 where the order related message comprises an order to buy or sell a tradeable object at a price at the electronic exchange.
9. The method of claim 2 where the order related message comprises a request to cancel an order at a price at the electronic exchange.
10. The method of claim 1 where identifying the function comprises setting an order price for an order to be sent to an electronic exchange prior to the cursor reaching the first target element.
11. The method of claim 2 where the order related message comprises an order quantity.
12. The method of claim 2, further comprising:
providing a graphical indicator to indicate the first target element.
13. A non-transitory computer readable medium having instructions stored thereon, which when executed by an electronic processor, cause the processor to carry out acts comprising:
receiving via a user input for an electronic trading device a first user input to move a cursor from a location separated from one or more selectable elements toward a first target element of the one or more selectable elements; and in response to the cursor being moved from the location separated from the one or more selectable elements toward the first target element and prior to the cursor reaching the first target element, predicting via the electronic trading device a trajectory path of the cursor according to the location separated from the one or more selectable elements and a second location along the trajectory path, the second location being separated from and without the one or more selectable elements;
in response to predicting the trajectory path and prior to the cursor being moved over the first target element, identifying via the electronic trading device a function to be executed, where the function is identified based on the first target element; and
-43 2017200063 05 Jan 2017 in response to identifying the function to be executed, initiating by the electronic trading device, submission of an order related message to be sent to an electronic exchange.
14. The non-transitory computer readable medium of claim 13 where identifying the function comprises setting the order related message to be sent to the electronic exchange.
15. The non-transitory computer readable medium of claim 14 where setting the order related message comprises generating the order related message upon predicting movement of the cursor toward the first target element.
16. The non-transitory computer readable medium of claim 14 where the acts further comprise: generating one or more order related messages based on the one or more selectable elements of a trading interface before the first target element is predicted, and wherein setting the order related message comprises selecting the order related message from the generated one or more order related messages.
17. The non-transitory computer readable medium of claim 13 where the acts further comprise: selecting the first target element, and responsively, causing a order related message to be sent to the electronic exchange.
18. The non-transitory computer readable medium of claim 17 where the first target element is selected prior to the cursor being positioned over a selectable area associated with the first target element.
19. The non-transitory computer readable medium of claim 17 where the first target element is selected when the cursor is positioned over a selectable area associated with the first target element.
20. The non-transitory computer readable medium of claim 14 where the order related message comprises an order to buy or sell a tradeable object at a price at the electronic exchange.
21. The non-transitory computer readable medium of claim 14 where the order related message comprises a request to cancel an order at a price at the electronic exchange.
-442017200063 05 Jan 2017
22. The non-transitory computer readable medium of claim 13 where identifying the function comprises setting an order price for an order to be sent to an electronic exchange prior to the cursor reaching the first target element.
23. The non-transitory computer readable medium of claim 14 where the order related message comprises an order quantity.
24. The non-transitory computer readable medium of claim 14 where the acts further comprise: providing a graphical indicator to indicate the first target element.
-45 1/11
2017200063 05 Jan 2017
100 \
FIG. 1
2/11
2017200063 05 Jan 2017 ο
ο
CN
FIG. 2
3/11
2017200063 05 Jan 2017
FIG. 3
4/11
2017200063 05 Jan 2017
FIG. 4
5/11
2017200063 05 Jan 2017
FIG. 5
6/11
2017200063 05 Jan 2017
600 \
FIG. 6
7/11
2017200063 05 Jan 2017
FIG. 7
8/11
800
2017200063 05 Jan 2017
818
820
826
FIG. 8
9/11
2017200063 05 Jan 2017
FIG. 9
10/11
2017200063 05 Jan 2017
FIG. 10
11/11
2017200063 05 Jan 2017
FIG. 11
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2017200063A AU2017200063B2 (en) | 2010-06-30 | 2017-01-05 | Method and apparatus for motion based target prediction and interaction |
AU2018211323A AU2018211323A1 (en) | 2010-06-30 | 2018-08-03 | Method and apparatus for motion based target prediction and interaction |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/827,861 | 2010-06-30 | ||
AU2014200504A AU2014200504B2 (en) | 2010-06-30 | 2014-01-30 | Method and apparatus for motion based target prediction and interaction |
AU2015210480A AU2015210480B2 (en) | 2010-06-30 | 2015-08-10 | Method and apparatus for motion based target prediction and interaction |
AU2017200063A AU2017200063B2 (en) | 2010-06-30 | 2017-01-05 | Method and apparatus for motion based target prediction and interaction |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
AU2015210480A Division AU2015210480B2 (en) | 2010-06-30 | 2015-08-10 | Method and apparatus for motion based target prediction and interaction |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
AU2018211323A Division AU2018211323A1 (en) | 2010-06-30 | 2018-08-03 | Method and apparatus for motion based target prediction and interaction |
Publications (2)
Publication Number | Publication Date |
---|---|
AU2017200063A1 AU2017200063A1 (en) | 2017-02-02 |
AU2017200063B2 true AU2017200063B2 (en) | 2018-06-07 |
Family
ID=54014180
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
AU2015210480A Ceased AU2015210480B2 (en) | 2010-06-30 | 2015-08-10 | Method and apparatus for motion based target prediction and interaction |
AU2017200063A Ceased AU2017200063B2 (en) | 2010-06-30 | 2017-01-05 | Method and apparatus for motion based target prediction and interaction |
AU2018211323A Abandoned AU2018211323A1 (en) | 2010-06-30 | 2018-08-03 | Method and apparatus for motion based target prediction and interaction |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
AU2015210480A Ceased AU2015210480B2 (en) | 2010-06-30 | 2015-08-10 | Method and apparatus for motion based target prediction and interaction |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
AU2018211323A Abandoned AU2018211323A1 (en) | 2010-06-30 | 2018-08-03 | Method and apparatus for motion based target prediction and interaction |
Country Status (1)
Country | Link |
---|---|
AU (3) | AU2015210480B2 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040117292A1 (en) * | 2000-03-02 | 2004-06-17 | Harris Brumfield | System and method for trading and displaying market information in an electronic trading environment |
US20050125328A1 (en) * | 2003-12-05 | 2005-06-09 | Trading Technologies International, Inc. | Method and system for displaying a cursor on a trading screen |
US20070067744A1 (en) * | 2005-08-11 | 2007-03-22 | Lane David M | System and method for the anticipation and execution of icon selection in graphical user interfaces |
US7747749B1 (en) * | 2006-05-05 | 2010-06-29 | Google Inc. | Systems and methods of efficiently preloading documents to client devices |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7616191B2 (en) * | 2005-04-18 | 2009-11-10 | Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. | Electronic device and method for simplifying text entry using a soft keyboard |
-
2015
- 2015-08-10 AU AU2015210480A patent/AU2015210480B2/en not_active Ceased
-
2017
- 2017-01-05 AU AU2017200063A patent/AU2017200063B2/en not_active Ceased
-
2018
- 2018-08-03 AU AU2018211323A patent/AU2018211323A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040117292A1 (en) * | 2000-03-02 | 2004-06-17 | Harris Brumfield | System and method for trading and displaying market information in an electronic trading environment |
US20050125328A1 (en) * | 2003-12-05 | 2005-06-09 | Trading Technologies International, Inc. | Method and system for displaying a cursor on a trading screen |
US20070067744A1 (en) * | 2005-08-11 | 2007-03-22 | Lane David M | System and method for the anticipation and execution of icon selection in graphical user interfaces |
US7747749B1 (en) * | 2006-05-05 | 2010-06-29 | Google Inc. | Systems and methods of efficiently preloading documents to client devices |
Also Published As
Publication number | Publication date |
---|---|
AU2015210480A1 (en) | 2015-09-03 |
AU2017200063A1 (en) | 2017-02-02 |
AU2018211323A1 (en) | 2018-08-23 |
AU2015210480B2 (en) | 2016-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9830655B2 (en) | Method and apparatus for motion based target prediction and interaction | |
US20230236719A1 (en) | Method and System for Displaying a Cursor on a Trading Screen | |
US10795530B2 (en) | Dynamic functionality based on window characteristics | |
US7454382B1 (en) | System and method for holding and sending an order to a matching engine | |
US7805355B2 (en) | Graphical user interface to facilitate rapid and reliable electronic trading assessment and execution | |
US8249969B2 (en) | Time market grid interface | |
US8006183B1 (en) | System and method for using a curser to convey information | |
AU2017200063B2 (en) | Method and apparatus for motion based target prediction and interaction | |
AU2014200504B2 (en) | Method and apparatus for motion based target prediction and interaction |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FGA | Letters patent sealed or granted (standard patent) | ||
MK14 | Patent ceased section 143(a) (annual fees not paid) or expired |