PATENTSCOPE will be unavailable a few hours for maintenance reason on Monday 03.02.2020 at 10:00 AM CET
Search International and National Patent Collections
Some content of this application is unavailable at the moment.
If this situation persists, please contact us atFeedback&Contact
1. (WO2018132596) GRAPHICAL USER INTERFACE FOR ORDER ENTRY WITH HOVERING FUNCTIONALITY
Note: Text based on automatic Optical Character Recognition processes. Please use the PDF version for legal matters

GRAPHICAL USER INTERFACE FOR ORDER ENTRY WITH HOVERING

FUNCTIONALITY

CROSS-REFERENCED APPLICATION

[0001 ] This invention claims priority to U.S. Provisional Appl. 62/445,039, entitled "Changing Orders While Hovering", which was filed on January 1 1 , 201 7.

BACKGROUND

[0001 ] Advances in computing and networking technology allow electronic trades to be received and executed in fractions of a second. Computing devices may generate trades that move in and out of short term positions at high volumes and high speeds to exploit small price changes.

BRIEF DESCRIPTION OF THE DRAWINGS

[0002] FIG. 1 is an example apparatus in accordance with aspects of the present disclosure.

[0003] FIG. 2 is an example network in accordance with aspects of the present disclosure.

[0004] FIG. 3 is a flow diagram of an example method in accordance with aspects of the present disclosure.

[0005] FIGS. 4A-4B illustrate a working example in accordance with aspects of the present disclosure.

SUMMARY

[0006] As noted above, networked computers may execute trades at unprecedented speeds. Unfortunately, the speeds at which these trades are executed pose new technical challenges and risks. The rapid price changes that occur due to network velocity make it difficult for traders to capture a desired price. Entering order parameters in conventional systems is cumbersome and time consuming. The problem of elusive prices specifically arises in the realm of computer networking technology, since volatile price changes may occur while a trader enters order parameters due to the speed of the electronic trading network.

In view of the foregoing, disclosed herein are technical improvements to the functioning of the computer that significantly reduce the time it takes to enter an order via a graphical user interface ("GUI").

[0007] In one example, disclosed herein is an apparatus that may include a display screen, a network interface, a memory device, and at least one processor. The at least one processor may execute the following operations: render on the display screen a graphical user interface having a plurality of rows, each row having a product field, a price field, and a size field; detect actuation of a first input; in response to detecting actuation of the first input, change a status indicator stored in the memory device to indicate that a cursor is about to hover over a given row of the plurality of rows; detect a movement of the cursor over the given row; in response to detecting the cursor hovering over the given row, render a drop down menu with different size options for an order associated with the given row on which the cursor hovers; detect a selection of a size option in the drop down menu; and in response to the selection of the size option, transmit, via the network interface, an order for a product specified in the product field of the given row with a size corresponding to the selected size option.

[0008] In a further example, a method is disclosed. The method may include the following: rendering, by at least one processor, on a display screen, a graphical user interface having a plurality of rows, each row having a product field, a price field, and a size field; detecting, by the at least one processor, actuation of a first input; in response to detecting actuation of the first input, changing, by the at least one processor, a status indicator stored in a memory device to indicate that a cursor is about to hover over a given row of the plurality of rows; detecting, by the at least one processor, a movement of the cursor over the given row; in response to detecting the cursor hovering over the given row, rendering, by the at least one processor, a drop down menu with different size options for an order associated with the given row on which the cursor hovers; detecting, by the at least one processor, a selection of a size option in the drop down menu; and in response to the selection of the size option, transmitting, by the at least one processor, an order via a network interface for a product specified in the product field of the given row with a size corresponding to the selected size option.

[0009] In yet another example, disclosed herein is a non-transitory computer-readable medium with instructions stored therein. When executed, the instructions may cause at least one processor to: render on the display screen a graphical user interface having a plurality of rows, each row having a product field, a price field, and a size field; detect actuation of a first input; in response to detecting actuation of the first input, change a status indicator stored in the memory device to indicate that a cursor is about to hover over a given row of the plurality of rows; detect a movement of the cursor over the given row; in response to detecting the cursor hovering over the given row, render a drop down menu with different size options for an order associated with the given row on which the cursor hovers; detect a selection of a size option in the drop down menu; and in response to the selection of the size option, transmit, via the network interface, an order for a product specified in the product field of the given row with a size corresponding to the selected size option.

