Exchange port data updating method, related device and storage medium
By obtaining and reconstructing the data in the orders one by one, generating target handicap data and refreshing the display, the problems of slow handicap refresh speed and poor display in the existing technology are solved, and efficient and fine handicap data refresh is achieved.
Patent Information
- Application Number
- CN202311256845.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-09-25
- Publication Date
- 2025-03-25
AI Technical Summary
In the prior art, the method of refreshing the trading port based on snapshot data leads to a slow refresh rate, which cannot meet the user's high refresh rate requirements for the trading market response window. At the same time, the trading port display is not detailed, making it difficult for users to detect abnormal trading port movements in a timely manner.
By obtaining transaction orders by transaction, including transaction transaction data and commission data in a continuous bidding cycle, reconstructing the order book, generating target handicap data, and refreshing the handicap data currently displayed based on this data.
It significantly improves the speed of market refresh, improves the precision of market visual display, helps users to detect abnormal market movements in a timely manner, and achieves millisecond-level market data refresh.
Smart Images

Figure CN119693132A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of data processing technology, and in particular to a method for updating exchange market data, related devices and storage media. Background Art
[0002] For investors, the market data is the most direct window to observe market reactions, so the speed of market data refresh will profoundly affect the user experience, and the stock trading market data is becoming increasingly important. Currently, third-party software on the market (such as Dongfang Fortune, Tonghuashun, brokerage and other stock trading apps, etc.) are based on the transaction data aggregated within 3 seconds of snapshot data to refresh the market. For example, if it is a non-level 2 paid user, the level 1 snapshot data (5-level market) will be displayed; if it is a level 2 user, the level 2 snapshot data (10-level market) will be displayed.
[0003] In the process of research and practice of the prior art, the inventors of the embodiments of the present application found that since the snapshot data shows the latest market conditions (i.e., transaction data) every 3 seconds, it includes tick-level volume and price data and market order data, and these snapshot data are all at the second level. Therefore, under the current method of refreshing the market based on snapshot data, the overall refresh speed is slow (for example, the market can only be refreshed every 3 seconds based on second-level snapshot data), which can obviously not meet the user's requirements for a high refresh speed of the trading market reaction window. Summary of the invention
[0004] The embodiments of the present application provide an exchange market data update method, related devices and storage media, which can significantly improve the market refresh speed, improve the precision of the market visualization display, and help users to discover market changes in a timely manner.
[0005] In a first aspect, an embodiment of the present application provides a method for updating exchange market data, the method comprising:
[0006] Obtaining a pending transaction order, wherein the transaction order includes transaction data and order data of at least one tradable subject in at least one continuous bidding cycle;
[0007] Obtaining a buy order set and a sell order set according to the order-by-order operation;
[0008] Taking the intersection of the buy executed order set and the sell executed order set to obtain partially executed entrustment orders, and taking the difference of the buy executed order set and the sell executed order set to obtain unexecuted entrustment orders;
[0009] According to the partially executed entrustment orders and the unexecuted entrustment orders, an updated buy order union set and an updated sell order union set are obtained;
[0010] updating the combined buy order set and the combined sell order set to a target order book;
[0011] Generate target market data according to the target order book;
[0012] The currently visualized handicap data is refreshed based on the target handicap data.
[0013] In a second aspect, an embodiment of the present application provides a data updating device having the function of implementing the exchange market data updating method provided in the first aspect above. The function can be implemented by hardware, or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions, and the modules can be software and / or hardware.
[0014] In some implementations, the data updating device includes:
[0015] An input-output module, used to obtain a pending transaction order, wherein the transaction order includes transaction data and entrustment data of at least one tradable subject in at least one continuous bidding cycle;
[0016] A processing module, configured to obtain a buy order set and a sell order set according to the operation orders obtained by the input and output module; obtain partially executed entrustment orders by taking the intersection of the buy order set and the sell order set, and obtain unexecuted entrustment orders by taking the difference of the buy order set and the sell order set;
[0017] The processing module is also used to obtain an updated buy order union and sell order union according to the partially executed entrustment orders and the unexecuted entrustment orders; update the buy order union and the sell order union to a target order book; generate target market data according to the target order book, and refresh the market data currently displayed visually based on the target market data.
[0018] In a third aspect, an embodiment of the present application provides a data updating device, comprising: at least one processor and a memory; wherein the memory is used to store a computer program, and the processor is used to call the computer program stored in the memory to execute the steps in any one of the exchange quotation data updating methods provided in the first aspect or any one of the implementation methods of the first aspect.
[0019] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium having a function of implementing the exchange market data update method provided in the first aspect above. The function can be implemented by hardware, or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions, and the modules can be software and / or hardware. Specifically, the computer-readable storage medium stores a plurality of instructions, and the instructions are suitable for the processor to load to execute the steps in any of the exchange market data update methods provided in the first aspect and any of the implementation methods of the first aspect in the embodiment of the present application.
[0020] Compared with the prior art, in the solution provided by the embodiment of the present application, when refreshing the market data, the target market data for refreshing is obtained based on the relevant transaction-by-transaction data, that is, the transaction-by-transaction order is obtained, and the transaction-by-transaction order includes the transaction-by-transaction data and the transaction-by-transaction entrustment data of at least one tradable target in at least one continuous bidding cycle. Therefore, on the one hand, compared with the traditional snapshot data, the transaction-by-transaction order can represent the transaction-by-transaction data and the transaction-by-transaction entrustment data in at least one continuous bidding cycle in a fine-grained manner, and these transaction-by-transaction data and the transaction-by-transaction entrustment data can effectively The millisecond-level transaction data is restored, rather than the snapshot data with a time unit of several seconds (for example, 3 seconds). Therefore, the target order book generated by the intersection and difference of the buy transaction order set and the sell transaction order set obtained according to the transaction-by-transaction order only includes partially executed orders and unexecuted orders. When the target market data is generated according to the target order book, the target market data has the specific function of restoring the millisecond-level transaction data, so that the current visually displayed market data can be efficiently refreshed based on the target market data, that is, the refresh speed can be guaranteed to reach the millisecond level.
[0021] On the other hand, since the transaction orders used to generate the target market data can represent the transaction data and entrustment data in at least one continuous bidding cycle in a fine-grained manner, the target market data can be displayed in a more refined and fine-grained manner, thereby completely reproducing / restoring the market transaction situation in at least one continuous bidding cycle, so that users can more intuitively receive more complete and accurate market data. Therefore, based on these accurate, ultra-low latency target market data, they can select the tradable targets that are more worthy of trading at the moment, so as not to miss the best selling opportunity and the best selling opportunity. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] Figure 1 A schematic diagram of an application scenario provided in an embodiment of the present application;
[0023] Figure 2 This is a schematic diagram of an algorithm framework of a business server in an embodiment of the present application;
[0024] Figure 3a A flow chart of a method for updating exchange market data in an embodiment of the present application;
[0025] Figure 3b Another flow chart of the method for updating the exchange market data in the embodiment of the present application;
[0026] Figure 4 A schematic diagram of a market page for refreshing market data based on the exchange market data updating method in an embodiment of the present application;
[0027] Figure 5a A schematic diagram of an engineering implementation framework of the method for updating the exchange market data in the embodiment of the present application;
[0028] Figure 5b A flow chart showing how to improve the performance of a trading platform after executing the exchange market data update method in an embodiment of the present application;
[0029] Figure 6 It is a structural schematic diagram of a data updating device in an embodiment of the present application;
[0030] Figure 7 It is a structural schematic diagram of a physical device for implementing the exchange market data updating method in the embodiment of the present application;
[0031] Figure 8 It is a structural schematic diagram of a mobile phone implementing the method for updating exchange market data in the embodiment of the present application;
[0032] Fig. 9 It is a structural diagram of a server implementing the exchange market data updating method in the embodiment of the present application. DETAILED DESCRIPTION
[0033] It should be noted that the principles of the embodiments of the present application are illustrated by implementing them in an appropriate computing environment. The following description is based on the illustrated specific embodiments of the present application and should not be considered as limiting other specific embodiments of the present application that are not described in detail herein.
[0034] In the following description of the embodiments of the present application, reference is made to “some embodiments” and “some implementation methods”, which describe subsets of all possible embodiments. However, it can be understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.
[0035] The terms "first", "second", etc. in the specification and claims of the embodiments of the present application and the above-mentioned drawings are used to distinguish similar objects (for example, the first delegation queue and the second delegation queue in the embodiments of the present application respectively represent different delegation queues with the same attributes), and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments described here can be implemented in an order other than the content illustrated or described here. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device including a series of steps or modules is not necessarily limited to those steps or modules clearly listed, but may include other steps or modules that are not clearly listed or inherent to these processes, methods, products or devices. The division of modules that appear in the embodiments of the present application is only a logical division. There may be other division methods when implemented in actual applications, such as multiple modules can be combined into or integrated in another system, or some features can be ignored or not executed, which are not limited in the embodiments of the present application. Furthermore, the modules or sub-modules described as separate components may or may not be physically separated, may or may not be physical modules, or may be distributed in multiple circuit modules, and some or all of the modules may be selected according to actual needs to achieve the purpose of the embodiment of the present application.
[0036] Unless otherwise defined, all technical and scientific terms used in the embodiments of the present application have the same meaning as those commonly understood by those skilled in the art of the present application. The terms used herein are only for the purpose of describing the embodiments of the present application and are not intended to limit the present application.
[0037] It should be noted that the solution provided in the embodiments of the present application involves technologies such as artificial intelligence (AI), natural language processing (NLP), and machine learning (ML), which are specifically described by the following embodiments:
[0038] Among them, AI is the theory, method, technology and application system that uses digital computers or machines controlled by digital computers to simulate, extend and expand human intelligence, perceive the environment, acquire knowledge and use knowledge to obtain the best results. In other words, artificial intelligence is a comprehensive technology in computer science that attempts to understand the essence of intelligence and produce a new intelligent machine that can respond in a similar way to human intelligence. Artificial intelligence is to study the design principles and implementation methods of various intelligent machines so that machines have the functions of perception, reasoning and decision-making.
[0039] AI technology is a comprehensive discipline that covers a wide range of fields, including both hardware-level and software-level technologies. The basic technologies of artificial intelligence generally include sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technology, operation / interaction systems, mechatronics and other technologies. Artificial intelligence software technology mainly includes machine learning (ML) technology, among which deep learning (DL) is a new research direction in machine learning. It is introduced into machine learning to make it closer to the original goal, namely artificial intelligence. At present, deep learning is mainly used in fields such as machine vision and natural language processing.
[0040] Deep learning is the process of learning the inherent laws and representation levels of sample data. The information obtained in the learning process is of great help in interpreting data such as text, images, and sound. Using deep learning technology and corresponding training sets, network models that implement different functions can be trained. For example, taking natural language processing as an example, a question-answering model for question answering can be trained based on one training set, and an opinion extraction model for text opinion extraction can be trained based on another training set.
[0041] NLP is an important direction in the fields of computer science and artificial intelligence. It studies various theories and methods that can achieve effective communication between people and computers using natural language. Natural language processing is a science that integrates linguistics, computer science, and mathematics. Therefore, research in this field will involve natural language, that is, the language people use in daily life, so it is closely related to the study of linguistics. Natural language processing technology usually includes text processing, semantic understanding, machine translation, robot question answering, knowledge graph and other technologies.
[0042] In terms of NLP in the field of artificial intelligence, the embodiments of this application can be used to reconstruct the order book of each transaction for stocks, ETFs, convertible bonds, reverse repurchases and other tradable categories of each exchange, and then restore the millisecond-level transaction-by-transaction data based on the order book, thereby creating a strong mental word-of-mouth function for differentiated competition in the self-selected stock market. In some implementation methods, the relevant technical solutions in the embodiments of this application can also be used in application scenarios such as community information discussion pages and external app promotion.
[0043] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of this application.
[0044] The embodiment of the present application provides a method for updating the market data of an exchange, a related device and a storage medium. The method can be used for a server or a terminal device. Taking the method used for a server as an example, the method can be executed by a server with a data processing device installed, or by a data processing device installed in a server. For the case of using the method for a terminal device, please refer to the relevant description on the server side, and no further description is given. The embodiment of the present application only takes the market data update of the tradable subject of the exchange as an example, and does not make any limitation to this. In other application scenarios, calculations can be based on the method in the embodiment of the present application. Figure 2 The algorithm framework implementation shown can replace some or all of the parameters in the algorithm framework according to the actual business scenario.
[0045] In some implementations, the present invention is applied to Figure 1 In the application scenario shown, the application scenario may involve at least one business server corresponding to at least one exchange and multiple terminal devices (such as the client of the trading platform). Among them, the terminal device can install the client of the trading platform, and the client installed on each terminal device can be a client with the same or different version numbers, or a client with the same or different operating systems. The embodiment of the application does not limit the version of the client and the type of operating system corresponding to the client. The following is a detailed description.
[0046] Business server: It can be called a trading platform, which can be used to dynamically display and refresh the market data of at least one tradable subject corresponding to each exchange to each terminal device, and provide users with business services such as buying and selling tradable subjects. For example, based on the preset matching strategy, the entrustment orders (such as buy orders and sell orders) initiated by users can be dynamically updated, so that users can quickly and intuitively obtain these data, and then conduct transactions in a timely manner (such as buying / selling tradable subjects).
[0047] like Figure 2 As shown, it is a schematic diagram of an algorithm framework used by the business server in the transaction scenario between tradable objects of the exchange. Figure 2 When the algorithm framework shown implements the above-mentioned exchange market data update method and exchange market data update method, the business server can reconstruct the order book based on the transaction orders and entrustment orders during the continuous bidding period of the exchange, generate buy and sell gears (hereinafter referred to as buy gears and sell gears, which will not be repeated or distinguished in the following text), and generate an entrustment queue corresponding to each buy / sell gear based on a preset matching strategy (for example, based on a price priority strategy or a time priority strategy).
[0048] It should be noted that Figure 1The application scenario diagram shown is only an example. The application scenario described in the embodiment of the present application is to more clearly illustrate the technical solution of the embodiment of the present application, and does not constitute a limitation on the technical solution provided by the embodiment of the present application. Ordinary technicians in this field can know that with the evolution of language processing systems and the emergence of new business scenarios, the technical solution provided by the embodiment of the present application is also applicable to similar technical problems.
[0049] The business server involved in the embodiments of the present application may be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms. The data update device involved in the embodiments of the present application may be a smart phone, a tablet computer, a laptop computer, a desktop computer, a smart speaker, a smart watch, a personal digital assistant, etc., but is not limited to this. The data update device and the server can be directly or indirectly connected via wired or wireless communication, which is not limited in the embodiments of the present application.
[0050] In the related technologies, since the market refresh is based on the transaction data aggregated within a few seconds of snapshot data, there are mainly the following three types of technical problems:
[0051] Technical Problem 1: The current method of refreshing the market based on snapshot data has a slow overall refresh speed (for example, the market is refreshed every 3 seconds), which cannot meet the user's requirement for a high refresh speed for the trading market reaction window.
[0052] Technical Issue 2: Since the market refresh is based on the transaction data aggregated within 3 seconds of the snapshot data, it is impossible to fully reproduce the market transaction situation transaction by transaction, so the market display is not precise.
[0053] Technical issue 3: Since the market refresh is based on the transaction data aggregated within 3 seconds of the snapshot data, users cannot detect market changes in a timely manner.
[0054] In this regard, the embodiments of the present application mainly adopt the following technical solutions:
[0055] Based on the transaction orders and entrustment orders during the continuous bidding period of the exchange, the order book is reconstructed to generate buy 1 to buy n levels, sell 1 to sell n levels, and entrustment queues corresponding to each buy and sell level (based on price priority and time priority strategies).
[0056] The following combination Figure 3a / 3b- Fig. 9 The technical solution of the embodiment of the present application is exemplified.
[0057] Figure 3a This is a flow chart of a method for updating the exchange market data in an embodiment of the present application. The method can be applied to any trading platform. There are multiple tradable targets of various target types in the trading platform, which can be selected by users (such as buyers and sellers) for trading. The embodiment of the present application includes:
[0058] 201. Get the pending operation order.
[0059] The operation order includes a transaction-by-transaction order, which includes: transaction data and entrustment data of at least one tradable subject (which can come from any target exchange in the trading platform) within at least one continuous bidding cycle.
[0060] In some embodiments, the transaction data includes part or all of the transaction data on a transaction-by-transaction basis, and the entrustment data includes part or all of the entrustment data on a transaction-by-transaction basis, that is, the transaction-by-transaction operation order includes the transaction-by-transaction data and the transaction-by-transaction entrustment data of at least one tradable object within at least one continuous bidding cycle.
[0061] Among them, transaction data refers to: transaction data records a detailed list of stock matching transactions at each time point, such as the order number of the buyer and seller, transaction price, transaction volume, BS sign (buying and selling direction) and other data.
[0062] Order-by-order data refers to: Order-by-order data records the detailed list of buy and sell orders received by the exchange at each point in time, such as the buy (sell) order number, order price, order quantity, order type (including order cancellation) and other data.
[0063] In some implementations, the tradable targets participating in the refresh based on the target market data meet at least one of the following four items:
[0064] a. During a preset time period, such as during peak hours, major events or hot events.
[0065] b. Hot tradable items that users pay attention to during a preset period of time. For example, during the World Cup, the hot tradable items that users pay more attention to may include: peripheral products of a certain sports brand, gold, beer, etc.
[0066] c. The heat value within the preset time period is higher than the preset threshold. For example, after a relevant policy is released, the heat value of tradable targets such as Metaverse-related products, a certain brand of gold, wine, glass, steel, etc. continues to be very high, and is also the focus of frequent transactions.
[0067] d. During the user focus period of a preset event associated with the tradable subject, the preset event includes at least one of a specific event and a hot event.
[0068] It can be seen that the embodiments of the present application can choose to refresh the market data for some or all of the tradable targets through the transaction-by-transaction market data refresh method. Usually, the tradable targets that meet at least one of the four items listed above can be selected to refresh the market data through the transaction-by-transaction market data refresh method. On the one hand, applying the computing power based on the transaction-by-transaction market data refresh method to such tradable targets with high matching transaction activity and high value can attract more target users to the trading platform for buying and selling transactions; on the other hand, considering that when the transaction-by-transaction market data refresh method is used for all tradable targets, it may affect the expected effect of the transaction-by-transaction market data refresh method when the trading platform is actually running, or insufficient computing power may lead to trading abnormalities, so by selecting specific tradable targets to implement the transaction-by-transaction market data refresh method, the trading platform can run better and achieve the expected refresh speed and refresh effect.
[0069] 202. Obtain a buy transaction order set and a sell transaction order set according to the operation order.
[0070] The buy transaction order set and the sell transaction order set may be obtained according to the operation orders one by one.
[0071] 203. Generate a target order book according to the buy executed order set and the sell executed order set.
[0072] The target order book is obtained based on the transaction-by-transaction data, and includes the current buy order union and sell order union, and may also include the target entrustment queues corresponding to the buy order union and the sell order union, and the target entrustment queues include the first entrustment queues corresponding to each buy level and the second entrustment queues corresponding to each sell level. It is understandable that the target order book may include partially executed entrustment orders and unexecuted entrustment orders.
[0073] The role of the target order book in terms of refresh delay and refresh granularity is different from the snapshot data obtained in units of seconds in the prior art.
[0074] Specifically, a target order book can be generated based on the order of each operation. In some embodiments of the present application, in order to obtain target market data with low latency, a method for generating a target order book based on the order of each operation is also provided, which specifically includes the following steps 203-1 to 203-3. The specific process can be referred to Figure 3b :
[0075] 203-1. Taking the intersection of the buy executed order set and the sell executed order set to obtain partially executed entrustment orders, and taking the difference of the buy executed order set and the sell executed order set to obtain unexecuted entrustment orders.
[0076] 203-2. Obtain an updated buy order set and a sell order set according to the partially executed entrustment orders and the unexecuted entrustment orders.
[0077] 203-3. Update the buy order union and the sell order union to the target order book (which can also be understood as newly generated, and the embodiment of the present application does not limit or distinguish this).
[0078] It can be seen that by taking the intersection and difference of the buy order set and the sell order set respectively, and then obtaining the sell order union and the sell order union for updating the target order book based on the intersection and the difference, the target order book only includes some completed orders and uncompleted orders. When the target market data is subsequently generated according to the target order book, the target market data can have the specific function of restoring millisecond-level transaction data, so that the current visual display of the market data (target exchange) can be efficiently refreshed based on the target market data, that is, the refresh speed can be guaranteed to reach the millisecond level. It can be seen that the target order book can provide good data support for the subsequent refresh of market data.
[0079] In some implementations, in order to increase the probability of transaction matching between buyers and sellers, the target entrustment queue may be generated according to a preset transaction matching strategy, wherein the transaction matching strategy includes at least one of a price priority strategy and a time priority strategy.
[0080] Accordingly, in order to better display the current real-time entrustment queue situation to the user, so that the user can maximise profits and minimise profit losses from the general direction without having to deduce based on their own professional knowledge and market data changes, transactions adapted to the current bidding cycle can be carried out based on the target entrustment queue. To this end, the embodiment of the present application also provides an optimized transaction matching strategy, which includes at least one of a price priority strategy and a time priority strategy. When different transaction matching strategies are selected, the corresponding entrustment queue will also change dynamically and display differently, which are explained below:
[0081] (1) Under the price priority strategy, in the first order queue, the order of buying levels is arranged in the order of high to low buying prices; in the second order queue, the order of selling levels is arranged in the reverse order of high to low selling prices.
[0082] For example, for a buy order, the one with a higher buy price is ranked higher than the one with a lower buy price; for a sell order, the one with a lower sell price is ranked higher than the one with a higher sell price.
[0083] It can be seen that, on the one hand, by setting the price priority strategy, for the seller, the target users who have the intention to sell can choose the opportunity with a higher current price based on the first entrustment queue to sell the tradable targets they hold, and for the buyer, they can intuitively see the current high-priced sell orders; on the other hand, by setting the price priority strategy, for the buyer, the target users who have the intention to buy can choose the tradable targets with a lower current price, which can be traded quickly and are currently suitable for buying based on the second entrustment queue, and for the seller, the tradable targets they want to sell can be displayed to the buyer in priority to increase the probability of selling.
[0084] (2) Under the time priority strategy, in the first entrustment queue, the order of buying positions is arranged in the order of entrustment time; in the second entrustment queue, the order of selling positions is arranged in the reverse order of entrustment time.
[0085] For example, for the same bid price or ask price, orders with earlier entrustment times are ranked higher than orders with later entrustment times.
[0086] It can be seen that, on the one hand, by setting a time priority strategy, for multiple buyers who are willing to purchase the same type of tradable standard products, buyers who have placed an early purchase order can select a tradable standard product that is currently suitable for purchase and has a lower current price, can be traded quickly, and is currently suitable for purchase based on the second order queue. On the other hand, by setting a time priority strategy, for sellers who want to sell the same type of tradable targets, sellers who have placed an order early can give priority to showing their selling orders to target users who have the intention to buy, so that the target users who have the intention to buy can select the tradable target based on the second order queue to increase the probability of selling.
[0087] In some implementations, in order to further display market trading data that meets the needs of the user to the user so as to increase the probability of matching transactions, customized settings may be made for the user. Specifically, before generating the target entrustment queue, the method further includes:
[0088] First, the subscription information of the target user is obtained, where the target user is a buying user or a selling user, and the subscription information includes at least one of a refresh frequency and a refresh mode, where the refresh mode includes refreshing based on transaction-by-transaction market data or refreshing based on snapshot market data;
[0089] A customized target entrustment queue is then generated according to the subscription information. In the trading platform, at least some or all target users have different target entrustment queues displayed corresponding to them.
[0090] It can be seen that in this embodiment, by displaying a specific entrustment queue separately for the user, the user can subscribe to the refresh frequency and refresh method, and not all users are displayed the same. Such a customized display of entrustment queue can display the entrustment queue that matches the real needs of the user for different subscribed users, so that the subscribed user can choose the appropriate transaction time according to the entrustment queue that matches his own needs, such as selecting the appropriate time to sell at least one tradable target, or selecting the appropriate time to buy at least one tradable target, so as to maximize benefits and minimize losses.
[0091] 204. Generate target market data according to the target order book.
[0092] The target market data is used to reproduce the transaction data of the tradable target. The target market data includes buy levels with different transaction values and sell levels with different transaction values. Here, the buy level and sell level both refer to sets. For example, the buy level can refer to the set of current buy levels, which can also be called the buy order set; similarly, the sell level can refer to the set of current sell levels, which can also be called the sell order set.
[0093] 205. Refresh the currently visualized handicap data based on the target handicap data.
[0094] It is understandable that, compared with the related art that can only update the market data based on snapshot data of a few seconds, the embodiment of the present application replaces the snapshot data currently displayed by the target exchange with the target market data and displays it visually. Taking the market update of tradable target a (60678.SH) as an example, Figure 4 For the tradable target a (60678.SH), after refreshing the current stock details page of the tradable target a (60678.SH) using the above-mentioned estimated transaction-by-transaction market data refresh method, level 2 paying users can see the market refresh speed from buy 1 to buy 10, and sell 1 to sell 10, achieving millisecond-level refresh.
[0095] In some implementations, considering that after the refresh method based on the transaction-by-transaction market data is applied to multiple tradable targets, the refresh effect may be less and less satisfactory due to data updates or other factors. In this implementation, some constraints may be imposed on this refresh method. Specifically, the market data currently displayed visually is refreshed based on the target market data to meet at least one of the following conditions:
[0096] The refresh period is less than or equal to the bidding period;
[0097] The next refresh time is obtained based on the historical refresh time;
[0098] Alternatively, the next refresh time is obtained based on the bidding period and a preset delay offset.
[0099] It can be seen that by limiting the refresh cycle to be less than or equal to the bidding cycle, the refresh speed can be guaranteed, as well as low-latency refresh under high refresh granularity conditions; by limiting the next refresh time to be obtained based on the historical refresh time, after the above-mentioned data refresh method based on each transaction is run for a long time, if it is found that the refresh change of a certain tradable target in multiple consecutive bidding cycles is small, or there are some change rules, then the next refresh time can be dynamically determined based on the historical refresh time of the tradable target, which can also reduce the computing power occupied by unnecessary long-term low-latency refresh. By limiting the next refresh time to be obtained based on the bidding cycle and the preset delay bias, the relevant data for the next refresh can be prepared in advance, and the preset delay bias obtained based on the experience value can be added to enable timely refresh. The embodiment of the present application does not limit the calculation method and size of the preset delay bias.
[0100] In a nutshell, in the embodiment of the present application, since when refreshing the market data, it is based on the relevant transaction-by-transaction data, that is, the transaction-by-transaction order is obtained, and the transaction-by-transaction order includes the transaction-by-transaction data and the transaction-by-transaction entrustment data of at least one tradable subject in at least one continuous bidding cycle, therefore, on the one hand, compared with the traditional snapshot data, the transaction-by-transaction order can characterize the transaction-by-transaction data and the transaction-by-transaction entrustment data in at least one continuous bidding cycle in a fine-grained manner, and these transaction-by-transaction data and the transaction-by-transaction entrustment data can effectively restore the millisecond-level transaction-by-transaction market data, rather than the snapshot data with a time unit of several seconds (for example, 3 seconds), so that the target order book generated according to the transaction-by-transaction order only includes partially executed entrustment orders and unexecuted entrustment orders. When the target market data is generated according to the target order book, the target market data has the specific function of restoring the millisecond-level transaction-by-transaction data, so that the market data currently displayed visually (target exchange) can be efficiently refreshed based on the target market data, that is, the refresh speed can be guaranteed to reach the millisecond level.
[0101] On the other hand, since the transaction orders used to generate the target market data can represent the transaction data and entrustment data in at least one continuous bidding cycle in a fine-grained manner, the target market data can be displayed in a more refined and fine-grained manner, thereby completely reproducing / restoring the market transaction situation in at least one continuous bidding cycle, so that users can more intuitively receive more complete and accurate market data. Therefore, based on these accurate, ultra-low latency target market data, they can choose the tradable targets that are more worth trading at the moment, so as not to miss the best selling opportunity and the best selling opportunity.
[0102] On the other hand, since the target entrustment queue corresponds to the target market data, and the target market data can be accurately and timely refreshed, the target entrustment queue can intuitively and dynamically display the current buying and selling positions in real time, so that when users browse the current market data of different exchanges at any time, they can discover in time when the market data changes, so that users can perform trading operations such as selling / selling in time, so that users can obtain more benefits at the first time (for example, the selling order of the tradable target that is not bought by themselves reaches the best / better buying time) and reduce more losses (for example, selling in time when the price goes down).
[0103] Optionally, in some embodiments of the present application, in order to continuously improve the refresh speed and refresh quality of the market data, the refresh effect of the target market data obtained based on the operation order by order can also be dynamically / statically evaluated, and the refresh index can be adaptively adjusted. Specifically, after refreshing the currently visualized market data based on the target market data, the embodiments of the present application can also perform the following operations:
[0104] Acquire refresh evaluation data, where the refresh evaluation data is used to evaluate a refresh index based on the target market data refresh, where the refresh index includes at least one of a refresh speed, a refresh delay, and a reproduction granularity;
[0105] If it is determined according to the refresh evaluation data that at least one of the preset refresh indicators is not satisfied, some or all of the refresh indicators are updated.
[0106] It can be seen that by dynamically / statically evaluating the refresh effect of the target market data obtained based on each operation order and adaptively adjusting the refresh indicators, the refresh speed and quality of the market data can be improved.
[0107] Optionally, in some embodiments of the present application, in order to more intuitively compare the market refresh indicators of each tradable target, the refresh strategies of tradable targets of different target types can also be adjusted specifically. Specifically, the above refresh evaluation data includes refresh evaluation data corresponding to tradable targets of multiple business types. Accordingly, after obtaining the refresh evaluation data, the embodiments of the present application can also analyze the refresh evaluation data corresponding to each tradable target from a preset dimension to obtain a corresponding horizontal comparison result, and then dynamically adjust the refresh evaluation data according to the horizontal comparison result to meet the preset adjustment conditions of at least one tradable target refresh strategy.
[0108] For ease of understanding, the present application embodiment takes the market data refresh of the Shenzhen and Shanghai exchanges as an example to illustrate an exchange market data update method in the present application embodiment. Specifically, the embodiment can be based on the following example: Figure 5a The engineering implementation framework diagram shown in the figure is implemented as follows. Figure 5a The engineering practice implementation framework shown is introduced as follows:
[0109] 1. Decoding Buy Order Messages and Sell Order Messages
[0110] The transaction-by-transaction entrustment data services of the Shanghai and Shenzhen exchanges are highly similar, but there are certain differences in implementation. Both are divided into multiple channels, and the entrustment sequence number (order index) of each channel is continuous, starting from 1. If it is detected that the sequence number of a certain entrustment channel is discontinuous, it is judged as packet loss, and it is necessary to request to rebuild the port and make up for the lost data.
[0111] 1.1. The specific steps for Shanghai Stock Exchange to decode buy order messages and sell order messages are as follows a1-d1:
[0112] a1. Cancellation and placement of orders are in the same message type.
[0113] b1. Messages are sent in batches, and the order between details and entrustment needs to be determined by Biz Index.
[0114] c1. The order-by-order only includes the remaining order quantity after the matching transaction. That is, if the market price eats up the other party's order quantity, this transaction will not be displayed in the order-by-order, and the order-by-order will include the order cancellation data. For example, the market order is placed at the market price. If the buyer places a market order to buy 1,000 shares at 10 yuan, and the seller sells 500 shares at 10 yuan with a limit order, the seller's order record will no longer be displayed in the order-by-order.
[0115] d1. During the call auction and suspension phase, the valid orders received will not be published in real time. After the call auction or suspension phase, the valid orders will be published uniformly.
[0116] 1.2. The specific steps for Shenzhen Stock Exchange to decode buy order messages and sell order messages are as follows a2-d2:
[0117] a1. Order cancellation and order placement are not in the same message type, but in the detail type.
[0118] a2. Messages are sent in a streaming manner, and the order in which messages are received is the business order.
[0119] a3. The sequential entrustment includes all the entrustment orders of all market price limit orders. The entrustment is made first and then the transaction is completed. The buy and sell orders in the transaction can be found in the entrustment.
[0120] a4. Collect the valid orders received during the bidding and suspension stages, and publish them in real time.
[0121] 2. Optimize the performance of the trading platform
[0122] The number of orders placed in Shanghai and Shenzhen each day is in the hundreds of millions, and the memory usage is large during business peaks and replays. The following solutions can be used to optimize the performance of the trading platform:
[0123] 1. Use data pool and shared buffer
[0124] 2. Use leveldb to cache low-frequency data
[0125] proto encoding and decoding optimization
[0126] When the downstream requests data through TCP, the returned data comes from leveldb. The pb of the detailed data quote.TradeDetailItem is stored in leveldb, and the pb of the return format is quote.TradeDetailFrame. The same is true for the entrusted data, so I will not go into details.
[0127] Use BytesDetailFrame to reduce one encoding and one decoding. For the specific process, please refer to Figure 5b .
[0128] It can be seen that through this Figure 5a-Figure 5b From the embodiment shown, it can be seen that the technical solution of the embodiment of the present application is adopted, that is, the snapshot market data transmitted by the original exchange is accelerated by reconstructing the market transaction by transaction, and the market refresh speed is increased from second-level updates to millisecond-level updates, which can more objectively and efficiently display the changes in the market of the tradable targets (stocks, ETFs, convertible bonds, reverse repurchases) of the Shanghai and Shenzhen Stock Exchanges, achieving the leading level in the industry, and can effectively attract more users to adopt the trading platform based on the technical solution of transaction-by-transaction market data refresh in the embodiment of the present application through high-accuracy, low-latency market data refresh and display, thereby significantly improving the effect of attracting new users; at the same time, it can also more efficiently match transactions between users for a variety of tradable targets, thereby increasing the success probability of matching transactions.
[0129] It should be noted that when used to generate the above-mentioned target market data, if the computing power support, business concurrency, access concurrency and other situations are taken into account, snapshot data can also be appropriately introduced to temporarily replace or be incorporated into the calculation of the target market data to reduce the resource load in these situations. The embodiment of the present application does not force the market refresh of all tradable targets of all exchanges in the trading platform to adopt the method of market data one by one, but can be appropriately combined with the traditional method based on snapshot data refresh. In addition, the embodiment of the present application does not limit the ratio of the two methods of using market data one by one and refreshing based on snapshot data. In some implementation methods, when high concurrency causes calculation delays based on refreshing market data one by one, it can be switched to a method based on snapshot data refresh to implement a disaster recovery mechanism, ensure the refresh speed of the entire market data, and avoid interruptions, abnormalities and the like.
[0130] In some implementations, the technical solution for refreshing the target market data generated by each transaction order in the embodiment of the present application can be fully implemented in any time period and in any trading platform of any relevant tradable target, such as during peak hours and the period of occurrence of major events / hot events, and can be fully implemented in refreshing the market data of each tradable target; it can also be appropriately selected according to the time period and the type of tradable target. For example, for hot tradable targets that users pay more attention to and tradable targets with higher current heat values, this technical solution can be adopted to use more computing power to support the transaction matching of these tradable targets. In this regard, the embodiment of the present application does not limit this.
[0131] Figures 1 to 5b Any technical feature mentioned in any embodiment corresponding to any one of the items is also applicable to the embodiments of the present application. Figures 6 to 9 The corresponding embodiments will not be described in detail later.
[0132] A method for updating exchange market data in an embodiment of the present application is described above. A data updating device for executing the above-mentioned method for updating exchange market data is introduced below.
[0133] See also Figure 6 ,like Figure 6 The data updating device 40 shown in FIG. 1 is a structural diagram of a data updating device 40, which can be applied to the market data refresh of any tradable subject of any exchange. The data updating device 40 in the embodiment of the present application can realize the corresponding Figure 1-Figure 5b The steps in the exchange market data updating method executed by the data updating device 40 in any corresponding embodiment. The functions implemented by the data updating device 40 can be implemented by hardware, or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions, and the modules can be software and / or hardware. The data updating device 40 may include an input-output module 401 and a processing module 402. The functions of the input-output module 401 and the processing module 402 can be implemented by reference to Figure 1-Figure 5b The operations performed in any corresponding embodiment are not described in detail here.
[0134] In some implementations, the input / output module 401 may be used to obtain a pending transaction order, wherein the transaction order includes transaction data and order data of at least one tradable subject in at least one continuous bidding cycle;
[0135] The processing module 402 may be used to obtain a buy order set and a sell order set according to the operation orders obtained by the input and output module 401; obtain partially executed entrustment orders by taking the intersection of the buy order set and the sell order set, and obtain unexecuted entrustment orders by taking the difference of the buy order set and the sell order set;
[0136] The processing module is also used to obtain an updated buy order union and sell order union according to the partially executed entrustment orders and the unexecuted entrustment orders; update the buy order union and the sell order union to a target order book, wherein the target order book includes the partially executed entrustment orders and the unexecuted entrustment orders; generate target market data according to the target order book, and refresh the market data currently displayed visually based on the target market data.
[0137] In some implementations, after the processing module 402 refreshes the currently visualized handicap data based on the target handicap data, it is further configured to:
[0138] Acquire refresh evaluation data, where the refresh evaluation data is used to evaluate a refresh index based on the target market data refresh, where the refresh index includes at least one of a refresh speed, a refresh delay, and a reproduction granularity;
[0139] If it is determined according to the refresh evaluation data that at least one of the preset refresh indicators is not satisfied, some or all of the refresh indicators are updated.
[0140] In some implementations, the refresh evaluation data includes refresh evaluation data corresponding to tradable objects of multiple business types; after the processing module 402 obtains the refresh evaluation data, it is further used to:
[0141] Analyze the refreshed evaluation data corresponding to each tradable target from the preset dimensions to obtain the corresponding horizontal comparison results;
[0142] Dynamically adjust and refresh the evaluation data according to the horizontal comparison results to meet at least one tradable target refresh strategy of preset adjustment conditions.
[0143] In some implementations, the tradable targets participating in the refresh based on the target market data meet at least one of the following items:
[0144] During preset time periods (e.g. during peak hours, major events or hot spots);
[0145] The hot tradable targets that users are interested in during the preset period;
[0146] The heat value within the preset time period is higher than the preset threshold;
[0147] Alternatively, during the user focus period of a preset event associated with the tradable subject, the preset event includes at least one of a specific event and a hot event.
[0148] In the embodiment of the present application, when refreshing the market data, it is based on the relevant transaction-by-transaction data, that is, the transaction-by-transaction order is obtained, and the transaction-by-transaction order includes the transaction-by-transaction data and the transaction-by-transaction entrustment data of at least one tradable subject (of the target exchange) within at least one continuous bidding cycle. Therefore, on the one hand, compared with the traditional snapshot data, the transaction-by-transaction order can characterize the transaction-by-transaction data and the transaction-by-transaction entrustment data within at least one continuous bidding cycle in a fine-grained manner. These transaction-by-transaction data and the transaction-by-transaction entrustment data can effectively restore the millisecond-level transaction-by-transaction market data, rather than the snapshot data with a time unit of several seconds (for example, 3 seconds). Therefore, the target order book is reconstructed according to the transaction-by-transaction order, and the target market data and the target entrustment queue corresponding to the target market data are generated according to the target order book, so that the market data currently displayed visually (of the target exchange) can be efficiently refreshed based on the target market data.
[0149] On the other hand, since the transaction orders used to generate the target market data can represent the transaction data and entrustment data in at least one continuous bidding cycle in a fine-grained manner, the target market data can be displayed in a more refined and fine-grained manner, thereby completely reproducing / restoring the market transaction situation in at least one continuous bidding cycle, so that users can more intuitively receive more complete and accurate market data. Therefore, based on these accurate, ultra-low latency target market data, they can choose the tradable targets that are more worth trading at the moment, so as not to miss the best selling opportunity and the best selling opportunity.
[0150] On the other hand, since the target entrustment queue corresponds to the target market data, and the target market data can be accurately and timely refreshed, the target entrustment queue can intuitively and dynamically display the current buy and sell orders in real time, so that when the user browses the current market data of different exchanges at any time, he can discover in time when the market data changes, so that the user can perform trading operations such as sell / sell in time, so that the user can obtain more benefits at the first time (for example, the sell order of the tradable target that is not bought by himself reaches the best / better buying time) and reduce more losses (for example, when the price goes down, sell in time).
[0151] The above describes the data updating device 40 for executing the exchange market data updating method in the embodiment of the present application from the perspective of modular functional entities. The following describes the data updating device 40 for executing the exchange market data updating method and the image search device 50 for executing the exchange market data updating method in the embodiment of the present application from the perspective of hardware processing. It should be noted that in the embodiment of the present application, Figure 6 The entity device corresponding to the input / output module 401 in the illustrated embodiment may be an input / output unit, an input / output unit, a radio frequency circuit, a communication module, an output interface, etc., and the entity device corresponding to the processing module 402 may be a processor. Figure 6 The data updating device 40 shown may have the following features: Figure 7 The structure shown, when Figure 6 The data updating device 40 shown has the following features: Figure 7 When the structure shown is Figure 7 The processor and the input-output unit in the data updating device 40 can realize the same or similar functions as the input-output module 401 and the processing module 402 provided in the device embodiment corresponding to the data updating device 40. Figure 7 The memory in the storage processor executes the computer program that needs to be called when the above-mentioned exchange quotation data updating method is executed.
[0152] The present application also provides another data updating device. Figure 8 For the sake of convenience, only the parts related to the embodiments of the present application are shown. For specific technical details not disclosed, please refer to the method part of the embodiments of the present application. The data update device can be any data update device including a mobile phone, a tablet computer, a personal digital assistant (English full name: Personal Digital Assistant, English abbreviation: PDA), a sales data update device (English full name: Point of Sales, English abbreviation: POS), a car computer, etc., taking the data update device as a mobile phone as an example:
[0153] Figure 8 FIG. 1 is a block diagram of a portion of a mobile phone structure related to a data updating device provided in an embodiment of the present application. Figure 8 The mobile phone includes: a radio frequency (RF) circuit 710, a memory 720, an input unit 730, a display unit 740, a sensor 780, an audio circuit 760, a wireless fidelity (Wi-Fi) module 770, a processor 780, and a power supply 790. Those skilled in the art will appreciate that Figure 8The mobile phone structure shown in the figure does not constitute a limitation on the mobile phone, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.
[0154] Combine the following Figure 8 A detailed introduction to the various components of the mobile phone:
[0155] The RF circuit 710 can be used for receiving and sending signals during information transmission or calls. In particular, after receiving the downlink information of the base station, it is sent to the processor 780 for processing; in addition, the designed uplink data is sent to the base station. Generally, the RF circuit 710 includes but is not limited to an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier (full name: LowNoiseAmplifier, English abbreviation: LNA), a duplexer, etc. In addition, the RF circuit 710 can also communicate with the network and other devices through wireless communication. The above-mentioned wireless communications may use any communication standard or protocol, including but not limited to Global System of Mobile communications (Global System of Mobile communication, English abbreviation: GSM), General Packet Radio Service (General Packet Radio Service, English abbreviation: GPRS), Code Division Multiple Access (Code Division Multiple Access, English abbreviation: CDMA), Wideband Code Division Multiple Access (WCDMA), Long Term Evolution (Long Term Evolution, English abbreviation: LTE), e-mail, Short Messaging Service (SMS), etc.
[0156] The memory 720 can be used to store software programs and modules. The processor 780 executes various functional applications and data processing of the mobile phone by running the software programs and modules stored in the memory 720. The memory 720 can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc.; the data storage area can store data created according to the use of the mobile phone (such as audio data, a phone book, etc.), etc. In addition, the memory 720 can include a high-speed random access memory, and can also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage devices.
[0157] The input unit 730 can be used to receive input digital or character information, and to generate key signal input related to the user settings and function control of the mobile phone. Specifically, the input unit 730 may include a touch panel 731 and other input devices 732. The touch panel 731, also known as a touch screen, can collect the user's touch operation on or near it (such as the user's operation on the touch panel 731 or near the touch panel 731 using any suitable object or accessory such as a finger, stylus, etc.), and drive the corresponding connection device according to a pre-set program. Optionally, the touch panel 731 may include two parts: a touch detection device and a touch controller. Among them, the touch detection device detects the user's touch orientation, detects the signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts it into contact coordinates, and then sends it to the processor 780, and can receive and execute commands sent by the processor 780. In addition, the touch panel 731 can be implemented in various types such as resistive, capacitive, infrared, and surface acoustic waves. In addition to the touch panel 731, the input unit 730 may further include other input devices 732. Specifically, the other input devices 732 may include but are not limited to one or more of a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, a joystick, and the like.
[0158] The display unit 740 can be used to display information input by the user or information provided to the user and various menus of the mobile phone. The display unit 740 may include a display panel 741. Optionally, the display panel 741 may be configured in the form of a liquid crystal display (full name in English: Liquid Crystal Display, English abbreviation: LCD), an organic light-emitting diode (full name in English: Organic Light-Emitting Diode, English abbreviation: OLED), etc. Further, the touch panel 731 may cover the display panel 741. When the touch panel 731 detects a touch operation on or near it, it is transmitted to the processor 780 to determine the type of touch event. Subsequently, the processor 780 provides a corresponding visual output on the display panel 741 according to the type of touch event. Although in Figure 7 In the embodiment, the touch panel 731 and the display panel 741 are used as two independent components to realize the input and output functions of the mobile phone, but in some embodiments, the touch panel 731 and the display panel 741 can be integrated to realize the input and output functions of the mobile phone.
[0159] The mobile phone may also include at least one sensor 750, such as a light sensor, a motion sensor, and other sensors. Specifically, the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 741 according to the brightness of the ambient light, and the proximity sensor may turn off the display panel 741 and / or the backlight when the mobile phone is moved to the ear. As a type of motion sensor, the accelerometer sensor can detect the magnitude of acceleration in all directions (generally three axes), and can detect the magnitude and direction of gravity when stationary. It can be used for applications that identify the posture of the mobile phone (such as horizontal and vertical screen switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer, tapping), etc.; as for other sensors that can be configured in the mobile phone, such as gyroscopes, barometers, hygrometers, thermometers, infrared sensors, etc., they will not be repeated here.
[0160] The audio circuit 760, the speaker 761, and the microphone 762 can provide an audio interface between the user and the mobile phone. The audio circuit 760 can transmit the received audio data to the speaker 761 after converting the received audio data into an electrical signal, which is converted into a sound signal for output; on the other hand, the microphone 762 converts the collected sound signal into an electrical signal, which is received by the audio circuit 760 and converted into audio data, and then the audio data is output to the processor 780 for processing, and then sent to another mobile phone through the RF circuit 710, or the audio data is output to the memory 720 for further processing.
[0161] Wi-Fi is a short-range wireless transmission technology. The mobile phone can help users send and receive emails, browse web pages and access streaming media through the Wi-Fi module 770. It provides users with wireless broadband Internet access. Fig. 9 A Wi-Fi module 770 is shown, but it is understandable that it is not an essential component of the mobile phone and can be omitted as needed without changing the essence of the application.
[0162] The processor 780 is the control center of the mobile phone. It uses various interfaces and lines to connect various parts of the entire mobile phone. By running or executing software programs and / or modules stored in the memory 720, and calling data stored in the memory 720, it executes various functions of the mobile phone and processes data, thereby performing overall detection of the mobile phone. Optionally, the processor 780 may include one or more processing units; preferably, the processor 780 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, and application programs, and the modem processor mainly processes wireless communications. It is understandable that the above-mentioned modem processor may not be integrated into the processor 780.
[0163] The mobile phone also includes a power supply 790 (such as a battery) for supplying power to various components. The power supply can be logically connected to the processor 780 through a power management system, so that the power management system can manage charging, discharging, power consumption and other functions.
[0164] Although not shown, the mobile phone may also include a camera, a Bluetooth module, etc., which will not be described in detail here.
[0165] In the embodiment of the present application, the processor 780 included in the mobile phone also has the function of controlling and executing the above Figure 8 The steps performed by the data updating device 40 in the above embodiment can be based on the method flow performed by the data updating device 40 in the above embodiment. Figure 8 For example, the processor 780 performs the following operations by calling the instructions in the memory 720:
[0166] Obtaining a pending transaction order through the input unit 730, wherein the transaction order includes transaction data and entrustment data of at least one tradable subject in at least one continuous bidding cycle;
[0167] Obtain a buy order set and a sell order set according to the operation orders obtained by the input unit 730;
[0168] Taking the intersection of the buy executed order set and the sell executed order set to obtain partially executed entrustment orders, and taking the difference of the buy executed order set and the sell executed order set to obtain unexecuted entrustment orders;
[0169] According to the partially executed entrustment orders and the unexecuted entrustment orders, an updated buy order union set and an updated sell order union set are obtained;
[0170] The buy order union and the sell order union are updated to a target order book; target market data are generated according to the target order book, and the market data currently displayed visually is refreshed based on the target market data.
[0171] The present application also provides another data updating device for implementing the above-mentioned exchange market data updating method. Fig. 9 As shown, Fig. 91 is a schematic diagram of a server structure provided in an embodiment of the present application. The server 100 may have relatively large differences due to different configurations or performances, and may include one or more central processing units (full name in English: central processing units, abbreviated in English: CPU) 1022 (for example, one or more processors) and a memory 1032, and one or more storage media 1030 (for example, one or more mass storage devices) storing application programs 1042 or data 1044. Among them, the memory 1032 and the storage medium 1030 can be short-term storage or permanent storage. The program stored in the storage medium 1030 may include one or more modules (not shown in the figure), and each module may include a series of instruction operations on the server. Furthermore, the central processing unit 1022 can be configured to communicate with the storage medium 1030 and execute a series of instruction operations in the storage medium 1030 on the server 100.
[0172] The server 100 may also include one or more power supplies 1026, one or more wired or wireless network interfaces 1050, one or more input and output interfaces 1058, and / or one or more operating systems 1041, such as Windows Server, Mac OS X, Unix, Linux, FreeBSD, etc.
[0173] In the above embodiment, the service server (for example Figure 7 The steps performed by the data updating device 40) shown in the figure can be based on the Fig. 9 The structure of the server 100 shown in FIG. Figure 7 The steps performed by the data updating device 40 shown can be based on the Fig. 9 For example, the processor 1022 performs the following operations by calling the instructions in the memory 1032:
[0174] Obtaining a pending transaction order through the input / output interface 1058, wherein the transaction order includes transaction data and entrustment data of at least one tradable subject in at least one continuous bidding cycle;
[0175] Obtain a buy order set and a sell order set according to the transaction-by-transaction orders obtained by the input / output interface 1058;
[0176] Taking the intersection of the buy executed order set and the sell executed order set to obtain partially executed entrustment orders, and taking the difference of the buy executed order set and the sell executed order set to obtain unexecuted entrustment orders;
[0177] According to the partially executed entrustment orders and the unexecuted entrustment orders, an updated buy order union set and an updated sell order union set are obtained;
[0178] The buy order union and the sell order union are updated to a target order book; target market data are generated according to the target order book, and the market data currently displayed visually is refreshed based on the target market data.
[0179] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0180] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and modules described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0181] In the several embodiments provided in the embodiments of the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the modules is only a logical function division. There may be other division methods in actual implementation, such as multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or modules, which can be electrical, mechanical or other forms.
[0182] The modules described as separate components may or may not be physically separated, and the components shown as modules may or may not be physical modules, that is, they may be located in one place or distributed on multiple network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0183] In addition, each functional module in each embodiment of the present application can be integrated into a processing module, or each module can exist physically separately, or two or more modules can be integrated into one module. The above-mentioned integrated module can be implemented in the form of hardware or in the form of a software functional module. If the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it can be stored in a computer-readable storage medium.
[0184] In the above embodiments, all or part of the embodiments may be implemented by software, hardware, firmware or any combination thereof. When implemented by software, all or part of the embodiments may be implemented in the form of a computer program product.
[0185] The computer program product includes one or more computer instructions. When the computer program is loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions may be stored in a computer-readable storage medium, or transmitted from a computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from a website site, a computer, a server, or a data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server, or data center. The computer-readable storage medium may be any available medium that a computer can store or a data storage device such as a server or a data center that includes one or more available media integrations. The available medium may be a magnetic medium, (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state hard disk Solid State Disk (SSD)), etc.
[0186] The technical solutions provided in the embodiments of the present application are introduced in detail above. The principles and implementation methods of the embodiments of the present application are explained by using specific examples in the embodiments of the present application. The description of the above embodiments is only used to help understand the methods and core ideas of the embodiments of the present application. At the same time, for those skilled in the art, according to the ideas of the embodiments of the present application, there will be changes in the specific implementation methods and application scopes. In summary, the content of this specification should not be understood as a limitation on the embodiments of the present application.
Claims
1. A method for updating exchange market data, characterized in that: The method comprises: Obtaining a pending transaction order, wherein the transaction order includes transaction data and order data of at least one tradable subject in at least one continuous bidding cycle; Obtaining a buy order set and a sell order set according to the order-by-order operation; Taking the intersection of the buy executed order set and the sell executed order set to obtain partially executed entrustment orders, and taking the difference of the buy executed order set and the sell executed order set to obtain unexecuted entrustment orders; According to the partially executed entrustment orders and the unexecuted entrustment orders, an updated buy order union set and an updated sell order union set are obtained; updating the combined buy order set and the combined sell order set to a target order book; Generate target market data according to the target order book; The currently visualized handicap data is refreshed based on the target handicap data.
2. The method according to claim 1, characterized in that The target order book includes target entrustment queues corresponding to the current buy order union and sell order union respectively; the target entrustment queue is generated according to a preset transaction matching strategy, wherein the transaction matching strategy includes at least one of a price priority strategy and a time priority strategy; the target market data is used to reproduce the transaction data of each tradable target.
3. The method according to claim 2, characterized in that The target market data includes a buy position and a sell position, and the target entrustment queue includes a first entrustment queue corresponding to each buy position and a second entrustment queue corresponding to each sell position; Wherein, under the price priority strategy, in the first entrustment queue, the order of buying positions is arranged in the order of buying price; in the second entrustment queue, the order of selling positions is arranged in the reverse order of selling price; Under the time priority strategy, in the first entrustment queue, the order of buying gears is arranged in the order of entrustment time; in the second entrustment queue, the order of selling gears is arranged in the reverse order of entrustment time.
4. The method according to claim 1, characterized in that Refreshing the currently visualized handicap data based on the target handicap data satisfies at least one of the following items: The refresh period is less than or equal to the bidding period; The next refresh time is obtained based on the historical refresh time; Alternatively, the next refresh time is obtained based on the bidding period and a preset delay offset.
5. The method according to any one of claims 1 to 4, characterized in that After refreshing the currently visualized handicap data based on the target handicap data, the method further includes: Acquire refresh evaluation data, where the refresh evaluation data is used to evaluate a refresh index based on the target market data refresh, where the refresh index includes at least one of a refresh speed, a refresh delay, and a reproduction granularity; If it is determined according to the refresh evaluation data that at least one of the preset refresh indicators is not satisfied, some or all of the refresh indicators are updated.
6. The method according to claim 5, characterized in that The refresh evaluation data includes refresh evaluation data corresponding to tradable objects of multiple business types; after obtaining the refresh evaluation data, the method further includes: Analyze the refreshed evaluation data corresponding to each tradable target from the preset dimensions to obtain the corresponding horizontal comparison results; Dynamically adjust and refresh the evaluation data according to the horizontal comparison results to meet at least one tradable target refresh strategy of preset adjustment conditions.
7. The method according to any one of claims 1 to 4, characterized in that The tradable targets that participate in the refresh based on the target market data meet at least one of the following items: During a preset period of time; The hot tradable targets that users are interested in during the preset period; The heat value within the preset time period is higher than the preset threshold; Alternatively, during the user focus period of a preset event associated with the tradable subject, the preset event includes at least one of a specific event and a hot event.
8. The method according to claim 7, characterized in that The method further comprises: Acquire subscription information of a target user, where the target user is a buying user or a selling user, and the subscription information includes at least one of a refresh frequency and a refresh mode, where the refresh mode includes refreshing based on transaction-by-transaction market data or refreshing based on snapshot market data; A customized target entrustment queue is generated according to the subscription information, and in the trading platform, at least some or all of the target users have different corresponding target entrustment queues.
9. A data updating device, characterized in that: The data updating device comprises: An input-output module, used to obtain a pending transaction order, wherein the transaction order includes transaction data and entrustment data of at least one tradable subject in at least one continuous bidding cycle; A processing module, configured to obtain a buy order set and a sell order set according to the operation orders obtained by the input and output module; obtain partially executed entrustment orders by taking the intersection of the buy order set and the sell order set, and obtain unexecuted entrustment orders by taking the difference of the buy order set and the sell order set; The processing module is also used to obtain an updated buy order union and sell order union according to the partially executed entrustment orders and the unexecuted entrustment orders; update the buy order union and the sell order union to a target order book; generate target market data according to the target order book, and refresh the market data currently displayed visually based on the target market data.
10. A computer device, characterized in that: The computer device comprises: at least one processor and memory; The memory is used to store a computer program, and the processor is used to call the computer program stored in the memory to execute the method according to any one of claims 1 to 8.
11. A computer-readable storage medium, characterized in that: The method comprises instructions which, when executed on a computer, cause the computer to execute the method according to any one of claims 1 to 8.