Method and apparatus for implementing quantitative trading strategies
A graphical interface for executing quantitative trading strategies addresses the technical barrier of coding requirements, providing an intuitive and user-friendly method for creating and executing trading strategies.
Patent Information
- Application Number
- JP2024528590
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-11-15
- Publication Date
- 2025-12-01
- Estimated Expiration
- 2041-11-15
AI Technical Summary
Existing quantitative trading strategies require users to have programming skills and knowledge of complex concepts, leading to a high technical barrier and poor user experience.
A graphical interface is used to execute quantitative trading strategies, allowing users to input commands and parameters without writing code, facilitating the creation and execution of trading strategies through a visual interface.
The graphical interface enables intuitive interaction for users, eliminating the need for coding skills and enhancing the user experience in executing trading strategies.
Smart Images

Figure 0007778237000007 
Figure 0007778237000008 
Figure 0007778237000009
Abstract
Description
[Technical Field]
[0001] FIELD Embodiments of the present application relate to the field of software technology, and more particularly to methods and apparatus for implementing quantitative trading strategies. [Background technology]
[0002] The application of quantitative trading strategies in financial markets is becoming increasingly widespread. Quantitative trading strategies have a direct impact on the profits and losses of investors or teams, so quantitative trading strategies are particularly important.
[0003] When creating and executing quantitative trading strategies, users often implement quantitative trading by calling an application programming interface (API) as if writing code in a programming language. This method requires users to have the ability to write program code, such as manually configuring a trading environment, downloading the corresponding API interface, connecting the interface with the corresponding programming software, learning the functions of the API interface, and calling the trading functions to implement automated trading. It also requires users to understand complex concepts such as variables, functions, classes, and Transmission Control Protocol (TCP) connections during programming, and to read extensive API documentation, resulting in a high level of technical hurdles. Furthermore, because all operations are performed through code, users can only monitor account and market information using values returned by the interface, resulting in a poor user experience.
[0004] This calls for a simple method for implementing quantitative trading strategies to meet user needs. Summary of the Invention [Problem to be solved by the invention]
[0005] The embodiments of the present application provide a method and apparatus for executing a quantitative trading strategy, which can realize the execution of a quantitative trading strategy through a graphical interface, eliminating the need for users to have the ability to write program code, improving the user experience. [Means for solving the problem]
[0006] A first aspect provides a method for executing a quantitative trading strategy, comprising: displaying a graphical interface including an execution region; obtaining a first command input by a user; obtaining a first quantitative trading strategy in response to the first instruction, the first quantitative trading strategy including at least one parameter related to actual market execution; adding the first quantitative trading strategy to the execution space to form a first execution record corresponding to the first quantitative trading strategy; Executing the first quantitative trading strategy according to the first execution record and obtaining execution information of the first quantitative trading strategy.
[0007] A second aspect provides an apparatus for implementing a quantitative trading strategy, comprising: a display unit for displaying a graphical interface including the execution region; an acquisition unit for acquiring a first command input by a user; a processing unit responsive to the first instruction for obtaining a first quantitative trading strategy including at least one parameter related to actual market execution; the processing unit is also used for adding the first quantitative trading strategy to the execution space to form a first execution record corresponding to the first quantitative trading strategy; The processing unit is also used to execute the first quantitative trading strategy according to the first execution record and obtain execution information of the first quantitative trading strategy.
[0008] A third aspect provides an electronic device comprising a processor and a memory, the memory being adapted to store a computer program, and the processor being adapted to execute the method of the first aspect by calling and executing the computer program stored in the memory.
[0009] A fourth aspect provides a computer-readable storage medium for storing a computer program that causes a computer to implement the method of the first aspect and any implementation of the first aspect.
[0010] A fifth aspect provides a computer program product comprising computer program instructions that cause a computer to perform the method of the first aspect above and any implementation of the first aspect.
[0011] A sixth aspect provides a computer program which, when executed on a computer, causes the computer to implement the method of the first aspect and any implementation of the first aspect. [Effects of the Invention]
[0012] The present embodiment displays a graphical interface including an execution area, and in response to a user's input, adds a first quantitative trading strategy to the execution area to form a first execution record, executes the first quantitative trading strategy according to the first execution record, and obtains execution information of the first quantitative trading strategy. Thus, the present embodiment realizes the execution of a quantitative trading strategy through a graphical interface that can intuitively interact with a user, eliminating the need for the user to have the ability to write program code and improving the user experience. [Brief explanation of the drawings]
[0013] [Figure 1] FIG. 1 is a schematic diagram of a usage scene used in an embodiment of the present application. [Figure 2] 1 is a schematic flow chart illustrating a method for creating a quantitative trading strategy according to an embodiment of the present application. [Figure 3] 1 is an example illustrating a graphical interface according to an embodiment of the present application. [Figure 4] 1 is an example illustrating a navigation bar of a graphical interface according to an embodiment of the present application. [Figure 5] 1 is an illustration of a strategy canvas of a graphical interface according to an embodiment of the present application; [Figure 6] 1 is an example illustrating a parameter setting interface according to an embodiment of the present application. [Figure 7A] 10 is another example illustrating a parameter setting interface according to an embodiment of the present application. [Figure 7B] 10 is another example illustrating a parameter setting interface according to an embodiment of the present application. [Figure 8A] 1 is an example illustrating a run list according to an embodiment of the present application. [Figure 8B] 10 is another example of a run list according to an embodiment of the present application. [Figure 9] 10 is an example illustrating a transaction password window according to an embodiment of the present application. [Figure 10] FIG. 1 is a schematic block diagram illustrating an apparatus for implementing a quantitative trading strategy according to an embodiment of the present application. [Figure 11] FIG. 1 is a schematic block diagram illustrating an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION OF THE INVENTION
[0014] The following examples, in combination with the drawings in the present application, clearly and completely explain the technical solutions in the present application, and the clear and explained examples do not represent all examples, but only some examples of the present application. Based on the examples in the present application, all other examples that can be obtained by those skilled in the art without creative work belong to the scope of protection of the present application.
[0015] In the examples of the present application, it should be understood that "B corresponding to A" indicates that B is related to A, and that B can be determined by A. However, it should be further understood that determining B by A does not simply mean that B is determined by A, but that B can also be determined by A and / or other information.
[0016] In this description, unless otherwise specified, "at least one" refers to one or more, and "plurality" refers to two or more. Furthermore, "and / or" describes a relationship between related objects and indicates a three-way relationship. For example, A and / or B can refer to three cases: A exists singly, A and B exist simultaneously, and B exists singly, where A and B may be singular or plural. The character " / " generally indicates an "or" relationship between adjacent related objects. "At least one of" or similar expressions refers to any combination of these items, including any combination of single or multiple items. For example, "at least one of a, b, or c" can refer to a, b, c, ab, ac, bc, or abc, where a, b, and c may be singular or plural.
[0017] It should be further understood that the descriptions such as "first," "second," etc. appearing in the embodiments of the present application are intended to indicate and distinguish the objects of description, and do not distinguish between sequential orders, do not indicate any particular limitations on the number of devices in the embodiments of the present application, and do not constitute any limitations on the embodiments of the present application.
[0018] It should be further understood that particular features, structures, or characteristics associated with any embodiment in the specification may be included in at least one embodiment of the present application, and that the particular features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0019] It should be noted that the terms "comprise" and "have" and any variations thereof are intended to cover a non-exclusive inclusion, for example, a process, method, system, product or apparatus comprising a series of steps or units is not necessarily limited to those expressly listed and may include other steps or units not expressly listed or inherent in the process, method, product or apparatus.
[0020] 1 is a schematic diagram of a usage scenario according to an embodiment of the present application. The usage scenario relates to an electronic device 101, which may be various terminal devices such as, but not limited to, a smartphone (e.g., an Android mobile phone, an iOS mobile phone, a Windows Phone mobile phone, etc.), a tablet, a handheld device, a laptop, a mobile Internet device, a wearable device, an in-vehicle device, etc. The terminal device may also be called, but not limited to, user equipment (UE), a terminal, or a user device.
[0021] Optionally, the electronic device 101 can transfer data with a server (e.g., a quote server) via wireless communication technology. Exemplarily, the electronic device 101 shown in FIG. 1 may be in a client / server (C / S) mode, where the client can retrieve data from a service side (e.g., a server). As a specific example, the client can adopt a Model-View-Presenter (MVP) architecture to separate the interface, data manipulation, data warehouse, etc.
[0022] In an embodiment of the present application, for example, the electronic device may display a graphical interface including an execution area, the execution area including an execution record corresponding to at least one quantitative trading strategy and execution information of the quantitative trading strategy corresponding to the execution record, and a user may operate the electronic device 101 to add a first graphical quantitative trading strategy to the execution area to form a first execution record corresponding to the first quantitative trading strategy, and then execute the first quantitative trading strategy using the first execution record to obtain execution information of the first quantitative trading strategy.
[0023] By way of example, the target of quantitative trading in embodiments of the present application may be, but is not limited to, a product such as a futures contract, a stock, or a fund.
[0024] It should be noted that the use scenarios shown in Fig. 1 are only used to illustrate the embodiments of the present application, and are not intended to be limiting. In specific implementation, the technical solutions of the embodiments of the present application can be applied according to actual needs.
[0025] 2 is a schematic flowchart of a method 200 for implementing a quantitative trading strategy according to an embodiment of the present application. Method 200 may be performed by electronic device 101 in FIG. 1 or a circuit or chip provided in electronic device 101. As shown in FIG. 2, method 200 includes steps 210 to 240.
[0026] 210, displaying a graphical interface, the graphical interface including an execution region;
[0027] Illustratively, the execution area includes an execution record corresponding to at least one quantitative trading strategy, and execution information for the quantitative trading strategy corresponding to the execution record.
[0028] For example, the interface of an application program (APP) installed on a terminal device may display a graphical interface for users to create quantitative trading strategies, and the APP may be, but is not limited to, a desktop APP or a mobile phone APP.
[0029] Illustratively, a quantitative trading strategy may include at least one graphical control, such as, but not limited to, a start control, a condition control, or an event control, where a user can obtain the quantitative trading strategy by editing attribute parameters of the at least one graphical control.
[0030] The process of combining the display interfaces of the APP to create a graphical quantitative trading strategy is described in detail below. It should be understood that the interface diagrams in the following examples are for easy understanding of the technical solutions provided by the examples of the present application, and do not limit the technical solutions of the present application.
[0031] 3 illustrates one example of a graphical interface, which includes an execution area 300, which may include an execution list 310 and execution information 320. As shown in FIG. 3, execution list 310 may include execution records of at least one quantitative trading strategy, and execution information 320 is used to display execution information of the quantitative trading strategy corresponding to the execution record in the execution list.
[0032] For example, as shown in FIG. 3 , each execution record may include information related to one quantitative trading strategy, such as at least one of a serial number, strategy name, status, target, account, execution time, and target frequency, so that customers can learn about strategy execution information. The serial number may indicate the order in which the execution record is added to the execution list, such as 1, 2, 3, 4, etc. The strategy name may indicate the name of the quantitative trading strategy corresponding to the execution record, such as Strategy 1, Strategy 2, Strategy 4, etc. The status may indicate the execution status of the quantitative trading strategy corresponding to the execution record, such as running and stopped. The target may indicate the target for the quantitative trading strategy corresponding to the execution record, such as Tencent Holdings, Alibaba, etc. The account may indicate the account for the quantitative trading strategy corresponding to the actual market trading execution record, such as Hong Kong Stock Lending Account (9856), etc. The execution time is used to indicate the execution time of the quantitative trading strategy corresponding to the execution record, and the target frequency is used to indicate the target frequency for the quantitative trading strategy corresponding to the execution record, such as daily K.
[0033] 3 , for example, execution area 320 includes at least four areas, each of which is at least one of position and order status 321, profit summary 322, execution log 323, and trend graph 324. Each area shows the status of the quantitative trading strategy from a different perspective. For example, position and order status 321 shows the position and order status of the account of the quantitative trading strategy corresponding to the execution record. Profit summary 322 is used to show the profit risk expression of the quantitative trading strategy corresponding to the execution record in the form of quantitative targets. Execution log 323 is used to communicate the quantitative trading strategy corresponding to the execution record to the user in white text form and help the user monitor the execution status of the strategy. Trend graph 324 is used to show a K-line diagram of targets for the quantitative trading strategy corresponding to the execution record, allowing the user to compare strategy buy / sell points and easily analyze the cause of profit risk.
[0034] Optionally, each field in the execution area may show execution information for the quantitative trading strategy corresponding to the execution record selected in the execution list. In some embodiments, the execution information in the execution area changes as the execution record in the execution list is switched.
[0035] Illustratively, the return summary 322 may show return metrics for the corresponding strategy in the form of a list. The list may change as the user switches between execution records in the execution list. The return metrics may include, for example, at least one of total return, intraday return, total yield, intraday yield, and Sharpe ratio.
[0036] For example, the trend graph 324 shows the execution target and the target displayed in the event control. When a user enters Start Execution, the K line can be dynamically generated based on the actual market. Here, the quote-K line area in the client can be reused. Also, differences from the quote-K line area in the original client include, but are not limited to, the removal of line drawing functions and indicator management. Optionally, two types of buying and selling points, such as order points and trade points, can be displayed in different styles in the K line simulation, but are not limited to these. For example, order points can indicate the time when a user places an order, and trade points can indicate the time when a trade is executed after the user places an order. Optionally, the upper part of the K line simulation can switch K line periods, such as hourly, several days, day K, week K, season K, year K, 1 minute K, 3 minutes K, 5 minutes K, 15 minutes K, 30 minutes K, 1 hour K, 2 hours K, 4 hours K, and ticks, but are not limited to these. After switching the K line period, the curve changes accordingly. The default K-line cycle can be switched according to the strategy frequency, for example, if the strategy cycle is day K, the displayed K-line cycle is day K. The number of targets can be selected and displayed according to the number selected by the user. The displayed layout can be arranged vertically by default, and if there is not enough space for the layout, it can be expanded using a scroll bar. Furthermore, an unlimited number of combinations of multiple shapes can be formed.
[0037] For example, the Position and Order Status 321 can switch accounts, can selectably display the account corresponding to a strategy by default, and can support, but is not limited to, switching between a position list or a history order list, data export, order inquiry, and the like.
[0038] In some alternative embodiments, referring to FIG. 4, the graphical interface further includes a navigation bar 310. As shown in FIG. 4, the navigation bar 310 may display at least one quantitative trading strategy (e.g., Strategy 1, Strategy 2, Strategy 3, New Strategy, New Strategy 1, New Strategy 2, etc.). Optionally, the navigation bar 310 may also display the status of the quantitative trading strategy, e.g., backtesting. Optionally, the navigation bar may also display an icon for a new quantitative trading strategy, e.g., a "+" or the like.
[0039] 5, the graphical interface may further include a navigation bar 340. The strategy canvas 340 is used to create a quantitative trading strategy, for example, a user may add at least one graphical control to the strategy canvas to form a corresponding box and connect the controls via connecting lines to establish the quantitative trading strategy. Optionally, the graphical interface may include an attribute box for editing attribute parameters of the controls in the strategy canvas.
[0040] 220, receiving a first instruction input from a user, the first instruction being used to instruct adding an actual market execution quantitative trading strategy, for example, a first quantitative trading strategy;
[0041] In a first possible implementation, the first instruction can be obtained via a first entry for a first quantitative trading strategy in the navigation bar.
[0042] 4, a user may click, long press, hover over, or right-click a button representing a first quantitative trading strategy (e.g., Strategy 3) in navigation bar 330 to display a first entry, e.g., Add Execute button 41. By clicking, long press, or right-clicking the Add Execute button 41, the user may input the first command to add Strategy 3 to the actual market execution. In response, the electronic device obtains the first command input by the user through the Add Execute button 41 and further determines to add Strategy 3 to the actual market execution.
[0043] Selectively, after operating the button of Strategy 3, other buttons such as Rename, Delete, Copy, etc. can be displayed, and the electronic device can obtain the corresponding operation instructions for Strategy 3 input by the user from these buttons, but are not limited thereto.
[0044] In a second possible implementation, the first instruction can be obtained via a second entry point of the first quantitative trading strategy in the Strategy Canvas.
[0045] 5 , when displaying a first quantitative trading strategy on the strategy canvas 340, a user can click, hold, hover, or right-click the strategy execution button in the strategy canvas 340 to display a second entry point, such as the actual market button 42. By clicking, holding, or right-clicking the actual market button 42, the user inputs the first command, indicating that the first quantitative trading strategy displayed on the strategy canvas 340 should be added to the actual market execution. In response, the electronic device obtains the first command input by the user through the actual market button 42 and determines that the first quantitative trading strategy displayed on the strategy canvas 340 should be added to the actual market execution.
[0046] Optionally, after operating the strategy execution button, other buttons such as backtesting may be displayed, from which the electronic device can obtain, without limitation, corresponding operational instructions for the first quantitative trading strategy in the strategy canvas 340 entered by the user.
[0047] In a third possible implementation, the first instruction can be obtained via a third entry point displayed in the execution area.
[0048] Referring to FIG. 3 , the user can then click, hold, or right-click the Add+ button 43 in the execution list 310, and input the first command above, indicating that an actual market execution needs to be added to the quantitative trading strategy.
[0049] In a fourth possible implementation, the first command can be obtained via a fourth entrance displayed in the navigation bar 330 .
[0050] Referring to FIG. 4, the user can then click, hold, or right-click the Execution+ button 43 in the navigation bar 330, and input the first command above, indicating that actual market execution needs to be added to the quantitative trading strategy.
[0051] In the embodiment of the present application, the navigation bar, the action list, and the strategy canvas are all provided with different entrances (e.g., button tabs) to obtain the first command entered by the user, which helps reduce the frequency with which the user switches tabs unnecessarily, improves the user's operating efficiency, and further enhances the user's experience.
[0052] Although the above four methods for obtaining the first command have been described, the embodiments of the present application are not limited thereto. For example, the user may also input the first command through other entrances in the graphical interface, or through other modules or units of the electronic device, such as a voice input unit, and the present application is not limited thereto.
[0053] 230, in response to the first instruction, obtaining a first quantitative trading strategy, the first quantitative trading strategy including at least one parameter related to actual market execution.
[0054] In some alternative embodiments, in response to the first instruction, a parameter setting interface for the first quantitative trading strategy is displayed, and at least one parameter related to actual market execution is then received from a user via the parameter setting interface. Illustratively, the parameter setting interface may be a pop-up window, and, for example, in response to the first instruction, a parameter setting interface pop-up window may be popped up to allow a user to input at least one parameter related to actual market execution of the quantitative trading strategy.
[0055] Therefore, in the embodiment of the present application, the user can use the parameter setting interface to combine his / her own situation and set the corresponding parameters in a personalized manner, thereby improving the user experience.
[0056] Illustratively, the parameters related to actual market execution include at least one of a strategy name, a trading account, and a frequency parameter, where the frequency parameter includes an execution target and / or an execution frequency. Here, the strategy name is the name of a quantitative trading strategy that a user needs to add to actual market execution. Optionally, a user can add a corresponding strategy according to their needs. The trading account is an account for strategy execution. Optionally, a user can select an appropriate account based on information such as the account's financial status, brokerage firm, etc. The frequency parameter may include an execution parameter group (also referred to as a target group), for example, including an execution target and a frequency, where the execution target indicates that the strategy is triggered to execute once when data is pushed at a predetermined frequency.
[0057] In some alternative embodiments, referring to Figure 6, an example of a parameter setting interface 350 is shown. As shown in Figure 6, a strategy can be selected by a drop-down option, for example, an enumerated drop-down menu, where the enumerated option may be a quantitative trading strategy in a navigation bar.
[0058] Optionally, the strategy name displays different default values depending on the manner in which the execution parameter settings are entered. For example, in an implementation that obtains the first possible order of the first type, the default value of the strategy name may be Strategy 3; for example, in an implementation that obtains the second possible order of the first type, the default value of the strategy name may be the first quantitative trading strategy selected in the strategy canvas; for example, in an implementation that obtains the third or fourth possible order of the first type, the default value of the strategy name may be empty.
[0059] Continuing with reference to Figure 6, after a strategy is selected, the user needs to select an account for actual market trading. Illustratively, the account can be selected by a drop-down option, such as an enumerated drop-down menu, where the enumerated options may be, but are not limited to, all accounts owned by the user or a subset thereof. The default value of the account can be determined according to the following three circumstances:
[0060] Situation 1: There is one corresponding account Illustratively, the corresponding account logic detects the market corresponding to the target in the first transaction event (e.g., order, cancellation) in the canvas, and adopts the account that used this market as the corresponding account. At this time, the default value of the account indicates the account that matches the strategy selection. For example, see FIG. 7A, if the strategy application target selects stock in the start box 360, the account defaults to the stock account, e.g., account 1.
[0061] Situation 2: There are two and more than two corresponding accounts In this case, the default value of the account is shown as empty.
[0062] Situation 3: The user has not opened a related account At this time, the account default value will be shown as empty, but you can drop down to see other accounts.
[0063] In one embodiment of the present application, the number of execution parameter groups may be one, two, or more, each execution parameter group corresponding to the same strategy, each execution parameter group may include one, two, or more targets, and each execution parameter group may include targets and frequency parameters corresponding to the targets, each target may correspond to one type of frequency parameter, and the frequency parameters corresponding to each target may be the same or different.
[0064] Continuing with FIG. 6 , after selecting an account, the user can enter frequency-related parameters. For example, a user can use the New button 61 in the parameter setting interface 350 to create a set of execution parameter groups, such as execution parameter group 62 and execution parameter group 63, which include at least one target and a corresponding execution frequency for each target, for assigning the target to a quantitative trading strategy for execution and trading. Optionally, multiple groups of parameters can be packaged together as a single execution record, e.g., packaging execution parameter group 62 and execution parameter group 63 as a single execution record, which corresponds to assigning multiple groups of parameters (e.g., parameter group 62 and parameter group 63) to a similar strategy and packaging them as the same portfolio. Thus, by configuring multiple groups of execution parameter groups, the present embodiment is useful for monitoring multiple groups of targets using a single set of code, while reducing the number of repeated execution field operations.
[0065] For example, the number of execution parameter groups can be limited, e.g., one quantitative trading strategy can support up to five execution parameter groups, although this application is not limited thereto. In some embodiments, when the number of execution parameter groups reaches the upper limit, the new button 61 is disabled and text such as "The number of execution parameter groups has reached the upper limit" is displayed over the execution parameter groups, although this application is not limited thereto.
[0066] Continuing with reference to FIG. 6 , in this embodiment, the names of the execution parameter groups may be set to enhance the visibility of each execution parameter group. The names of the execution parameter groups may be written with serial numbers, may be set by the user, or may be determined by the names of the execution targets. For example, if there is only one execution target in execution parameter group 62 and execution parameter group 63, the name of execution parameter group 62 may be named Execution Target 1 and the name of execution parameter group 63 may be named Execution Target 2. Referring to FIG. 7B , the execution target names may be displayed to match the names of the trigger execution target parameters set in the start box 360, such as Execution Target 1 or Execution Target 2, but this application is not limited thereto. Optionally, the execution parameter settings do not support modification of the execution target names. If necessary, modification can be made in the start box.
[0067] Optionally, the execution parameter group can include a target name and an execution frequency. As shown in FIG. 6, the target name can be determined by searching the enumeration. Optionally, the default value can be displayed as empty or can be modified according to user needs. For example, a drop-down option can be used to set Execution Target 1 to "Tencent Holdings" or "Ping An China." Here, the target indicates the target that triggers execution; that is, when data is pushed at the set frequency, the execution target triggers the entire strategy to execute once. Optionally, the number of targets corresponds to the number set in the Start box 360 and cannot be changed.
[0068] Continuing with reference to FIG. 6 , a drop-down option, such as an enumerated drop-down menu, can be set to select the frequency. Exemplarily, the frequency may be, but is not limited to, day K, 1 minute K, 3 minutes K, 5 minutes K, 15 minutes K, 30 minutes K, 60 minutes K, Tick, or run only once. Selectably, the default value may be 1 minute K. Here, the frequency setting is the frequency setting of the execution target, and data at that frequency of the execution target is subscribed to. If there are multiple execution targets, multiple subscriptions are possible.
[0069] Optionally, parameter option data in the parameter setting interface can be obtained based on the current user. For example, when initializing a parameter setting interface (e.g., a pop-up window), the user's strategy list data can be obtained, including basic information about the strategy (e.g., target group, execution start time, execution duration, remaining unlock time, etc.) and basic information about the execution parameter group corresponding to the strategy (e.g., signal target, frequency, etc.), and the user's account list data can be obtained, including, but not limited to, account basic information, etc. In some other embodiments, the data acquisition time can be delayed until the data is needed, and the present application is not limited thereto.
[0070] The strategy selection control can be used to selectively change the strategy selection item, triggering a change in the basic information of the current execution parameter group and clearing the entire execution parameter group display area at the same time. When used to add an execution parameter group, an overall control containing the execution parameter group contents can be generated based on the basic information of the current execution parameter group. When a user deletes an execution parameter group, the overall control corresponding to the execution parameter group can be deleted. In some embodiments, after changing strategy options, the execution parameter group data of the previous strategy can be retained so that the execution parameter group data can be redisplayed when returning to the originally selected strategy.
[0071] JPEG0007778237000001.jpg59170
[0072] JPEG0007778237000002.jpg61170
[0073] In some alternative embodiments, the parameter setting interface displays a record description of the first quantitative trading strategy. If the first quantitative trading strategy has been backtested, the record description is used to describe the backtest results of the first quantitative trading strategy. If the first quantitative trading strategy has not been backtested, the record description is used to describe that the first quantitative trading strategy has not been backtested and / or to recommend backtesting the first quantitative trading strategy. If the first quantitative trading strategy is updated after backtesting, the record description is used to describe the backtest results of the first quantitative trading strategy before the update and to recommend backtesting the updated first quantitative trading strategy.
[0074] Continuing with reference to FIG. 6, for example, after selecting a strategy in the parameter setting interface, if the selected strategy is not detected, a message may appear prompting the user to detect it, and the confirmation button may be disabled. If the selected strategy is detected, a record description of the selected strategy may be displayed on the interface. The record description may display information related to the selected strategy, such as whether to backtest it, how much profit it has made, etc. Specifically, three situations can be distinguished.
[0075] Situation 1: No backtesting
[0076] Specifically, if a user does not backtest a strategy that is to be added to the actual market, there is a risk of manipulation, and in this case, the user can be prompted to backtest it, for example, by displaying a message such as "This strategy has not been backtested historically. We recommend that you backtest it to see how the strategy performs."
[0077] Situation 2: Backtested the current version (i.e. the latest version)
[0078] Specifically, the user may backtest the latest version of the strategy and display the backtest results. Illustratively, the backtest results may include at least one of annualized returns, interval returns, volatility, and backtest intervals.
[0079] Furthermore, this embodiment can backtest the quantitative trading strategy and then adjust the quantitative trading strategy based on the backtest results.
[0080] Situation 3: Backtesting a non-current version
[0081] Specifically, if a user backtests a strategy but subsequently modifies it and does not backtest it after modification, the results of the previous backtest can be displayed, and at the same time, the user is encouraged not to backtest the strategy after modification, and it is recommended that the user backtest the current version.
[0082] Optionally, the backtest information of the strategy may be included in the strategy list data acquired when the parameter setting interface (e.g., a pop-up window) is initialized, and the strategy options may be changed to trigger backtesting using the strategy selection control, resulting in a change in the displayed content. For example, for a strategy that has not undergone backtesting, a backtest reminder area may be displayed, a backtest data area may be hidden, and the content of the backtest reminder area may be changed to prompt the user to backtest; for a strategy that has backtested its current version, a backtest reminder area may be displayed, a backtest data area may be displayed, and the content of the backtest reminder area may be changed to strategy type text, with the backtest data changed to the backtest data of the selected strategy; and for a strategy that has backtested a non-current version, a backtest reminder area may be displayed, a backtest data area may be displayed, and the content of the backtest reminder area may be changed to recommend the user to backtest.
[0083] In some optional embodiments, the parameter execution setting interface may prompt the user about risks, such as prompting the user to check legal terms to disclose trading risks, allowing the user to understand the risk points of actual market execution. Referring to FIG. 6 , below the parameter box, the user is prompted to check "I have read and accepted the API Developer License Agreement and disclaimer" before proceeding to the next step. Optionally, once the user checks the box once, the system can automatically check it the next time, improving the user experience. Optionally, the text can be set as a hyperlink, which can pop up detailed legal terms or disclaimers after the user clicks. Optionally, if the legal terms are not checked, the confirmation button in the parameter setting interface can be disabled, disabling the confirmation button control.
[0084] In some alternative embodiments, after the user has completed setting the execution parameters, parameters related to the actual market execution of the strategy may be detected, or the quote authority of the user's trading account may be detected.
[0085] Illustratively, detecting parameters related to the strategy's actual market execution can include detecting between the strategy, the account, and the target group, thereby helping the user identify errors early. Optionally, the user may be prompted to make corrections to reduce or prevent errors from occurring when the strategy enters actual market execution, resulting in unnecessary losses to the user's assets. If the strategy fails detection, the quant component can prompt the user to correct the strategy; otherwise, the strategy cannot be added to the execution list, meaning the strategy cannot be added to actual market execution.
[0086] In one possible implementation, there can be detection between strategies and accounts. For example, the strategy type must match the account type, e.g., a securities strategy can only be executed under a securities account and not under a futures account, and similarly, a futures strategy can only be executed under a futures account. Otherwise, a text prompt error will occur and the confirm button can be disabled.
[0087] As a specific example, if the type of the first quantitative trading strategy placed by the user in the start box is securities, but the user selects a futures account in the execution parameter setting interface, the strategy type does not match the account type; in this case, an error can be reported and the user can be prompted with text such as, "The account is inconsistent with the strategy type; select a futures account or modify the strategy type in the start box."
[0088] Another possible implementation is to detect the relationship between the account and the target. For example, the account must maintain a match between the targets, e.g., a futures account smartly trades futures-type targets and cannot trade stocks, options, etc., while a securities account only trades stocks, options, etc. and cannot trade futures. Also, for example, when a user uses an execution target in a trading event (e.g., order, cancel) on the strategy canvas, it is necessary to detect whether the execution target type matches the account type. Otherwise, a text prompt error will occur and the confirm button can be disabled.
[0089] As a specific example, when a user selects a futures account in the execution parameter setting interface, if the target selection is Tencent Holdings, an inconsistent situation will occur, and an error can be reported to prompt the user with a text such as, "This account type is inconsistent with the target type. Please select the target type of the futures account."
[0090] For example, after the parameter settings are complete, a quote authority detection may be performed on the user's account, and during the actual market execution of the strategy, it may be determined whether the user's current quote authority can cover the quote authority required for the strategy. As a specific example, suppose the user's current authority is Hong Kong stock BMP quote authority, but the strategy uses 10 file quotes (LV2 authority), then the user may be prompted to purchase quote authority or modify the strategy.
[0091] In some alternative embodiments, parameter detection can be completed during two interactions, which are described below.
[0092] In one interaction process, after the corresponding parameter setting is completed, it can detect whether the parameter content is valid, for example, it can include at least one of the following detections: 1. When the account selection framework changes the account selection item, when a strategy is selected, it detects whether the type matches the basic data of the selected account and the basic data of the selected strategy; 2. When the target selection control changes the target selection item, it detects whether the required permissions are included from the data of the selected target and the basic data of the target group corresponding to the selected strategy, and when a strategy is selected, it detects whether the types match from the data of the selected target and the basic data of the selected strategy.
[0093] In the other interaction process, after completing the parameter setting confirmation, it can detect whether the parameter content is complete, for example, it can include at least one of the following detections: 1. Detect the selected effective strategy; 2. Detect the selected valid account and ensure that the account type matches the strategy type. 3. Detect the selected valid data of each target in the target group, and the corresponding authority and target type of the target match the strategy type; 4. Detect that legal conditions have been checked.
[0094] 240, adding the first quantitative trading strategy to the execution domain to form a first execution record corresponding to the first quantitative trading strategy.
[0095] For example, after completing parameter detection related to the actual market execution of the first quantitative trading strategy, the first quantitative trading strategy is added to the execution list, and an execution record corresponding to the first quantitative trading strategy, i.e., a first execution record, is generated. For example, by clicking the Confirm button in the execution parameter setting interface, the detected strategy is added to the execution list, and one execution record is added to the execution list.
[0096] 250, executing the first quantitative trading strategy according to the first execution record, and obtaining execution information of the first quantitative trading strategy.
[0097] For example, a second command input by a user can be obtained through the entry provided by the first execution record, and the execution status of the first quantitative trading strategy can be controlled in response to the second command, for example, by starting the execution of the first quantitative trading strategy and obtaining execution information of the first quantitative trading strategy.
[0098] Optionally, the first execution record may cause the execution of the first quantitative trading strategy to stop, for example, by receiving a third instruction input from a user via an entry provided by the first execution record, and stopping the execution of the first quantitative trading strategy in response to the third instruction.
[0099] That is, the execution state of the first quantitative trading strategy includes running or stopped. Optionally, multiple strategies can be supported for execution simultaneously.
[0100] In one possible implementation, referring to FIG. 8A, the execution record in the execution list 310 may include an operation column 64, which may include a "start" or "stop" button, and the user may click on the "start" or "stop" button to toggle the execution state of the corresponding strategy.
[0101] As another possible implementation, referring to FIG. 8B , by operating (e.g., clicking, right-clicking, or hovering over) the execution record of a strategy, an operation box 65 can be displayed, in which a button for switching the state of the strategy can be displayed. For example, in FIG. 8B , for strategy 1 that is currently being executed, a stop execution button can be popped up by right-clicking the mouse, and the button can be used to stop the execution of strategy 1. Also, for a strategy that is currently stopped, a start execution button can be popped up by operating, and the button can be used to start the execution of the strategy. When displaying the button for switching the state of a strategy, other buttons, such as edit, delete, or other buttons, may be displayed, and this is not limited thereto.
[0102] In some alternative embodiments, if an error report occurs during the execution of a strategy, the strategy's state can automatically switch to stopped, optionally prompting the user via a pop-up window or execution log.
[0103] In some alternative embodiments, the contents of the run list can be managed by the framework. Illustratively, when a "Start" or "Stop" button is clicked, the contents in the run list can be stored in the data interface, and when a "Delete" or "Stop Run" button is right-clicked, the contents can be stored in the data interface. Similarly, when the data interface is modified, the run list can be notified via an event to update its contents in real time.
[0104] In some alternative embodiments, when the first quantitative trading strategy is added to the execution list for the first time, when the validity period of the first quantitative trading strategy in the execution list expires, or when the first quantitative trading strategy is restarted after stopping execution, a trading password interface, such as a trading password window as shown in FIG. 9, is displayed, and the trading password entered by the user is then obtained through the trading password interface. That is, in these three cases, the user needs to unlock the device, which ensures the safety of the user's funds and reduces the risk of trading by others due to the screen of the terminal device (e.g., computer, smartphone, etc.) being unlocked.
[0105] For example, when adding a first quantitative trading strategy to the execution list for the first time, after the user completes the execution parameter setting interface, it is detected whether the user has unlocked the strategy. If it is detected that the user has not unlocked the strategy, a trading password window such as that shown in FIG. 9 may pop up. The user may only successfully unlock the strategy if the correct trading password is entered. Only after successfully unlocking the strategy may the quantitative trading strategy be added to the execution list; otherwise, it may not be added. Optionally, after successfully unlocking the strategy, the window may be closed and the user may return to the execution parameter setting interface.
[0106] Optionally, multiple execution records within the quant component can be unlocked individually by broker in the user's representation, i.e., unlocking execution records for different brokers does not interfere with each other, and execution records for the same broker and running can share unlock markets, e.g., based on the most recent.
[0107] In some embodiments, the unlock status of a quant component may not be shared with the unlock status of a manual order in the APP, e.g., if a user unlocks in another module, it does not affect the unlock status of a single run record in the quant component.
[0108] In some embodiments, the execution list can set the unlock time for each execution record as the validity period corresponding to the execution record. For example, when a strategy is continuously running, the validity period may be 14 days, and when the strategy is stopped, the validity period may be 15 minutes. Optionally, the client can automatically initiate a ticket streak request before the ticket expiration date to extend the unlock period. Optionally, the validity period can be recounted if the user re-enters their password within the validity period (e.g., to start another strategy or restart a paused strategy in the execution record). When the ticket streak reaches the limit, the user's script can be stopped based on an error code returned from the server, for example, by changing the execution record status to stopped and prompting the user with text in the execution log. If the unlock time in the running state is shorter than one day, the user is prompted that the expiration date is approaching.
[0109] For example, when a strategy is continuously running, the user can click "Unlock" to manually update the validity period, which will pop up a window for entering a trading password. After correctly entering the password, the validity period of the same brokerage firm and the currently running execution record will be updated to 14 days. When a strategy is in a stopped state, the Unlock button can be disabled, and the user will not be able to manually update the validity period.
[0110] For example, if the execution of the first quantitative trading strategy is stopped and then restarted, when the user restarts the execution record that is stopped and the unlock validity period has expired, a parameter setting pop-up window may be displayed. After the user fills in the information and clicks confirm, a trading password window may pop up, allowing the user to unlock it again.
[0111] In some alternative embodiments, the unlock validity period and duration behavior can be managed by the same platform. When the duration period approaches, the user can be prompted to continue (e.g., in an execution log or a pop-up window). Also, when the validity period expires or the continuation fails midway, the execution log or a pop-up window can prompt the user to unlock again.
[0112] Optionally, the execution record may include, but is not limited to, the remaining unlock time, an unlock status update button, etc. Exemplarily, the remaining unlock time in the execution list may be obtained through a data interface. For example, when a strategy is first created or when the validity period is subsequently updated by an operation such as unlocking, the remaining password unlock time is obtained. After obtaining the remaining time, the remaining time is calculated using a timer. Optionally, the remaining unlock time in the execution list may be updated every minute.
[0113] Therefore, the present embodiment displays a graphical interface including an execution area, and in response to a command input by a user, adds a first quantitative trading strategy to the execution area to form a first execution record, executes the first quantitative trading strategy using the first execution record, and obtains execution information for the first quantitative trading strategy. Therefore, the present embodiment can realize the execution of a quantitative trading strategy through a graphical interface that intuitively interacts with a user, eliminating the need for the user to have the ability to write program code and improving the user experience.
[0114] In addition, after the method for executing a quantitative trading strategy provided by the embodiments of the present application achieves automated trading, the execution area can display execution information of the quantitative trading strategy corresponding to the execution record, such as profit summary, K-line trend graph, position and history order, execution log, etc., which can help users analyze the effectiveness of the strategy and further improve the user experience.
[0115] In some alternative embodiments, the strategy canvas allows the strategy to be modified. Correspondingly, the performance record can be updated in real time according to the update of the strategy in the strategy canvas. For example, the following two situations can be distinguished:
[0116] Situation 1: Modifying a strategy during execution
[0117] This does not affect the execution record, i.e., the execution record associated with the strategy is not affected by the user's modifications in the strategy canvas, and retains the parameters and strategy execution set when adding to the execution. Optionally, the canvas can prompt the user to execute the strategy, and the modified strategy does not affect the execution. If the updated strategy needs to be executed, the strategy can be paused and then restarted.
[0118] When restarting the execution record of the modified strategy after stopping, a parameter setting interface for execution will be popped up to prompt the user to fill in the parameters. At the same time, the parameter setting interface can prompt the user that the strategy has been modified and the parameters need to be rearranged.
[0119] Situation 2: Correcting a Strategy that is Suspended
[0120] At this time, the execution record is affected, i.e., the execution record can be updated to the latest strategy. For example, the execution record of the modified strategy can be stopped and then restarted, and an execution parameter setting interface can be popped up to allow the user to enter parameters. At the same time, the parameter setting interface can prompt the user that the strategy has been modified and parameters need to be rearranged.
[0121] In some alternative embodiments, when a row in the execution list is selected, other modules in the execution domain may accordingly switch to the execution information of the strategy corresponding to the selected execution record.
[0122] In some alternative embodiments, the execution list supports operations such as editing and deleting. For example, for a selected execution record, an edit or delete button can be popped up by right-clicking the mouse. If the user selects edit, an execution parameter setting interface can be popped up, allowing the user to modify the parameters. Optionally, if a strategy is in a running state, the edit button may not be popped up by right-clicking the mouse. Also, the strategy and account in the execution parameter setting interface may not support modification, for example, be set to disabled.
[0123] Although the specific embodiments of the present application have been described in detail above in conjunction with the drawings, the present application is not limited to the specific details of the above embodiments, and various simple modifications can be made to the technical solutions of the present application within the technical concept of the present application, and all of these simple modifications fall within the scope of protection of the present application. For example, the specific technical features described in the above specific embodiments can be combined in any appropriate manner if not contradictory, and in order to avoid unnecessary repetition, the present application does not separately describe various possible combinations. For example, various different embodiments of the present application can be combined in any manner, and as long as they do not deviate from the concept of the present application, they will also be considered as the content disclosed in the present application.
[0124] Furthermore, in various method embodiments of the present application, the magnitude of the serial numbers of the above steps does not imply an order of execution, and the execution order of each step should be determined based on its function and inherent logic, and should not be construed as limiting the implementation order of the embodiments of the present application. It should be understood that these serial numbers can be interchanged where appropriate so that the described embodiments of the present application can be implemented in an order other than that shown or described.
[0125] Hereinafter, an embodiment of the device of the present invention will be described in detail with reference to FIGS.
[0126] 10 is a schematic block diagram of an apparatus 400 for implementing a quantitative trading strategy according to an embodiment of the present application. As shown in FIG. 10, the apparatus 400 may include a display unit 410, an acquisition unit 420, and a processing unit 430.
[0127] The display unit 410 is used to display a graphical interface including the execution area; The acquiring unit 420 is used to acquire a first command inputted by a user; a processing unit 430, in response to the first instruction, for obtaining a first quantitative trading strategy including at least one parameter related to actual market execution; the processing unit 430 is also used to add the first quantitative trading strategy to the execution space to form a first execution record corresponding to the first quantitative trading strategy; The processing unit 430 is also used to execute the first quantitative trading strategy according to the first execution record and obtain execution information of the first quantitative trading strategy.
[0128] Optionally, the processing unit 430 specifically: In response to the first instruction, displaying a parameter setting interface for the first quantitative trading strategy; and obtaining parameters related to the actual market execution input from a user through the parameter setting interface.
[0129] Optionally, the display unit 410 is also used to display a recorded description of the first quantitative trading strategy through the parameter setting interface; if the first quantitative trading strategy has been backtested, the record description is used to describe the backtesting results of the first quantitative trading strategy; If the first quantitative trading strategy has not been backtested, the record statement is used to describe that the first quantitative trading strategy has not been backtested and / or to recommend backtesting the first quantitative trading strategy; If the first quantitative trading strategy is updated after being backtested, the record description describes the backtest results of the first quantitative trading strategy before the update and is used to recommend backtesting the updated first quantitative trading strategy.
[0130] Optionally, the processing unit 430 also It is used to detect parameters related to the actual market execution or to detect the quotation authority of the user's trading account.
[0131] Optionally, the parameters related to actual market execution include at least one of a strategy name, a trading account, and a frequency parameter, wherein the frequency parameter includes an execution target and / or an execution frequency.
[0132] Optionally, the graphical interface further includes a navigation bar. The first instruction is used to obtain the first instruction via a first entry of the first quantitative trading strategy in the navigation bar.
[0133] Optionally, the graphical display interface further includes a strategy canvas for establishing a quantitative trading strategy.
[0134] The acquisition unit 420 specifically includes: The first instruction is used to obtain the first instruction via a second entry of the first quantitative trading strategy in the strategy canvas.
[0135] Optionally, the acquisition unit 420 specifically: It is used to retrieve the first instruction via a third entry point displayed in the execution area.
[0136] Optionally, the processing unit 430 also The first execution record is used to stop the execution of the first quantitative trading strategy.
[0137] Optionally, the display unit 410 also is used to display a trading password interface when the first quantitative trading strategy is added to the execution space for the first time, when the validity period of the first quantitative trading strategy in the execution space expires, or when the first quantitative trading strategy is stopped and then restarted; The acquiring unit 420 is also used to acquire the transaction password input by the user through the transaction password interface.
[0138] Optionally, the execution information for the first quantitative trading strategy includes at least one of a position and order status, a profit summary, an execution log, and a trend graph for the first quantitative trading strategy.
[0139] It should be understood that the apparatus embodiment and the method embodiment can correspond to each other, and similar descriptions can be referred to in the method embodiment. To avoid repetition, further description will not be given here. Specifically, in this embodiment, the apparatus 400 can correspond to each entity that performs the method 200 of the embodiment of the present application, and the above and other operations and / or functions of each module in the apparatus 400 are respectively for realizing each flow in each method in FIG. 2, and for conciseness, further description will not be given here.
[0140] The above describes the apparatus and system of the embodiments of the present application in terms of functional modules, with reference to the drawings. It should be understood that the functional modules may be implemented in hardware, software instructions, or a combination of hardware and software modules. Specifically, each step of the method embodiments of the present application can be completed by a hardware integrated logic circuit and / or software instructions in a processor. The method combination steps disclosed in the embodiments of the present application can be directly embodied as being executed by a hardware decoding processor or by a combination of hardware and software modules in a decoding processor. Optionally, the software modules can be located in a storage medium well-established in the art, such as random memory, flash memory, read-only memory, programmable read-only memory, electrically rewritable programmable memory, or register. The storage medium is located in memory, and the processor reads information in the memory and combines the hardware to complete the steps of the method embodiments.
[0141] FIG. 11 is a schematic block diagram of an electronic device 800 according to an embodiment of the present application.
[0142] As shown in FIG. 11, the electronic device 800 includes: The device may include a memory 810 and a processor 820. The memory 810 is used to store a computer program and transfer the program code to the processor 820. In other words, the processor 820 can call and execute the computer program from the memory 810 to implement the method in the embodiment of the present application.
[0143] For example, the processor 820 may be used to perform steps in the method 200 described above according to instructions in the computer program.
[0144] In some embodiments of the present application, the processor 820: This includes, but is not limited to, general purpose processors, digital signal processors (DSPs), application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
[0145] In some embodiments of the present application, the memory 810 includes: This includes, but is not limited to, volatile memory and / or non-volatile memory. Non-volatile memory may be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory may be random access memory (RAM), used as an external high-speed cache. By way of example and not limitation, several types of RAM may be utilized, such as static random access memory (Static RAM, SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (Synchronous DRAM, SDRAM), double data rate synchronous dynamic random access memory (Double Data Rate SDRAM, DDR SDRAM), enhanced synchronous dynamic random access memory (Enhanced SDRAM, ESDRAM), synchronous link dynamic random access memory (Synch Link DRAM, SLDRAM), and direct memory bus random access memory (Direct Rambus RAM, DR RAM).
[0146] In some embodiments of the present application, the computer program may be divided into one or more modules, which may be stored in the memory 810 and executed by the processor 820 to complete the coding method provided by the present application. The one or more modules may be a series of computer program instruction segments that can complete a specific function, and the instruction segments are used to describe the execution process of the computer program in the electronic device 800.
[0147] Optionally, as shown in FIG. 11, the electronic device 800 may: The device further comprises a transceiver 830 that can be coupled to the processor 820 or the memory 810 .
[0148] The processor 820 can control communication between the transceiver 830 and other devices, specifically, can transmit information or data to other devices and receive information or data transmitted by other devices. The transceiver 830 can include a transmitter and a receiver. The transceiver 830 can further include an antenna, and the number of antennas can be one or more.
[0149] It should be understood that the components in the electronic device 800 are connected via a bus system, which includes a power bus, a control bus, and a status signal bus in addition to a data bus.
[0150] According to one aspect of the present application, there is provided a communication device comprising a processor and a memory, the memory being used to store a computer program, the processor calling and executing the computer program stored in the memory to cause the encoder to perform the method of the above method embodiment.
[0151] According to one aspect of the present application, a computer storage medium is provided having a computer program stored thereon, which, when executed by a computer, enables the computer to perform the method of the above method embodiment. Alternatively, an embodiment of the present application further provides a computer program product including instructions, which, when executed by a computer, cause the computer to perform the method of the above method embodiment.
[0152] According to another aspect of the present application, there is provided a computer program product or a computer program comprising computer instructions stored on a computer-readable storage medium, the computer instructions being read by a processor of a computing device from the computer-readable storage medium and executed by the processor to cause the computing device to perform the method of the method embodiment.
[0153] In other words, when implemented in software, the software can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the software generates the flow or functions described in the embodiments of the present application in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored on a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) methods. The computer-readable storage medium may be any available medium accessible by a computer or may include a data storage device, such as a server or data center, integrated with one or more available media. The available media may be magnetic media (e.g., floppy disks, hard disks, tapes), optical media (e.g., digital video discs (DVDs)), or semiconductor media (e.g., solid state disks (SSDs)).
[0154] Those skilled in the art will recognize that each exemplary unit and algorithm step described in the embodiments disclosed herein can be combined and realized in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software is determined by the specific application and design constraints of the technical solution. Those skilled in the art may implement the described functions in different ways for each specific application, but such implementation is not considered to go beyond the scope of the present invention.
[0155] Those skilled in the art will clearly understand that for convenience and brevity of explanation, the specific operating processes of the above-described systems, devices and units may refer to the corresponding processes in the above-described method embodiments, and will not be repeated here.
[0156] It should be understood that the disclosed systems, devices, and methods in some embodiments of the present application can be realized in other ways. For example, the device embodiments described above are merely exemplary. For example, the division of the units is merely a logical function division. In actual implementation, other division methods may be used. For example, multiple units or assemblies may be combined or integrated into another system, or some features may be ignored or not implemented. Furthermore, the couplings, direct couplings, or communication connections between each other shown or discussed may be indirect couplings or communication connections through several interfaces, devices, or units, and may be electrical, mechanical, or other types of connections.
[0157] The units described above as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, i.e., they may be located in one place or distributed across multiple network units. Some or all of the units can be selected according to actual needs to achieve the objectives of the present embodiment.
[0158] Furthermore, each functional unit in each embodiment of the present invention may be integrated into one processing unit, each unit may exist physically independently, or two or more units may be integrated into one unit.
[0159] The functions can be realized in the form of software functional units and stored in a computer-readable storage medium when sold or used as an independent product. Based on this understanding, the technical solutions of the embodiments of the present invention, whether essential or contributing to the prior art, or parts of the technical solutions, can be expressed in the form of a software product, which is stored in a storage medium and includes instructions for a computer device (such as a personal computer, a server, or a network device) to execute all or part of the methods described in each embodiment of the present invention. The storage medium includes various media capable of storing program code, such as a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a disk, or a CD.
[0160] Although the above are only specific embodiments of the present application, the scope of protection of the present application is not limited thereto, and any modifications or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present application are all included in the scope of protection of the present application. Therefore, the scope of protection of the present application should be based on the scope of protection of the claims.
Claims
1. A method for implementing a quantitative trading strategy through a graphical interface, adapted for use in an electronic device, comprising: a processor of the electronic device controls a display to display a graphical interface including an execution area, the graphical interface including a strategy canvas for establishing a quantitative trading strategy; adding at least one graphical control including a start control, a condition control, or an event control to the strategy canvas, drawing connecting lines to connect the at least one graphical control, and editing attribute parameters of the at least one graphical control to establish the quantitative trading strategy; a processor of the electronic device receiving a first command input from a user into the graphical interface; a processor of the electronic device responding to the first instructions to obtain a first quantitative trading strategy including at least one parameter related to actual market execution, the at least one parameter related to actual market execution including an execution target and an execution frequency, and when the processor of the electronic device detects that the execution target is data pushed at the execution frequency, the processor of the electronic device triggers and executes the first quantitative trading strategy once; In the step of detecting the parameters related to actual market execution or the quote authority of the user's trading account, and issuing an alert if an abnormality is detected, the processor of the electronic device may determine whether the parameters are reasonable based on the following formula when detecting the parameters related to actual market execution, and may issue a corresponding alert based on the abnormality of the parameter values: When detecting the quote authority of the user's trading account, if the user's current quote authority does not cover the quote authority required for the strategy, detecting an abnormality and issuing a warning; If the processor of the electronic device does not detect an anomaly, adding the first quantitative trading strategy to the execution area included in the graphical interface to form an execution record in the execution area included in the graphical interface, the execution record including information related to the first quantitative trading strategy; a processor of the electronic device receives a second instruction input by a user through the first execution record in the execution area included in the graphical interface, executes the first quantitative trading strategy, and obtains execution information of the first quantitative trading strategy; The processor of the electronic device is responsive to the first instruction to obtain a first quantitative trading strategy, the step of: a processor of the electronic device, in response to the first instruction, controlling the display to switch the graphical interface to display a parameter setting interface for the first quantitative trading strategy; and a processor of the electronic device obtaining the parameters related to actual market execution input from a user via the parameter setting interface.
2. displaying a record description of the first quantitative trading strategy through the parameter setting interface; if the first quantitative trading strategy has been backtested, the record description is used to describe backtest results of the first quantitative trading strategy; If the first quantitative trading strategy has not been backtested, the record description is used to describe that the first quantitative trading strategy has not been backtested and / or to recommend backtesting the first quantitative trading strategy; 2. The method of claim 1, wherein, when the first quantitative trading strategy is updated after being backtested, the record description describes backtest results of the first quantitative trading strategy before the update and is used to recommend backtesting the updated first quantitative trading strategy.
3. 3. The method of claim 1 or 2, wherein the parameters related to actual market execution include at least one of a strategy name, a trading account, and a frequency parameter, wherein the frequency parameter includes an execution target and / or an execution frequency.
4. the graphical interface further includes a navigation bar; The step of the processor of the electronic device obtaining a first command input from a user to the graphical interface includes:
3. The method of claim 1, further comprising the step of: the processor of the electronic device obtaining the first instruction via a first entry for the first quantitative trading strategy in the navigation bar.
5. the graphical interface further includes a strategy canvas for establishing a quantitative trading strategy; The step of the processor of the electronic device obtaining a first command input from a user to the graphical interface includes:
3. The method of claim 1, further comprising the step of: the processor of the electronic device obtaining the first instruction via a second entry of the first quantitative trading strategy in the strategy canvas.
6. The step of the processor of the electronic device obtaining a first command input from a user to the graphical interface includes:
3. The method of claim 1, further comprising the step of: the processor of the electronic device obtaining the first instruction through a third entrance displayed in the execution area.
7. 3. The method of claim 1, further comprising: halting execution of the first quantitative trading strategy in response to the first execution record.
8. displaying a trading password interface when the first quantitative trading strategy is added to the execution space for the first time, when the validity period of the first quantitative trading strategy in the execution space expires, or when the execution of the first quantitative trading strategy is stopped and then restarted; 3. The method according to claim 1, further comprising the step of: obtaining a transaction password entered by a user through the transaction password interface.
9. 3. The method of claim 1, wherein the execution information for the first quantitative trading strategy includes at least one of a position and order status, a profit summary, an execution log, and a trend graph for the first quantitative trading strategy.
10. 1. An apparatus for executing a quantitative trading strategy, comprising: a display unit for displaying a graphical interface including an execution area, the graphical interface including a strategy canvas for establishing a quantitative trading strategy, the display unit adding at least one graphical control including a start control, a condition control, or an event control to the strategy canvas, drawing connecting lines to connect the at least one graphical control, and editing attribute parameters of the at least one graphical control to establish the quantitative trading strategy; an acquiring unit for acquiring a first command input from a user into the graphical interface; a processing unit responsive to the first instruction for obtaining a first quantitative trading strategy including at least one parameter related to actual market execution, the at least one parameter related to actual market execution including an execution target and an execution frequency, wherein the device triggers the first quantitative trading strategy to execute once when the device detects that the execution target is data pushed at the execution frequency; A detection unit for detecting the parameters related to actual market execution or detecting the quote authority of the user's trading account, and giving an alert if detected as abnormal, wherein when detecting the parameters related to actual market execution, the detection unit judges whether the parameters are reasonable based on the following formula, and gives a corresponding alert indication based on the abnormal situation of the parameter values: a detection unit for detecting the quote authority of the user's trading account and issuing a warning if the user's current quote authority cannot cover the quote authority required for a strategy; the processing unit is also used to, if no abnormality is detected, add the first quantitative trading strategy to the execution area included in the graphical interface to form a first execution record in the execution area included in the graphical interface, the first execution record including information related to the first quantitative trading strategy; the processing unit is also used to receive second instructions input by a user through the first execution record in the execution area included in the graphical interface, execute the first quantitative trading strategy, and obtain execution information of the first quantitative trading strategy; Specifically, the processing unit includes: In response to the first instruction, controlling a display such that the graphical interface switches to display a parameter setting interface for the first quantitative trading strategy; and obtaining the parameters related to actual market execution input from a user via the parameter setting interface.
11. An electronic device comprising a processor and a memory, wherein instructions are stored in the memory, and when the processor executes the instructions, the electronic device causes the processor to perform the method of any one of claims 1 to 9.
12. A computer-readable storage medium storing a computer program, the computer program causing a computer to carry out the method according to any one of claims 1 to 9.
13. 10. A computer program comprising computer program code which, when executed by a communications device, causes the communications device to carry out a method according to any one of claims 1 to 9.
Citation Information
Patent Citations
Portfolio construction supporting device, portfolio construction support program, and portfolio construction supporting method
JP2009294765A