[0010] The aspects, features and advantages of the present disclosure will be appreciated when considered with reference to the following description of examples and accompanying figures. The following description does not limit the application; rather, the scope of the disclosure is defined by the appended claims and equivalents.

DETAILED DESCRIPTION

[0011 ] FIG. 1 presents a schematic diagram of an illustrative computer apparatus 100 for executing the techniques disclosed herein. Computer apparatus 100 may comprise any device capable of processing instructions and transmitting data to and from other computers, including a laptop, a full-sized personal computer, a high-end server, or a network computer lacking local storage capability. Computer apparatus 100 may include a keyboard and mouse and/or various other types of input devices such as pen-inputs, joysticks, buttons, touch screens, etc., as well as a display device, which could include, for instance, a CRT, LCD, plasma screen monitor, TV, projector, etc. Computer apparatus 1 00 may also comprise a network interface 1 14 to communicate with other devices over a network. Although all the components of computer apparatus 1 00 are functionally illustrated as being within the same block, it will be understood that the components may or may not be stored within the same physical housing.

[0012] The computer apparatus 100 may also contain at least one processor

1 10, which may include, but is not limited to, central processing units (CPUs), microcontrollers, digital signal processors, application specific integrated circuits ("ASICS"), or any combination thereof. A processor may include an Intel® Pentium®, Centrino®, and/or Core® processor. Processor 1 1 0 may receive instructions (e.g., from memory device 1 12 or like device), and execute those instructions, thereby performing one or more processes defined by those instructions.

[0013] As noted above, memory device 1 1 2 may store instructions that may be retrieved and executed by processor 1 10. Memory device 1 12 may include, but is not limited to, non-volatile media, volatile media, and non-transitory computer readable media ("CRM"). Non-volatile media include, for example, optical or magnetic disks, read-only memory ("ROM"), and other persistent memory. Volatile media include dynamic random access memory, which may constitute the main memory of computer apparatus 100. Memory device 1 1 2 may also include any combination of one or more of the foregoing and/or other devices as well. While only one processor 1 10 and one memory device 1 12 are shown in FIG. 1 , it is understood that computer apparatus 1 00 may actually comprise additional processors and memories that may or may not be stored within the same physical housing or location.

[0014] A non-transitory CRM may comprise any one of many physical media such as, for example, electronic, magnetic, optical, electromagnetic, or semiconductor media. More specific examples of suitable non-transitory computer-readable media include, but are not limited to, a portable magnetic computer diskette such as floppy diskettes or hard drives, an erasable programmable readonly memory, a portable compact disc, a flash drive, or other storage devices that may be coupled to computer apparatus 100 directly or indirectly.

[0015] Turning now to FIG. 2, computer apparatus 1 00 is shown interconnected to other computer apparatus 100 via network interface 1 14 and network 1 1 6. Network 1 16 may be a local area network ("LAN"), wide area network ("WAN"), the Internet, etc. Network 1 16 and the intervening nodes thereof may use various protocols including virtual private networks, local Ethernet networks, and private networks using communication protocols proprietary to one or more

companies, cellular and wireless networks, HTTP, and various combinations of the foregoing. Although only a few computers are depicted in the network of FIG. 2, it should be appreciated that a network may include additional interconnected computers and that the five computers shown in FIG. 2 are for ease of illustration. Each computer apparatus depicted in FIG. 2 may be an individual node in network 1 16. In this particular example, each computer apparatus 100 may be a client computer and computer apparatus 204 may be a server computer. The graphical user interfaces discussed below may be rendered on a given computer apparatus 100. In a further example, network 1 16 may form an electronic marketplace and computer apparatus 204 may monitor electronic trades entered at each computer apparatus 100 and match buy and sell orders entered at each computer apparatus 100. The network shown in FIG. 2 may be employed to trade any type of product including, but not limited to, financial products.

