System and Method for Dynamically Determining Quantity for Risk Management
US-2015356681-A1 · Dec 10, 2015 · US
US10296975B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10296975-B2 |
| Application number | US-201715458504-A |
| Country | US |
| Kind code | B2 |
| Filing date | Mar 14, 2017 |
| Priority date | Oct 20, 2009 |
| Publication date | May 21, 2019 |
| Grant date | May 21, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Certain embodiments reduce the risks of traditionally programmed algorithms such as syntax errors, unclear logic, and the need for a non-trader programmer to develop the algorithm as specified by a trader by reducing or eliminating the writing of programming code by a user. Certain embodiments provide a design canvas area and blocks for designing an algorithm. Certain embodiments provide for grouping blocks placed in the design canvas area. Certain embodiments provide for virtualized group blocks enabling dynamic instantiation of portions of an algorithm to handle particular discrete events. Certain embodiments provide for operation of some or all portions of an algorithm when a connection between a client device and an algorithm server is broken.
Opening claim text (preview).
The invention claimed is: 1. A method including: displaying by a computing device a design canvas area; receiving by the computing device from a user, in the design canvas area, an arrangement of a plurality of placed blocks, wherein the arrangement of the plurality of placed blocks specifies a definition for a trading algorithm; determining by the computing device a first live feedback value for a first placed block of the plurality of placed blocks, wherein the first live feedback value is determined based on market data and the definition for the trading algorithm; displaying by the computing device the determined first live feedback value in relation to the first placed block; receiving by the computing device a selection of one or more selected placed blocks of the plurality of placed blocks; receiving by the computing device a grouping command; generating by the computing device a group block based on the one or more selected placed blocks in response to the grouping command; placing by the computing device in the design canvas area the group block, wherein the group block includes the one or more selected placed blocks; receiving by the computing device a virtualizing command for the group block; converting by the computing device the group block into a virtualized group block in response to the virtualizing command, wherein the virtualized group block is a block that when a discrete event is received on an input of the virtualized group block, a new instance of the algorithm functionality represented by the one or more selected placed blocks in the virtualized group block is instantiated; and instantiating by the computing device a new instance of the algorithm functionality represented by the one or more selected placed blocks in the virtualized group block when the virtualized group block receives a discrete event on an input of the virtualized group block. 2. The method of claim 1 , wherein each placed block of the plurality of placed blocks is selected by the user from a plurality of available blocks. 3. The method of claim 1 , wherein receiving the arrangement of the plurality of placed blocks from the user includes receiving commands from the user to create the arrangement of the plurality of placed blocks, wherein the first live feedback value is dynamically determined as the commands are received. 4. The method of claim 1 , wherein the first live feedback value is determined for an input of the first placed block. 5. The method of claim 1 , wherein the first live feedback value is determined for an output of the first placed block. 6. The method of claim 1 , wherein the market data is received from an electronic exchange. 7. The method of claim 1 , wherein the market data is received from a simulation environment. 8. The method of claim 1 , wherein first live feedback value is further based on a functionality corresponding to the first placed block. 9. The method of claim 1 , further including: detecting by the computing device the generation of a discrete event; and displaying by the computing device an indicator representing the occurrence of the discrete event. 10. The method of claim 9 , wherein the indicator includes flashing a connection on which the generated discrete event is provided. 11. The method of claim 9 , wherein the indicator includes an animation of an output on which the generated discrete event is provided. 12. The method of claim 9 , wherein the indicator includes an animation on a connection on which the generated discrete event is provided. 13. The method of claim 9 , further including: determining by the computing device a second live feedback value for a second placed block of the plurality of placed blocks, wherein the second live feedback value is determined based on market data and the definition for the trading algorithm; and displaying by the computing device the determined second live feedback value. 14. The method of claim 1 , wherein the input of the virtualized group block is connected to an output of a first block in the plurality of placed blocks that provides fill confirmation discrete events, wherein each fill confirmation discrete event corresponds to at least a portion of a quantity of an order being filled. 15. The method of claim 14 , wherein the algorithm functionality represented by the one or more selected placed blocks in the virtualized group block provides hedging functionality for the at least a portion of the quantity of the order that was filled corresponding to the received discrete event. 16. The method of claim 1 , wherein the plurality of placed blocks includes a second placed block, wherein the functionality corresponding to the second placed block is based on a connection state between the computing device and an algorithm server when the trading algorithm is processed by the algorithm server. 17. The method of claim 16 , wherein the connection state between the computing device and the algorithm server is provided to the second placed block by a connection to an input of the second placed block from a connection state input block.
Interaction techniques to control parameter settings, e.g. interaction with sliders or dials · CPC title
Interaction techniques based on graphical user interfaces [GUI] · CPC title
Finance; Insurance; Tax strategies; Processing of corporate or income taxes · CPC title
Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange · CPC title
Arrangements for executing specific programs · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.