Delay comparison method and device for multi-source data, equipment and medium
By receiving and analyzing the data interface videos of multiple client applications to be tested, and using AI models to extract and compare indicator data information, the problem of difficulty in automatically evaluating the delay of multi-source market data in the existing technology is solved, and efficient and accurate delay evaluation is achieved.
Patent Information
- Application Number
- CN202411872469.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-18
- Publication Date
- 2025-05-06
- Estimated Expiration
- 2044-12-18
AI Technical Summary
It is difficult for the existing technology to achieve automated and accurate assessment of delays in multi-source market data, resulting in errors in investment decision-making and inefficient efficiency.
By receiving data interface videos from multiple client applications to be tested, using AI models to extract indicator data information from the data interface screenshots, and delay comparison with standard data information, efficient evaluation of the delay level of multi-source data is achieved.
It realizes non-invasive automated acquisition of indicator data information from multiple data sources, improves the ability to accurately evaluate the delay of multi-source market data, and helps users better choose the right market client.
Smart Images

Figure CN119938733A_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present application relate to the field of financial technology, and in particular to a delay comparison method for multi-source data, a delay comparison device for multi-source data, an electronic device, and a computer-readable storage medium. Background Art
[0002] In the modern financial securities market, market participants rely on various market clients to obtain real-time market data such as stock prices and order buy and sell information to make investment decisions. The accuracy and timeliness of real-time market data are crucial to investment decisions.
[0003] There are many market clients on the market, but they do not provide a unified scale for measuring market delays. Most clients lack an effective delay monitoring mechanism, and users can only judge the real-time nature of the market through subjective feelings. This method is not only not objective enough, but also easily leads to investment decision-making errors. Existing technical means mainly rely on manual comparison, which is inefficient and difficult to achieve systematic data analysis and processing. Therefore, there is an urgent need for a solution that can automatically and accurately evaluate the delay differences of multi-source market information to help users better choose the appropriate market client. Summary of the invention
[0004] Based on this, it is necessary to provide a delay comparison method for multi-source data, a delay comparison device for multi-source data, an electronic device and a computer-readable storage medium to address the above technical problems, so as to efficiently evaluate the delay degree of multi-source data.
[0005] In a first aspect, an embodiment of the present application provides a delay comparison method for multi-source data, the method comprising the following steps: Receiving data interface videos corresponding to a plurality of client applications to be tested, wherein the data interface videos are obtained by capturing videos of the data interfaces of the client applications to be tested; For each of the data interface videos, extract multiple frames of data interface screenshots from the data interface video, and locate and extract indicator data information from each frame of the data interface screenshot through an AI (Artificial Intelligence) model, wherein the indicator data information includes indicator data and a snapshot timestamp corresponding to the indicator data; Receiving standard data information from a standard data source server, the standard data information including standard data and a standard update timestamp corresponding to the standard data; The indicator data information corresponding to each of the client applications to be tested is compared with the standard data information with a delay to obtain the evaluation results corresponding to each of the client applications to be tested.
[0006] In an embodiment of the present application, clients of multiple different data sources are obtained, and the data interface of each client is captured, and data interface videos corresponding to multiple client applications to be tested are obtained, and then multiple frames of data interface screenshots are extracted from the data interface videos, and then the AI model is used to locate and extract the index data information from the data interface screenshots. Here, the multiple client applications to be tested are data sources from different sources, and non-invasive automatic acquisition of index data information of multiple data sources is realized. The embodiment of the present application also receives standard data information from a standard data source server, and by comparing the delay of the index data information corresponding to each client application to be tested with the standard data information, the evaluation results corresponding to each client application to be tested are obtained, and efficient evaluation of the data delay degree of multiple data sources is realized.
[0007] In a possible implementation, the AI model includes a target detection model and an OCR model, and the AI model is used to locate and extract indicator data information from each frame of the data interface screenshot, including performing the following processing on each frame of the data interface screenshot: Detecting the position of the indicator data and the position of the snapshot timestamp in the data interface screenshot by using the target detection model; Obtaining an indicator data screenshot and a snapshot timestamp screenshot according to the position of the indicator data and the position of the snapshot timestamp; The indicator data and the snapshot timestamp are obtained by performing text recognition processing on the indicator data screenshot and the snapshot timestamp through the OCR (Optical Character Recognition) model.
[0008] In a possible implementation, the target detection model is trained in the following manner: Constructing a sample set, the sample set including data interface screenshot samples of multiple clients and annotated screenshots corresponding to the data interface screenshot samples; Detecting the position of the indicator data and the position of the snapshot timestamp in the data interface screenshot sample by using the target detection model; Determine a loss function value according to a deviation between a position of the indicator data and a position marked with the indicator data in the marked screenshot, and a deviation between a position of the snapshot timestamp and a position marked with the snapshot timestamp in the marked screenshot; The model parameters of the target detection model are adjusted according to the loss function value to obtain a trained target detection model.
[0009] In a possible implementation, the evaluation result includes delay time information; the delay comparison of the indicator data information corresponding to each of the client applications to be tested with the standard data information to obtain the evaluation result corresponding to each of the client applications to be tested includes: Sorting the received standard data information in order of standard update timestamps from earliest to latest to obtain a first indicator change list; For each of the client applications to be tested, sorting the indicator data information corresponding to the client application to be tested in order of snapshot timestamps from early to late, to obtain a second indicator change list; Compare the second indicator change list corresponding to the client application to be tested with the first indicator change list to obtain delay time information of each update of the client application to be tested; The delay time information of each update of each client application to be tested is displayed.
[0010] In a possible implementation, each indicator data information in the second indicator change list has a corresponding indicator change sequence number; after obtaining the delay time information of each update of the client application to be tested, the method further includes: For each indicator change sequence number, compare the delay time information of multiple client applications to be tested corresponding to the indicator change sequence number to determine the update speed order of each client application to be tested; Sorting all the client applications to be tested from fastest to slowest update to obtain a third indicator change list; The third indicator change list is displayed.
[0011] In a possible implementation, the third indicator change list includes an update delay time difference between any one of the client applications to be tested and the client application to be tested that is updated the fastest.
[0012] In a possible implementation, for each of the data interface videos, extracting multiple frames of data interface screenshots from the data interface video includes: For each of the data interface videos, video frames of the data interface video are acquired at preset time intervals to obtain a plurality of data interface screenshots.
[0013] In a second aspect, an embodiment of the present application provides a delay comparison device for multi-source data, the device comprising: A video capture module, used to receive data interface videos corresponding to a plurality of client applications to be tested, wherein the data interface videos are obtained by capturing the data interfaces of the client applications to be tested; An indicator data information acquisition module, for extracting multiple frames of data interface screenshots from each data interface video, and locating and extracting indicator data information from each frame of the data interface screenshot through an AI model, wherein the indicator data information includes indicator data and a snapshot timestamp corresponding to the indicator data; A standard data information acquisition module, used to receive standard data information from a standard data source server, wherein the standard data information includes standard data and a standard update timestamp corresponding to the standard data; The delay comparison module is used to perform delay comparison between the indicator data information corresponding to each of the client applications to be tested and the standard data information to obtain the evaluation results corresponding to each of the client applications to be tested.
[0014] In a third aspect, an embodiment of the present application provides an electronic device, including: Memory, used to store programs; A processor is used to execute the program stored in the memory. When the processor executes the program stored in the memory, the processor is used to execute the method described in the first aspect above.
[0015] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to execute the delay comparison method of multi-source data as described in the first aspect above.
[0016] The solutions provided in the second to fourth aspects are used to implement or cooperate with the delayed comparison method of multi-source data provided in the first aspect, and thus can achieve the same or corresponding beneficial effects as the first aspect, and will not be repeated here.
[0017] It should be understood that the foregoing general description and the following detailed description are exemplary only and are not restrictive of the present application. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] Figure 1 A schematic diagram of a securities market data transmission scenario provided in an embodiment of the present application; Figure 2 A schematic diagram of an implementation environment of a delay comparison method for multi-source data provided in an embodiment of the present application; Figure 3 A flowchart of a delay comparison method for multi-source data provided in an embodiment of the present application; Figure 4 An optional schematic diagram of a screenshot of a data interface of a client application provided in an embodiment of the present application; Figure 5An optional system architecture diagram of the delay comparison method for multi-source data provided in an embodiment of the present application; Figure 6 A schematic diagram of the structure of a delay comparison device for multi-source data provided in an embodiment of the present application; Figure 7 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0019] In order to make the purpose, technical methods and advantages of this application more clear, the following is a further detailed description of this application in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described here are only used to explain this application and are not used to limit this application.
[0020] It should be noted that the meaning of "multiple" (or multiple) involved in the description of the embodiments of the present application is more than two, "greater than", "less than", "exceed", etc. are understood as not including the number itself, and "above", "below", "within", etc. are understood as including the number itself. If there is a description of "first", "second", etc., it is only used for the purpose of distinguishing technical features, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features or implicitly indicating the order of the indicated technical features.
[0021] In the embodiments of the present application, "at least one" refers to one or more, and "more than one" refers to two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent the situation where A exists alone, A and B exist at the same time, and B exists alone. Among them, A and B can be singular or plural. The character " / " generally indicates that the objects associated before and after are in an "or" relationship. "At least one of the following" and similar expressions refer to any combination of these items, including any combination of singular or plural items. For example, at least one of a, b and c can mean: a exists alone, b exists alone, c exists alone, a and b exist at the same time, a and c exist at the same time, b and c exist at the same time, or a, b and c exist at the same time, wherein a, b, c can be single or multiple.
[0022] The terms "substantially", "about" and similar terms used in the embodiments of the present application are used as approximate terms rather than as terms of degree, and are intended to take into account the inherent deviations of measurements or calculations known to those of ordinary skill in the art. In addition, the use of "may" when describing the embodiments of the present application refers to "possible one or more embodiments". The terms "use", "using", and "used" used in the embodiments of the present application may be considered to be synonymous with the terms "utilize", "utilizing", and "utilized", respectively. In addition, the term "exemplary" is intended to refer to an example or illustration.
[0023] Generally speaking, securities market data can be obtained through exchanges in various markets. Brokers and information service providers transmit the data obtained from the exchanges to the client for users to view. Real-time market data includes opening price, closing price, trading volume, etc., which can help users make investment decisions in a timely manner. It is crucial to obtain market data quickly. Delays may lead to inaccurate decisions and affect investment returns. Therefore, the real-time nature of market data is a key indicator for evaluating the performance of various market display applications.
[0024] The clients of brokerage firms and information service providers include but are not limited to mobile clients, web clients or PC clients. The client provides a software interface for users to interact with the service, and users can obtain real-time trading information of stocks, futures and other markets from the client. The client connects with brokerage firms and information service providers to receive real-time data provided by the exchange, helping users to understand market trends in a timely manner and make investment decisions.
[0025] See also Figure 1 , Figure 1 A schematic diagram of a securities market data transmission scenario provided in an embodiment of the present application. The scenario includes a stock exchange server, a service provider server and a terminal device.
[0026] Among them, the stock exchange server is used to publish market data in real time. The exchanges here include but are not limited to the Shanghai Stock Exchange, Shenzhen Stock Exchange, Futures Exchange, etc. The above market data includes: Level 1 market data, including basic data, such as the latest transaction price, transaction volume, buy and sell orders, highest price, lowest price, opening price, closing price, etc.; Level 2 market data, buy and sell order data (such as five-level and ten-level buy and sell order data), transaction by transaction, etc. Level 2 market data provides more market depth information. Compared with Level 1 market data, Level 2 market data has a higher frequency and changes faster.
[0027] Service provider servers include but are not limited to brokerage servers, information service provider servers, etc. The service provider server receives the data stream of market data from the stock exchange server and performs the following exemplary processing on the received market data: storing the data in a cache or database for subsequent quick query or analysis, and processing multi-level market data at the same time, such as transaction by transaction, market price changes, etc.; further processing the received raw market data and distributing it to various internal systems or front-end display platforms, such as trading systems, analysis systems, mobile applications, etc., to meet the needs of different business systems.
[0028] Terminal devices include but are not limited to mobile terminals, tablet terminals, laptops, desktop computers, etc. Terminal devices are used to run client applications and access the service provider server through network requests, push technologies (such as WebSocket) or API interfaces. The client application will visualize the market data received in real time, such as K-line charts, buy and sell orders, stock lists, etc. The client application can further calculate and process the data (such as technical indicator calculations, trend analysis, etc.) and display it to the user. Users view real-time market conditions through the application interface and make trading decisions based on data changes. Some advanced applications also provide analysis tools, such as technical indicators, historical data comparisons, etc., to help users better understand the market.
[0029] The above service provider servers and terminal devices are all involved in the processing of market data, which also leads to differences in the time it takes to push market data to different client applications. Push delay is related to whether users can obtain key information in a timely manner and respond quickly to market changes. However, due to various technical and application limitations, there are some key difficulties in the push delay comparison business scenario: (1) The client is closed and the client's market data cannot be obtained through the programmatic interface.
[0030] Market data display applications are often designed to be relatively closed, especially some clients do not provide public API interfaces. This means that it is difficult for external systems to directly obtain the real-time updated market data in these clients through programmatic means, and it is also impossible to obtain the time information when the client receives the latest data. The traditional interface method relies on program docking to obtain data through predetermined protocols or APIs. However, closed clients do not open such interfaces, and external systems cannot obtain market updates in a standard programmatic manner, which makes delay detection more difficult to implement. Since the market data is processed, rendered and displayed within each client, the only person who can see the market changes is the user himself. External tools need to obtain and analyze this data by simulating user behavior (such as non-invasive means such as image recognition), which greatly increases the complexity of development and maintenance.
[0031] (2) The operating environments vary greatly. Different hardware and system platforms have different market clients, and it is difficult to unify the delay detection method across platforms.
[0032] Different clients run on a variety of hardware and system platforms, including PCs, mobile phones, web applications, etc. The operating systems (such as iOS, Android, Windows, macOS) and hardware performance differences of different devices mean that push latency comparison is difficult to monitor uniformly through a single platform or tool. In order to achieve cross-platform delay detection, it is necessary to overcome the differences in hardware and operating systems and find appropriate technical means to synchronously collect and detect market data from various clients. This cross-platform unified comparison method requires the system to be able to adapt to the technology stack and operating environment of different platforms, which is a huge challenge to achieve automated comparison.
[0033] (3) The client is frequently updated, making it difficult to implement structured and automated delay testing.
[0034] Another challenge is the frequent updates of client versions. With the rapid development of technology and changes in user needs, the client software of various market display applications is updated very frequently. The new version of the application may change in interface, data display, and response logic, which makes any fixed detection method (such as fixed scripts, specific interfaces) easily invalid. Therefore, in order to implement structured and automated latency testing, a sufficiently flexible and adaptable detection solution is needed to cope with updates and changes of various clients. At the same time, the automated testing solution needs to be able to dynamically adjust the detection strategy to ensure that it can adapt to clients of different versions and platforms.
[0035] Based on the above problems, the embodiments of the present application propose a delay comparison method for multi-source data, a delay comparison device for multi-source data, an electronic device and a computer-readable storage medium for efficiently evaluating the delay degree of multi-source data.
[0036] See also Figure 2 , Figure 2 Schematic diagram of the implementation environment of a multi-source data delay comparison method provided in an embodiment of the present application. Figure 2 As shown, the implementation environment includes at least one standard data source server, multiple service provider servers, multiple terminal devices and at least one evaluation terminal.
[0037] Among them, the standard data source server is used to provide standard data.
[0038] The service provider server is connected to the standard data source server through a network, can receive standard data from the standard data source server, and then process the standard data into indicator data.
[0039] Multiple terminal devices run client applications of different service providers. Each client application communicates with its corresponding service provider server through the network. The service provider server can be regarded as the data source of the client application. The client application receives indicator data from the service provider server and displays the indicator data through the data interface. Each terminal device also runs a screen recording application, which can record the data interface of the client application and generate a data interface video.
[0040] The evaluation end is connected to the standard data source server and the terminal device through the network, and can receive standard data information from the standard data source server on the one hand, and can receive data interface video from the terminal device on the other hand. The evaluation end can perform delay comparison evaluation of multi-source data based on the received standard data information and data interface video. It should be understood that the evaluation end can be any electronic device, such as mobile phones, desktop computers, laptops, tablet computers and other terminal devices, or a server, wherein the server can be a physical server or a cloud server, and the server can be an independent server or a server cluster.
[0041] In a possible embodiment, the above-mentioned standard data source server is a stock exchange server, the service provider server is a financial service provider server, the terminal device is a mobile phone, tablet computer or PC computer device with a screen recording function, and a client application connected to the network of the financial service provider server is running on the terminal device, and the evaluation end is a cloud server. The stock exchange server provides standard market data, the financial service provider server receives the standard market data from the stock exchange server, processes the standard market data into market index data, and sends the market index data to the client application, and the client application renders and displays the market index data. The terminal device runs the client application, displays the data interface of the client application through the display screen, and records the data interface of the client application through the screen recording application running locally, generates a data interface video and sends it to the cloud server (evaluation end). The cloud server (evaluation end) receives the standard data information from the standard data source server and the data interface video from the terminal device, and then performs a delay comparison and evaluation of multi-source data based on the received standard data information and data interface video, and outputs the delay evaluation results of each client application, thereby realizing the data delay comparison of multiple client applications in the financial scenario. For the convenience of description, in the embodiment of this application, the standard data source server is a stock exchange server, the service provider server is a financial service provider server, the terminal device is a mobile phone with a screen recording function, and the evaluation end is a cloud server as an example to describe the implementation process of the solution.
[0042] It should be noted that the solution of the embodiments of the present application is not limited to application in financial scenarios, but can also be applied in logistics scenarios, for example, to implement delay evaluation of data of multiple logistics service applications. The embodiments of the present application do not specifically limit the application scenarios.
[0043] See also Figure 3 , Figure 3 A flowchart of a delay comparison method for multi-source data provided in an embodiment of the present application is provided. The method can be executed by the above-mentioned evaluation terminal, and the method includes but is not limited to the following steps: Step S101: receiving data interface videos corresponding to a plurality of client applications to be tested, where the data interface videos are obtained by capturing the data interfaces of the client applications to be tested.
[0044] The multiple client applications to be tested are data sources of different data sources, and the client applications to be tested run on the terminal device.
[0045] It should be noted that video capture can be achieved offline or online. In the offline mode, the data interface video of the client application to be tested can be captured by recording the screen; the online mode can be achieved by live broadcasting the interface of the client application to be tested.
[0046] As a possible implementation method, the screen recording function of the terminal device can be used to record the data interface of the client application to be tested, generate a data interface video, and send it to the evaluation end. The above multiple client applications to be tested correspond to different data sources, that is, the data displayed by the above client applications to be tested come from different data sources.
[0047] In specific implementation, a starting time and recording duration can be pre-set, and the data interface of each client application to be tested can be recorded from the starting time. When the recorded video duration reaches the preset recording duration, a data interface video is generated, and the next data interface video is immediately recorded, so that multiple continuous data interface videos can be generated. The terminal device sends the recorded data interface video to the evaluation end.
[0048] It should be noted that the above-mentioned client application can be a mobile application, a PC application or a web application, and the embodiments of the present application do not limit the specific form of the client application.
[0049] Step S102: For each data interface video, multiple frames of data interface screenshots are extracted from the data interface video, and indicator data information is located and extracted from each frame of the data interface screenshot based on the AI model. The indicator data information includes indicator data and a snapshot timestamp corresponding to the indicator data.
[0050] See also Figure 4 , Figure 4 An optional schematic diagram of a screenshot of the data interface of a client application provided in an embodiment of the present application. Figure 4 The data interface screenshot shown is a screenshot of the data interface of a mobile application. The screenshot contains indicator data such as average price, highest price, lowest price and opening price. The screenshot also contains a snapshot timestamp.
[0051] It should be understood that the data interface video contains multiple frames of data interface screenshots, each of which contains indicator data information, and the changes in various indicator data can be obtained from the multiple frames of data interface video. For example, the duration of each data interface video is 5 minutes, so the change values of various indicator data in this period can be obtained, such as the values of the indicator data "average price" at multiple times such as 9:30:00, 9:31:00, and 9:32:00. The time mentioned here is the snapshot timestamp.
[0052] As a possible implementation method, for each data interface video, extracting multiple frames of data interface screenshots from the data interface video may include: for each data interface video, acquiring video frames of the data interface video at preset time intervals to obtain multiple data interface screenshots.
[0053] It should be understood that in order to obtain indicator data information, the embodiment of the present application first divides the data interface video into multiple frames of data interface screenshots, where the time interval between the multiple frames of data interface screenshots is fixed; then the AI model is used to locate and extract the indicator data information (including extracting indicator data and extracting snapshot timestamps) from the data interface screenshots. There is no need to rely on the program interface to obtain client data as in the traditional way. The embodiment of the present application realizes non-invasive automatic acquisition of indicator data information from multiple data sources.
[0054] In one possible implementation, the AI model includes an object detection model and an OCR model. The AI model locates and extracts indicator data information from each frame of the data interface screenshot, including performing the following processing on each frame of the data interface screenshot: Use the target detection model to detect the location of the indicator data and the location of the snapshot timestamp in the data interface screenshot; Obtain the indicator data screenshot and snapshot timestamp screenshot according to the indicator data location and snapshot timestamp location; The indicator data screenshot and the snapshot timestamp screenshot are processed by text recognition through the OCR model to obtain the indicator data and the snapshot timestamp.
[0055] Among them, the target detection model can be trained in the following way: Constructing a sample set, the sample set includes data interface screenshot samples of multiple clients and annotated screenshots corresponding to the data interface screenshot samples; The target detection model is used to detect the location of the indicator data and the location of the snapshot timestamp in the data interface screenshot sample; Determine the loss function value according to the deviation between the position of the indicator data and the position of the indicator data in the annotated screenshot, and the deviation between the position of the snapshot timestamp and the position of the snapshot timestamp in the annotated screenshot; The model parameters of the target detection model are adjusted according to the loss function value to obtain a trained target detection model.
[0056] It should be noted that the above-mentioned annotated screenshots can be formed in the following manner: the indicator data and snapshot timestamps in the data interface screenshot samples are annotated by means of boxes.
[0057] In some possible embodiments of the present application, after constructing the sample set, the sample set is further divided into a training set and a test set according to a preset ratio. For example, the sample ratio of the training set and the test set is 2:1.
[0058] In specific implementation, the data interface screenshot samples in the training set can be input into the target detection model, and the target detection model can detect the position of the indicator data and the position of the snapshot timestamp in the data interface screenshot samples, and then determine the loss function value based on the deviation between the position of the indicator data and the position of the indicator data annotation in the annotation screenshot, and the deviation between the position of the snapshot timestamp and the position of the snapshot timestamp annotation in the annotation screenshot; judge whether the loss function value converges to the minimum or the training rounds reach the preset upper limit number, if so, the current target detection model is used as the trained target detection model, if not, the gradient is calculated according to the loss function value, and then the model parameters of the target detection model are updated by the gradient back propagation method, and then the target detection model is continued to be trained based on the training set. After obtaining the trained target detection model, the target detection model is tested using the test set to verify the accuracy of the output results of the target detection model.
[0059] By connecting the trained target detection model to the OCR model, the AI model of the embodiment of the present application can be obtained. By inputting the screenshot of the data interface into the AI model, the indicator data information in the image can be converted into machine-encoded text information.
[0060] Step S103: receiving standard data information from a standard data source server, where the standard data information includes standard data and a standard update timestamp corresponding to the standard data.
[0061] It should be understood that the embodiment of the present application obtains standard data information from a standard data source server, and the standard data information will be used as a comparison benchmark in the subsequent data delay comparison process.
[0062] Step S104: performing a delayed comparison between the indicator data information corresponding to each client application to be tested and the standard data information, and obtaining the evaluation results corresponding to each client application to be tested.
[0063] For example, the client applications to be tested include client application 1, client application 2 and client application 3. Each application has corresponding indicator data information. The indicator data information of an application includes at least one type of indicator data. One type of indicator data includes multiple change values, and each change value corresponds to a snapshot timestamp.
[0064] As shown in Table 1 below, for the indicator data of "highest price", different client applications have a series of change values, each change value corresponds to a snapshot timestamp, and by comparing the snapshot timestamps corresponding to a certain change value in different client applications, the data delay degree of multiple client applications can be determined, that is, the evaluation results corresponding to each client application to be tested can be obtained. For example, in the example in Table 1, it can be determined by comparison that the data of client application 1 is updated the fastest, and the data of client application 3 is updated the slowest.
[0065] Table 1
[0066] In an embodiment of the present application, clients of multiple different data sources are obtained, the data interface of each client is screen recorded, and data interface videos corresponding to multiple client applications to be tested are obtained, and then multiple frames of data interface screenshots are extracted from the data interface videos, and then the OCR technology is used to locate and extract the index data information from the data interface screenshots, thereby realizing the automatic acquisition of index data information of multiple data sources. The embodiment of the present application also receives standard data information from a standard data source server, and by comparing the delay of the index data information corresponding to each client application to be tested with the standard data information, the evaluation results corresponding to each client application to be tested are obtained, thereby realizing efficient evaluation of the data delay degree of multiple data sources.
[0067] In some possible embodiments of the present application, the evaluation results include delay time information, which indicates the delay time difference of the client application under test relative to the standard update timestamp, or indicates the delay time difference of a client application under test relative to the fastest updated client application under test.
[0068] In some possible embodiments of the present application, the indicator data information corresponding to each client application to be tested is delayed and compared with the standard data information to obtain the evaluation results corresponding to each client application to be tested, including: Sort the received standard data information in order of standard update timestamps from earliest to latest to obtain a first indicator change list; For each client application to be tested, sort the indicator data information corresponding to the client application to be tested in order of snapshot timestamps from early to late, to obtain a second indicator change list; Compare the second indicator change list corresponding to the client application to be tested with the first indicator change list to obtain the delay time information of each update of the client application to be tested; The delay time information of each update of each client application under test is displayed.
[0069] See Table 2 below, which is an optional first indicator change list provided in an embodiment of the present application. Table 2 shows the standard data corresponding to the three indicator data: highest price, lowest price and average price.
[0070] Table 2
[0071] See Table 3 below, which is an optional second indicator change list provided in an embodiment of the present application. Table 3 shows three indicator data of the highest price, the lowest price and the average price updated by a client application.
[0072] Table 3
[0073] By comparing Table 2 and Table 3, we can determine the delay time information of each update of the client application under test. For example, the snapshot timestamp of the first update of the indicator data (corresponding to the indicator change sequence number 1) of the client application under test is 9:30:09, and the corresponding standard update timestamp is 9:30:00, so it can be determined that the delay time difference of the first update of the client application under test is "+0:0:09".
[0074] It should be understood that the embodiment of the present application also displays the delay time information of each update of each client application under test to provide the user with data delay information of the client application under test.
[0075] As shown in Table 3 above, each indicator data information in the second indicator change list has a corresponding indicator change sequence number. After obtaining the delay time information of each update of the client application to be tested, the embodiment of the present application may also include the following steps: For each indicator change sequence number, compare the delay time information of multiple client applications to be tested corresponding to the indicator change sequence number to determine the update speed order of each client application to be tested; Sort all client applications to be tested in the order of update from fastest to slowest, and obtain a list of changes in the third indicator; The list of changes in the third indicator is displayed.
[0076] It should be understood that the embodiment of the present application sorts the multiple client applications to be tested according to the order of update speed, so that the user can know the speed of each client application to be tested.
[0077] In a possible implementation, the third indicator change list includes an update delay time difference between any client application to be tested and the fastest updated client application to be tested.
[0078] It should be understood that the embodiment of the present application also displays the client applications ranked from second to last in the third indicator change list, and how much slower they are than the fastest updated client application, so that users can more clearly understand the performance of each client application.
[0079] As an example, the solution provided by the embodiment of the present application can be applied in financial scenarios to realize comparative analysis of the data push speed of multiple financial service clients. Specifically, an artificial intelligence algorithm is used to automatically collect data from market clients and market data sources from different sources, compare market delays, and realize automated comparison of multi-source market delays in the market, which can solve the problem that the delay efficiency of a large number of market clients in the market is difficult to evaluate.
[0080] See also Figure 5 , Figure 5 An optional system architecture diagram of a delay comparison method for multi-source data provided in an embodiment of the present application, the system architecture is applicable to financial scenarios and is used to compare and analyze the speed of data push of multiple financial service clients. The system architecture includes an acquisition layer, a data layer, an algorithm layer and an analysis layer. Among them, the acquisition layer is used to collect market data from each financial service client, where the financial service client includes but is not limited to a PC client, a web client and a mobile client, and the specific market data collection method is to record the client screen to obtain a corresponding video stream. The acquisition layer is also used to access the exchange cloud data platform to collect standard market data. The data layer is used to process the video stream, including dividing the video stream into multiple frames to obtain a screenshot of the client's market data interface. The data layer is also used to process standard market data, including data cleaning, data screening, etc. The algorithm layer is used to perform AI recognition on the screenshot to identify the position of the market data in the screenshot, and then use OCR to parse the characters in the position to obtain the client market data, and then translate the client market data to obtain structured client market data. The algorithm layer is also used to compare the structured client market data with the standard market data and output the corresponding comparison results. The analysis layer is used to analyze the comparison results, including difference analysis, latency ranking, monitoring rules, and data display.
[0081] Based on the solution provided by the embodiment of the present application, the market data of the client from different data sources can be integrated to provide users with a comprehensive delay analysis. The embodiment of the present application uses artificial intelligence technology to obtain the market data of the client using the target detection model and the OCR model. There is no need to obtain the market data of the client through a programmatic interface, which overcomes the monitoring difficulties caused by differences in the operating environments of different clients. In addition, since the embodiment of the present application collects a screen recording video of the client's data interface, the video contains all the update information of the client within a specific time period, so it can avoid the problem of missing data collection due to frequent updates of the client when collecting client data through the interface.
[0082] Based on the solution provided by the embodiment of the present application, it is also possible to achieve unified comparison of multi-source market clients, integrate data from different sources, and provide users with comprehensive delay analysis. At the same time, a unified delay metric can be provided to achieve a consistent delay comparison measurement of financial market market conditions, so as to help investors better evaluate the performance of each market source and ensure the acquisition of optimal information. The embodiment of the present application can greatly improve the monitoring efficiency, allowing users to discover and respond to delay problems in a timely manner.
[0083] The method of the embodiment of the present application is described above, and the device of the embodiment of the present application is provided below.
[0084] See also Figure 6 , Figure 6 A schematic diagram of the structure of a delay comparison device for multi-source data provided in an embodiment of the present application. The delay comparison device for multi-source data has the function of implementing the delay comparison method for multi-source data provided in any of the above embodiments. The function can be implemented by hardware, or by executing corresponding software implementation by hardware. The hardware or software includes one or more modules corresponding to the above functions.
[0085] like Figure 6 As shown, the delay comparison device for multi-source data includes: A video capture module is used to receive data interface videos corresponding to multiple client applications to be tested, where the data interface videos are obtained by capturing the data interfaces of the client applications to be tested, and the multiple client applications to be tested are client applications corresponding to different data sources; An indicator data information acquisition module is used to extract multiple frames of data interface screenshots from each data interface video, and locate and extract indicator data information from each frame of the data interface screenshot through an AI model. The indicator data information includes indicator data and a snapshot timestamp corresponding to the indicator data. A standard data information acquisition module is used to receive standard data information from a standard data source server, wherein the standard data information includes standard data and a standard update timestamp corresponding to the standard data; The delay comparison module is used to compare the indicator data information corresponding to each client application to be tested with the standard data information to obtain the evaluation results corresponding to each client application to be tested.
[0086] It should be noted that the information interaction, execution process, etc. between the above-mentioned modules / units are based on the same concept as the method embodiment of the present application. Their specific functions and technical effects can be found in the method embodiment part and will not be repeated here.
[0087] See also Figure 7The embodiment of the present application further provides an electronic device 300. The electronic device 300 may be a server or a terminal, and the internal structure of the electronic device 300 includes but is not limited to: A memory 310, used for storing programs; The processor 320 is used to execute the program stored in the memory 310. When the processor 320 executes the program stored in the memory 310, the processor 320 is used to execute the delay comparison method of multi-source data in any of the previous embodiments.
[0088] The processor 320 and the memory 310 may be connected via a bus or other means.
[0089] The memory 310 is a non-transitory computer-readable storage medium that can be used to store non-transitory software programs and non-transitory computer executable programs, such as the delay comparison method for multi-source data described in any embodiment of the present application. The processor 320 implements the delay comparison method for multi-source data in any of the previous embodiments by running the non-transitory software programs and instructions stored in the memory 310.
[0090] The memory 310 may include a program storage area and a data storage area, wherein the program storage area may store an operating system and an application required by at least one function; the data storage area may store a method for performing the delay comparison of the multi-source data described above. In addition, the memory 310 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other non-volatile solid-state storage device. In some embodiments, the memory 310 may optionally include a memory remotely disposed relative to the processor 320, and these remote memories may be connected to the processor 320 via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0091] The non-transient software programs and instructions required to implement the above-mentioned delay comparison method for multi-source data are stored in the memory 310. When executed by one or more processors 320, the delay comparison method for multi-source data provided by any embodiment of the present application is executed.
[0092] The embodiment of the present application further provides a computer-readable storage medium storing computer-executable instructions, wherein the computer-executable instructions are used to execute the above-mentioned delay comparison method for multi-source data.
[0093] In one embodiment, the storage medium stores computer executable instructions, which are executed by one or more control processors, for example, by one or more processors 320 in the above-mentioned electronic device 300, so that the above-mentioned one or more processors 320 can execute the delay comparison method of multi-source data provided in any embodiment of the present application.
[0094] The above described embodiments are merely illustrative, and the units described as separate components may or may not be physically separated, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the present embodiment.
[0095] It will be appreciated by those skilled in the art that all or some of the steps and systems in the methods disclosed above may be implemented as software, firmware, hardware, and appropriate combinations thereof. Some or all physical components may be implemented as software executed by a processor, such as a central processing unit, a digital signal processor, or a microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit. Such software may be distributed on a computer-readable medium, which may include a computer storage medium (or non-transitory medium) and a communication medium (or transient medium). As known to those skilled in the art, the term computer storage medium includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules, or other data). Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical disk storage, magnetic cassettes, magnetic tapes, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and can be accessed by a computer. Furthermore, it is well known to those skilled in the art that communication media typically include computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and may include any information delivery media.
[0096] In addition, an embodiment of the present application further provides a computer program product, including a computer program, which, when executed by a processor, implements the delay comparison method for multi-source data in any of the previous embodiments.
[0097] It should be noted that in the above embodiments, the description of each embodiment has its own emphasis, and for the parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0098] It should also be understood that the various implementation methods provided in the embodiments of the present application can be combined arbitrarily to achieve different technical effects.
[0099] Finally, it should be noted that the embodiments described above are only specific implementation methods of the present application, which are used to illustrate the technical solution of the present application rather than to limit it. The protection scope of the present application is not limited thereto. Although the present application has been described in detail with reference to the aforementioned embodiments, ordinary technicians in this field should understand that any technician familiar with this technical field can still modify the technical solution recorded in the aforementioned embodiments within the technical scope disclosed in the present application, or make equivalent replacements for some of the technical features therein; and these modifications, changes or replacements do not make the essence of the corresponding technical solution deviate from the spirit and scope of the technical solution of the embodiments of the present application, and should all be covered by the protection scope of the present application.
Claims
1. A delay comparison method for multi-source data, characterized in that: The method comprises the following steps: Receiving data interface videos corresponding to a plurality of client applications to be tested, wherein the data interface videos are obtained by capturing videos of the data interfaces of the client applications to be tested; For each of the data interface videos, multiple frames of data interface screenshots are extracted from the data interface video, and indicator data information is located and extracted from each frame of the data interface screenshot through a trained AI model, wherein the indicator data information includes indicator data and a snapshot timestamp corresponding to the indicator data; Receiving standard data information from a standard data source server, the standard data information including standard data and a standard update timestamp corresponding to the standard data; The indicator data information corresponding to each of the client applications to be tested is compared with the standard data information with a delay to obtain the evaluation results corresponding to each of the client applications to be tested.
2. The method according to claim 1, characterized in that The AI model includes a target detection model and an OCR model; the trained AI model locates and extracts the indicator data information from each frame of the data interface screenshot, including performing the following processing on each frame of the data interface screenshot: Detecting the position of the indicator data and the position of the snapshot timestamp in the data interface screenshot by using the target detection model; Obtaining an indicator data screenshot and a snapshot timestamp screenshot according to the position of the indicator data and the position of the snapshot timestamp; The indicator data screenshot and the snapshot timestamp screenshot are processed by text recognition through the OCR model to obtain the indicator data and the snapshot timestamp.
3. The method according to claim 2, characterized in that The target detection model is trained in the following way: Constructing a sample set, the sample set including data interface screenshot samples of multiple clients and annotated screenshots corresponding to the data interface screenshot samples; Detecting the position of the indicator data and the position of the snapshot timestamp in the data interface screenshot sample by using the target detection model; Determine a loss function value according to a deviation between a position of the indicator data and a position marked with the indicator data in the marked screenshot, and a deviation between a position of the snapshot timestamp and a position marked with the snapshot timestamp in the marked screenshot; The model parameters of the target detection model are adjusted according to the loss function value to obtain a trained target detection model.
4. The method according to claim 1, characterized in that The evaluation result includes delay time information; the indicator data information corresponding to each of the client applications to be tested is compared with the standard data information for delay, and the evaluation result corresponding to each of the client applications to be tested is obtained, including: Sorting the received standard data information in order of standard update timestamps from earliest to latest to obtain a first indicator change list; For each of the client applications to be tested, sorting the indicator data information corresponding to the client application to be tested in order of snapshot timestamps from early to late, to obtain a second indicator change list; Compare the second indicator change list corresponding to the client application to be tested with the first indicator change list to obtain delay time information of each update of the client application to be tested; The delay time information of each update of each client application to be tested is displayed.
5. The method according to claim 4, characterized in that Each indicator data information in the second indicator change list has a corresponding indicator change sequence number; after obtaining the delay time information of each update of the client application to be tested, it also includes: For each indicator change sequence number, compare the delay time information of multiple client applications to be tested corresponding to the indicator change sequence number to determine the update speed order of each client application to be tested; Sorting all the client applications to be tested from fastest to slowest update to obtain a third indicator change list; The third indicator change list is displayed.
6. The method according to claim 5, characterized in that The third indicator change list includes an update delay time difference between any one of the client applications to be tested and the fastest updated client application to be tested.
7. The method according to claim 1, characterized in that For each of the data interface videos, extracting multiple frames of data interface screenshots from the data interface video includes: For each of the data interface videos, video frames of the data interface video are acquired at preset time intervals to obtain a plurality of data interface screenshots.
8. A delay comparison device for multi-source data, characterized in that: The device comprises: A video capture module, used to receive data interface videos corresponding to a plurality of client applications to be tested, wherein the data interface videos are obtained by capturing the data interfaces of the client applications to be tested; An indicator data information acquisition module, for each of the data interface videos, extracting multiple frames of data interface screenshots from the data interface video, and locating and extracting indicator data information from each frame of the data interface screenshot through a trained AI model, wherein the indicator data information includes indicator data and a snapshot timestamp corresponding to the indicator data; A standard data information acquisition module, used to receive standard data information from a standard data source server, wherein the standard data information includes standard data and a standard update timestamp corresponding to the standard data; The delay comparison module is used to perform delay comparison between the indicator data information corresponding to each of the client applications to be tested and the standard data information to obtain the evaluation results corresponding to each of the client applications to be tested.
9. An electronic device, characterized in that: include: Memory, used to store programs; A processor, configured to execute the program stored in the memory. When the processor executes the program stored in the memory, the processor is configured to execute: a method as described in any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that: Computer executable instructions are stored, and the computer executable instructions are used to execute: the method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Live broadcast delay testing method and live broadcast delay testing device
CN108513149A
Reconciliation data processing method and device, computer equipment and storage medium
CN114612209A
Multi-source data standardization processing method, device and system and storage medium
CN115629889A
Multi-source financial information data verification method and system, terminal and storage medium
CN118964341A
System and method for building a point-in-time snapshot of an eventually-consistent data store
US20130218840A1