[0016] The instructions residing in memory device 1 1 2 may comprise any set of instructions to be executed directly (such as machine code) or indirectly (such as scripts) by processor 1 1 0. In this regard, the terms "instructions," "scripts," or "modules" may be used interchangeably herein. The computer executable instructions may be stored in any computer language or format, such as in object code or modules of source code. The instructions may be written in various programming languages, including an object-oriented programming language, such as SmallTalk, Java, C++, Ada, Python, or C# (C-Sharp), functional programming languages, scripting programming languages such as JavaScript, and/or logical programming languages. Furthermore, it is understood that the instructions may be implemented in the form of hardware, software, or a combination of hardware and software and that the examples herein are merely illustrative.

[0017] An example of the technological improvements disclosed herein is shown in FIGS. 3-4B. In particular, FIG. 3 illustrates a flow diagram of an example method 300 for submitting an order using an improved GUI and FIGS. 4A-4B show a corresponding working example. The actions shown in FIGS. 4A-4B will be discussed below with regard to the flow diagram in FIG. 3.

[0018] Referring to FIG. 3, at block 302, processor 1 10 may render a graphical user interface on a display screen. In FIG. 4, an example GUI trading screen 400 is shown with six rows of market data for six different financial products. GUI trading screen 400 also shows five columns, which include a product field, a bid size field, a bid price field, an offer price field, and an offer size field. Referring back to FIG. 3, processor 1 10 may detect actuation of a first input, as shown in block 304. The first input may be, for example, the actuation of an "F1 " key or "CTRL" key on a physical or virtual keyboard.

[0019] In a further example, processor 1 1 0 may generate a status indicator in memory device 1 1 2. The status indicator may be associated with the GUI trading screen 400. At block 306 of FIG. 3, in response to detecting actuation of the first input, processor 1 1 0 may change the status indicator in the memory device 1 1 2 to indicate that a cursor is about to hover over a given row of the plurality of rows. In one example, processor 1 10 may alter the status indicator associated with GUI trading screen 400 to indicate "hover mode." In FIG. 3, processor 1 1 0 may detect a movement of the cursor over a given row of GUI trading screen 400 while in the hover mode status, as shown in block 308. At block 310, in response to detecting the cursor hovering over the given row while the status indicator is in hover mode, processor 1 1 0 may render a drop down menu with different size options for a product associated with the given row on which the cursor hovers.

[0020] Referring now to FIG. 4B, GUI trading screen 400 is depicted in hover mode and a cursor is shown hovering over a row 406, which contains market data for a 5 year treasury bond product. In response to detecting the cursor hovering over row 406 while the status indicator is in hover mode, the example of FIG. 4B illustrates how processor 1 10 may render a bid/buy drop down menu 402 and a sell/offer drop down menu 404 associated with the hovered-over row. In FIG. 4B, bid/buy drop down menu 402 is superimposed over the bid size column and sell/offer drop down menu 404 is superimposed over the offer size column. In one example, bid/buy drop down menu 402 and a sell/offer drop down menu 404 may be transient hover windows that are rendered when the cursor hovers over a given row and removed when the cursor no longer hovers over the given row. Different size options are depicted in the drop down menus for a bid size, a buy size, a sell size, and an offer size. Furthermore, processor 1 1 0 renders bid/buy drop down menu 402 alongside the bid price column and renders sell/offer drop down menu 404 alongside the offer price column, so that price changes are easily ascertainable while the drop down menu selections are displayed. However, it is understood that bid/buy drop down

menu 402 and sell/offer drop down menu 404 may be rendered in any location that permits the price changes to be observed.

[0021 ] Referring back to FIG. 3, processor 1 1 0 may detect a selection of one of the size options, at block 31 2. In the example of FIG. 4B, the lowest available size in both drop down menus is 50; the highest available size in both drop down menus is 250; and, other sizes in between are available in increments of 50. However, it is understood that these size options are merely illustrative and that other size options may be displayed. Referring back to FIG. 3, in response to the selection of one of the size options, processor 1 10 may transmit, via network interface 1 14, an order for a product specified in the product field of the row on which the cursor hovers with a size corresponding to the selected size, as shown in block 314. In the example of FIG. 4B, when processor 1 10 detects selection of a size in bid/buy drop down menu 402 or sell/offer drop down menu 404, processor 1 10 may transmit a new order with the selected size to server 204 via network 1 16. In a further example, processor 1 1 0 may transmit a new order each time a selection of a size on bid/buy drop down menu 402 or sell/offer drop down menu 404 is detected. That is, processor 1 1 0 may detect multiple size option selections and transmit orders corresponding to the multiple selections for the product specified in the product field. Moreover, processor 1 10 may replace any default bid/buy or sell/offer sizes stored in memory device 1 12 with the new size selected from bid/buy drop down menu 402 or sell/offer drop down menu 404. While the example of FIG. 3B depicts size options, it is understood that processor 1 1 0 may display drop down menus that permit selections of any other order parameter (e.g., order type).

[0022] In a further example, processor 1 1 0 may detect that the cursor moves and hovers over a different row while the status indicator is in hover mode. In response to detecting that the cursor moves and hovers over a different row, processor 1 1 0 may render a bid/buy drop down menu 402 and a sell/offer drop down menu 404 that is associated with the product represented by the different row. Processor 1 1 0 may continue rendering and updating bid/buy drop down menu 402 and sell/offer drop down menu 404 as the cursor is moved over different rows until a second input is detected. For example, if the detected first input was the "F1 " key, processor 1 1 0 may cease rendering bid/buy drop down menu 402 and sell/offer drop down menu 404 when it detects a second actuation of the "F1 " key. That is, the second input may cause processor 1 1 0 to change the status indicator stored in memory device 1 12 from hover mode to any other appropriate status. Once the status indicator is no longer populated with a hover mode indication, processor 1 10 may cease rendering the drop down menus, even when the cursor hovers over a row.

[0023] In yet another example, processor 1 10 may detect that the cursor moves outside GUI trading screen 400 while the GUI is in hover mode. In this instance, processor 1 10 may cease rendering bid/buy drop down menu 402 and sell/offer drop down menu 404 until the cursor is again moved over a row of GUI trading screen 400.

[0024] Allowing an order to be submitted to the network upon selection of a size or order parameter significantly reduces the time is takes to enter a trade. The order may be automatically submitted with the other order parameters (e.g., order type) pre-populated in the transmission. Other information for the order may be preconfigured so that a trader need not manually enter the other information each time an order is generated. This is an improvement over conventional computer technology that requires a trader to manually populate all the fields at the time of order entry. The placement of the drop down menus also permits a user to easily view the price fluctuations so that the user can make a selection when a desired price appears.

[0025] As noted above, while the examples herein show drop down menus that permit order submissions upon selection of a size, it is understood that the drop down menus may display options for a different order parameter. For example, the drop down menus may display different order type options. In this instance, an order may be submitted upon selection of an order type with a default or pre-configured size.

[0026] Advantageously, the above-described apparatus, non-transitory computer readable medium, and method allow order parameters to be entered and transmitted efficiently to mitigate the effects of market volatility. As noted above, such market changes may result from the speed at which modern electronic networks execute orders and updates market data. Rather than changing default parameters or dealing with a time consuming order changing process, the technology disclosed herein allows an order to be entered the instant a desired price appears on the screen. Accordingly, the present description discloses solutions to a problem in the software arts that arises in the realm of computer networking. The disclosed GUI solutions improve the functioning of technology by improving the accuracy of trader transactions.

[0027] Although the disclosure herein has been described with reference to particular examples, it is to be understood that these examples are merely illustrative of the principles of the disclosure. It is therefore to be understood that numerous modifications may be made to the examples and that other arrangements may be devised without departing from the spirit and scope of the disclosure.