Transaction management program, information processing device and transaction management system
The transaction management system addresses communication disparities in transaction orders from multiple regions by using synchronized clock modules and arbitration mechanisms, effectively preventing high-frequency trading attacks and ensuring a fair trading environment.
Patent Information
- Application Number
- JP2022108969
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-07-06
- Publication Date
- 2025-05-16
- Estimated Expiration
- 2041-10-01
AI Technical Summary
Existing transaction management systems face challenges in handling transaction orders from multiple regions for one exchange, as communication time lags occur due to geographical distance, leading to potential attacks from high-frequency traders exploiting these disparities.
A transaction management program and system that includes a receiving means for accepting orders from clients in the same region and order information with application times from multiple transaction servers in different regions. The system uses a clock module with a private key to create a token for each order, ensuring synchronized time calibration across regions and enabling arbitration to handle communication disparities.
The system effectively handles transaction orders with communication disparities by ensuring synchronized time across regions, preventing high-frequency trading attacks, and maintaining a fair trading environment.
Smart Images

Figure 0007678455000001 
Figure 0007678455000002 
Figure 0007678455000003
Abstract
Description
[Technical field]
[0001] The present invention relates to a transaction management program, an information processing device, and a transaction management system. [Background technology]
[0002] As a conventional technique, a transaction management system that executes time-synchronized transactions at multiple exchanges has been proposed (see, for example, Patent Document 1).
[0003] The transaction management system disclosed in Patent Document 1 includes a transaction server, multiple financial exchanges, and multiple servers, each associated with an exchange, co-located with the exchange, and equipped with a high-precision clock. The transaction server divides a large transaction order into multiple smaller transaction orders and associates each smaller transaction order with a transaction execution time. The transaction server transmits financial transaction instructions to each of the co-located servers based on each combined smaller transaction order and the transaction execution time. When the high-precision clock of each server reaches the transaction execution time, all of the servers submit their smaller transaction instructions to their respective financial exchanges substantially simultaneously. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] JP 2020-166905 A Summary of the Invention [Problem to be solved by the invention]
[0005] According to the transaction management system of Patent Document 1, a large transaction order is divided into small transaction orders and the small transaction orders are submitted to multiple exchanges at the same time, but there is no description of a case where transaction orders from multiple regions to one exchange are handled. When transaction orders from multiple regions to one exchange are handled, there is a problem that a communication time lag occurs depending on the geographical distance between the exchange and each region, and transaction orders from regions far from the exchange refer to information that is older by the time lag than transaction orders from regions close to the exchange. In particular, attacks from high-frequency traders who target the time lag, that is, the communication gap, are problematic.
[0006] SUMMARY OF THE PRESENT EMBODIMENT It is therefore an object of the present invention to provide a transaction management program, an information processing device, and a transaction management system that can equally handle transaction orders with communication differences. [Means for solving the problem]
[0007] In order to achieve the above object, one aspect of the present invention provides the following transaction management program, information processing device, and transaction management system.
[0008] [1] A trading server that receives orders from clients installed in the same region, the trading server having a reception means for receiving order information accompanied by an order submission time from a plurality of trading servers installed in different regions; a transaction management program that functions as arbitration means for arbitrating the order information; [2] The trading management program described in [1], wherein the multiple trading servers each have a clock module calibrated to show the same time, and the application time is entered into the order information by the clock module. [3] The transaction management program according to [2], wherein the clock module has a private key, creates a token from the private key, and attaches the token to the order information together with the application time. [4] The transaction management program described in [3], further functioning as a verification means for verifying the order information using the token. [5] The transaction management program according to any one of [1] to [4], which outputs the arbitration result of the arbitration means as transaction result information. [6] A transaction management program described in any of [1] to [5], wherein the arbitration means, when it detects that information affecting the next order has not arrived in one or more regions, or when it detects that even if information has arrived in one or more regions, a disparity occurs in the time between the arrival and the order being placed, advances the cut-off time for the predetermined period in regions other than the one or more regions relative to the cut-off time for the one or more regions. [7] The transaction management program described in [5], wherein the arbitration means refers to the transaction result information, and if it detects fraud or an attempted fraud, advances the deadline for the predetermined period of the client who committed the fraud or attempted fraud relative to the deadlines of other clients. [8] a trading server that receives orders from clients located in the same region, the trading server having a reception means for receiving order information accompanied by an order submission time from a plurality of trading servers each located in a different region; and an arbitration means for arbitrating the order information. [9] a trading server that accepts orders from clients located in the same region; A transaction management system comprising a transaction aggregation server having a reception means for receiving order information accompanied by an order application time from a plurality of transaction servers installed in different regions, and an arbitration means for arbitrating the order information. Effect of the Invention
[0009] According to the invention as set forth in claims 1, 8 and 9, trading orders with communication differences can be treated equally. According to the invention of claim 2, each of the multiple trading servers has a clock module calibrated to have the same time, and the clock module can attach the application time to the order information. According to the invention as defined in claim 3, the clock module has a private key and can create a token from the private key and attach it to the order information together with the application time. According to the invention as defined in claim 4, the order information can be verified using the token. According to the invention as defined in claim 5, the arbitration result of the arbitration means can be output as transaction result information. According to the invention of claim 6, when it is detected that information affecting the next order does not arrive in one or more regions, or when it is detected that even if information arrives, there is a disparity in the time between the arrival and the order, the closing time of a predetermined period in regions other than the one or more regions can be advanced relative to the closing time of the one or more regions. According to the invention of claim 7, when fraud or an attempted fraud is detected by referring to transaction result information, the deadline of the client that committed the fraud or attempted fraud can be advanced relative to the deadlines of other clients. [Brief description of the drawings]
[0010] [Figure 1] FIG. 1 is a schematic diagram showing an example of the configuration of a transaction management system according to an embodiment. [Diagram 2] FIG. 2 is a block diagram illustrating a configuration example of a transaction aggregation server according to an embodiment. [Diagram 3] FIG. 3 is a block diagram illustrating an example of a configuration of a trading server according to an embodiment. [Figure 4] FIG. 4 is a schematic diagram showing an example of the configuration of order information. [Diagram 5] FIG. 5 is a schematic diagram showing an example of the configuration of the trading result information. [Figure 6] FIG. 6 is a flowchart for explaining the overall operation of the transaction management system. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0011] [Embodiment Mode] (Configuration of transaction management system) FIG. 1 is a schematic diagram showing an example of the configuration of a transaction management system according to an embodiment.
[0012] This transaction management system includes a transaction aggregation server 1, transaction servers 2a, 2b, 2c, . . ., a record storage server 3, and a client 4a. 1 , 4a 2 , 4b 1 , 4b 2 , 4c 1 , 4c 2 . . . are connected to each other via networks 5a, 5b, 5c, and 5d. Here, the client 4a 1 , 4a 2 , 4b 1 , 4b 2 , 4c 1 , 4c 2 ... are operated by users who carry out transactions. 1 , 4a 2 is installed in region A, and a trading server 2b and a client 4b 1 , 4b 2 is installed in region B, and includes a transaction aggregation server 1, a transaction server 2c, a record storage server 3, and a client 4c. 1 , 4c 2 is installed in region C, and regions A, B, and C are remote locations. Here, remote locations refer to, for example, when the transaction aggregation server 1 in region C is used as a reference, the distance between the regions is such that there is at least a difference in the time required for communication between the transaction aggregation server 2a in region A and the transaction aggregation server 1 (or the time required for communication between the transaction aggregation server 2b in region B and the transaction aggregation server 1) compared to the time required for communication between the transaction aggregation server 2c in region C and the transaction aggregation server 1, and specifically, the distance between the regions is such that there is a difference (communication difference) in the time required to notify and obtain information. In addition, although an example in which the transaction aggregation server 1 and the record storage server 3 are installed in region C has been shown, they may be installed in regions A and B, or may be installed in regions other than regions A, B, and C. In addition, it is assumed that the time required for communication between regions is longer than the time required for communication within a region.
[0013] The trading aggregation server 1 is a server-type information processing device that aggregates orders from trading servers 2a, 2b, 2c, etc. in each region, and is equipped with electronic components such as a CPU (Central Processing Unit) with the function of processing information within the main body, and non-volatile and volatile memory.
[0014] The trading server 2a (2b, 2c) communicates with the clients 4a in each region. 1 , 4a 2 (4b 1 , 4b 2 , 4c 1 , 4c 2 ) and is equipped with electronic components such as a CPU with the function of processing information within the main unit, non-volatile and volatile memory, as well as a precision clock module such as an atomic clock.
[0015] Client 4a 1 , 4a 2 , 4b 1 , 4b 2 , 4c 1 , 4c 2 ... is an information processing device such as a PC (Personal Computer), which is equipped with electronic components such as a CPU having functions for processing information within the main body, and non-volatile and volatile memories.
[0016] The networks 5a, 5b, 5c, and 5d are communication networks capable of high-speed communication, and are, for example, wired or wireless communication networks such as the Internet, an intranet, or a LAN (Local Area Network).
[0017] The calibration clock server 6 has a high-precision clock such as an atomic clock, is connected to the trading servers 2a, 2b, and 2c, for example, by a serial cable, and periodically calibrates the time of the clock module. Specifically, the calibration clock server 6 periodically transmits calibration information to the trading servers 2a, 2b, and 2c. The time of the time modules of the trading servers 2a, 2b, and 2c is unified to the time of, for example, the region C where the transaction aggregation server 1 is located among the regions where the calibration clock server 6 is located, but may be the time of any region as long as it is a unified time. In FIG. 1, the calibration clock server 6 is shown installed in each of the regions A, B, and C. However, it may be installed in any of the regions A, B, and C to calibrate the time of the clock modules of the trading servers 2a, 2b, and 2c. However, since calibration is performed via a network with the trading servers 2a, 2b, and 2c in the region where the calibration clock server 6 is not installed, network latency is estimated and an error may occur in the calibration. Therefore, it is more preferable from the viewpoint of accuracy to install the calibration clock server 6 in each of the regions A, B, and C. In addition to the server type, a calibration device may be periodically brought to the trading servers 2a, 2b, and 2c and connected to perform the calibration. In addition, a method using GPS time information, a method using a radio clock system, etc. may be adopted.
[0018] In the above configuration, the transaction aggregation server 1 includes, for example, a client 4a 1 , 4a 2 The order accepted by the trading server 2a from the client 4b 1 , 4b 2 Orders accepted by the trading server 2b from client 4c 1 , 4c 2The transaction aggregation server 1 aggregates orders received from the client, verifies the orders, closes orders every predetermined period (for example, 1 to 60 seconds), and arbitrates the orders within the period to make or break the transaction. The transaction aggregation server 1 also records the transaction records in the record storage server 3, which notifies the transaction results to the transaction servers 2a, 2b, and 2c. These operations are repeated at the above-mentioned predetermined period. Note that the predetermined period is preferably about 1 second when implemented, since the current transaction cannot be made unless it is known whether the previous transaction was successful or not. It is considered that the liquidity of financial products can be ensured even if the period is set to 60 seconds or more while the number of clients is small. Also, by setting the predetermined period to a large value, the information gap for the current transaction using the previous transaction result (board information) can be reduced, and by setting it to a small value, more frequent transactions can be made. Hereinafter, a more detailed configuration will be described below, and a detailed operation will be described later.
[0019] (Configuration of the trade aggregation server) FIG. 2 is a block diagram showing an example of the configuration of the transaction aggregation server 1 according to the embodiment.
[0020] The transaction aggregation server 1 includes a control unit 10 that is configured with a CPU and the like and controls each unit and executes various programs, a storage unit 11 that is configured with a storage medium such as a non-volatile memory and stores information, and a communication unit 12 that communicates with the outside via a network 5c. The transaction aggregation server 1 further includes a volatile memory (not shown).
[0021] The control unit 10 executes a transaction management program 110, which will be described later, to function as an order receiving means 100, an order verifying means 101, an arbitration means 102, a transaction result output means 103, and the like.
[0022] The order receiving means 100 receives order information including a verification token transmitted from the transaction servers 2 a , 2 b , and 2 c , and stores the order information in the memory unit 11 as order information 111 .
[0023] The order verification means 101 checks whether the order time described in the order information 111 is within a predetermined period (from the previous deadline to the current deadline), and verifies the order information 111 using the verification token. The verification method will be described later.
[0024] The arbitration means 102 arbitrates the order information 111 verified by the order verification means 101 by referring to arbitration condition information 112 in which the conditions of arbitration are defined, determines the arbitration price, seller, and buyer, and stores the arbitration result in the memory unit 11 as transaction result information 113.
[0025] The transaction result output means 103 outputs the transaction result information 113 to the record keeping server 3 .
[0026] The storage unit 11 stores a transaction management program 110 that causes the control unit 10 to operate as each of the above-mentioned means 100-103, order information 111, arbitration condition information 112, transaction result information 113, and the like.
[0027] (Configuration of information processing device) 3 is a block diagram showing an example of the configuration of the trading server 2a according to the embodiment. Note that the trading servers 2b and 2c have the same configuration as the trading server 2a, and therefore the description thereof will be omitted.
[0028] The trading server 2a includes a control unit 20 that is configured with a CPU and the like and controls each unit and executes various programs, a storage unit 21 that is configured with a storage medium such as a non-volatile memory and stores information, a communication unit 22 that communicates with the outside via a network, and a high-precision clock module 23 that uses an atomic clock or the like. The trading server 2a also includes a volatile memory (not shown).
[0029] The control unit 20 executes a transaction management program 210, which will be described later, to function as an order receiving means 200, a verification token generating means 201, an order requesting means 202, and the like.
[0030] The order receiving means 200 is 1 , 4a 2The order is received and stored in the memory unit 21 as order information 211 describing the order details.
[0031] The verification token generation means 201 queries the clock module 23 to obtain time information at the time the order receiving means 200 receives the order and a token described later, and then records the time information in the order information 211 and stores the token in the memory unit 21 as verification token information 212.
[0032] The order request means 202 transmits the order request to the transaction aggregation server 1 together with a token obtained by concatenating the order information 211 and the verification token information 212 (that is, the signed order information 211).
[0033] The memory unit 21 stores a transaction management program 210 that causes the control unit 20 to operate as each of the above-mentioned means 200-202, order information 211, verification token information 212, and the like.
[0034] The clock module 12 returns time information in response to an inquiry, and stores a private key in an internal memory unit.In response to an inquiry from the verification token generation means 201, the clock module 12 generates a token using the private key, and outputs the time information and the token to the verification token generation means 201.
[0035] FIG. 4 is a schematic diagram showing an example of the configuration of the order information 111. As shown in FIG.
[0036] The order information 111 includes an order ID for identifying the order, a user ID for identifying the user who placed the order, an order type indicating the type of order, an order target, a price, a quantity, and a time which is the order time (time information). The order information 111 further includes a token (not shown).
[0037] FIG. 5 is a schematic diagram showing an example of the configuration of the transaction result information 113. As shown in FIG.
[0038] The transaction result information 113 includes a result ID for identifying the transaction result, a deadline indicating the end time of the transaction period, an order ID, a user ID, an order type, a target, a price, a quantity, a time which is the time of the application, and a success / failure indicating whether the order was executed or not.
[0039] (Operation of information processing device) Next, the operation of this embodiment will be explained by dividing it into (1) overall operation and (2) arbitration operation.
[0040] (1) Overall operation FIG. 6 is a flowchart for explaining the overall operation of the transaction management system.
[0041] Users who wish to trade in region A each use client 4a 1 , 4a 2 (From here on, Client 4b in Region B 1 , 4b 2 , Client 4c in Region C 1 , 4c 2 The same is true for the other securities.) to execute a buy or sell order for the desired securities. 1 , 4a 2 In response to the order operation, the client 4b in the region B transmits the order to the trading server 2a (S40). 1 , 4b 2 Then, to the trading server 2b, client 4c in region C 1 , 4c 2 If so, the order is sent to trading server 2c, and so on to the trading server within the region (the one with the closest distance).
[0042] The order receiving means 200 of the transaction server 2a is 1 , 4a 2 The order is accepted and stored as order information 211 in the memory unit 21 (S20).
[0043] Next, the verification token generation means 201 of the trading server 2a queries the clock module 23 to obtain the time information and token at the time when the order receiving means 200 received the order, records the time information in the order information 211, and stores the token in the memory unit 21 as verification token information 212 (S21).
[0044] Next, the order request means 202 of the trading server 2a transmits the order request together with the token formed by concatenating the order information 211 and the verification token information 212 to the trading aggregation server 1 at predetermined cut-off times (e.g., every few seconds, every few minutes, etc.). The timing of transmitting the order request may be immediately after the generation of the order information 211 and the verification token information 212 is completed, or may be transmitted at predetermined intervals. It is preferable that the order request means 202 of the trading server 2a transmits the order request promptly after the cut-off time has passed, but if the arbitration start time of the trading aggregation server 1 can be delayed, the order request may be transmitted so as to reach the trading aggregation server 1 by the arbitration start time.
[0045] Next, the order receiving means 100 of the transaction aggregation server 1 receives the order information and the verification token transmitted from each of the transaction servers 2a, 2b, and 2c, and stores them in the storage unit 11 as order information 111 (S10).
[0046] Next, the order verification means 101 of the transaction aggregation server 1 verifies (S11) the verification token of the order information 111. Specifically, the order verification means 101 verifies the verification token, which is a signature, by using the public keys of the transaction servers 2a, 2b, and 2c.
[0047] Next, the arbitration means 102 of the transaction aggregation server 1 arbitrates the order information 111 verified by the order verification means 101 for each predetermined period (between the previous closing time and the current closing time) with reference to arbitration condition information 112 in which the conditions for arbitration are defined, for the order information 111 included in the predetermined period, determines the arbitration price, seller, and buyer, and stores them in the memory unit 11 as transaction result information 113 (S12). The specific arbitration operation will be described in "(3) Arbitration Operation".
[0048] Next, the transaction result output means 103 of the transaction aggregation server 1 outputs the arbitration results for that period to the record keeping server 3 as transaction result information 113 (S13).
[0049] The record keeping server 3 receives and records the transaction result information 113 from the transaction aggregation server 1 (S30), and transmits all or a part of the transaction result information 113 to the client 4a. 1 , 4a 2 (S31).
[0050] Client 4a 1 , 4a 2 The user receives the transaction result information 113 (S41) and displays the transaction result on the display unit as board information. 1 , 4a 2 The transaction result displayed on the display unit of the client 4a is checked. The timing of checking may be every transaction or may be changed at the client 4a as necessary. 1 , 4a 2 may be the timing at which the
[0051] (2) Arbitration Action The arbitration means 102 of the transaction aggregation server 1 performs arbitration according to the following method, which is one example of the conditions described in the arbitration condition information 112. (2-1) The arbitration means 102 of the transaction aggregation server 1 sequentially matches the highest buying order and the lowest selling order among the order information 111 included in a predetermined period, and determines the arbitration price to be the intermediate value between the limit prices of the buying and selling orders. As the intermediate value, the arbitration means 102 may calculate, for example, the average as (highest price + lowest price) / 2, or ((square root of highest price + square root of lowest price) / 2)^2, or may calculate it by any other commonly used average calculation method. (2-2) As another arbitration operation, the arbitration means 102 of the transaction aggregation server 1 sequentially matches the highest buying order and the lowest selling order among the order information 111 included in a predetermined period, and determines the arbitration price to be the midpoint between the limit prices of the last matching buying and selling orders. (2-3) As another arbitration operation, the arbitration means 102 of the transaction aggregation server 1 presents an arbitration price in advance based on information on market conditions and information on previous buy and sell orders, and accepts and arbitrates bids for buy and sell orders. If there is a shortage of either buy or sell orders, arbitration is performed by lottery or in order of priority determined in advance. If there are not enough buy or sell orders, the price may be determined based on price information from other markets. The arbitration means 102 of the transaction aggregation server 1 determines the arbitration price to be presented in advance as follows. For example, if there are enough buy and sell orders, the highest buy order and the lowest sell order are matched based on information on previous bidding records, and the intermediate value between the last matched buy and sell prices is used as the price information to be presented next time.
[0052] (Effects of the embodiment) According to the above embodiment, the transaction servers 2a, 2b, and 2c each have a clock module that indicates a unified time in a plurality of regions A, B, and C, and the clients 4a, 1 , 4a 2 , 4b 1 , 4b 2 , 4c 1 , 4c 2 The system accepts orders from the trading servers 2a, 2b, and 2c, and the time of order acceptance is set to the time of the clock modules of the trading servers 2a, 2b, and 2c. The orders from the trading servers 2a, 2b, and 2c are aggregated and arbitrated at predetermined intervals, so that trading orders with communication differences can be treated equally. Furthermore, it is possible to treat orders equally not only when geographical distances differ, but also when the performance of communication lines differs.
[0053] Furthermore, since order information and transaction result information including the arbitration process of transactions are recorded in the record-keeping server 3 and made public, it can be easily accessed after the fact and past transactions can be verified. In particular, this effect allows market participants and government regulatory authorities to conduct audits and detect fraud, and the system's inherent characteristic of the present invention, that is, the ease with which fraud can be detected, can provide a reliable trading environment. On the other hand, conventional trading systems (currently operating financial trading systems) store transaction information in a database, and in order to analyze this information after the fact, a separate system such as a data warehouse is required, and audits by market participants or government authorities are limited, and even if the restrictions can be lifted, it takes time and money.
[0054] [Other embodiments] The present invention is not limited to the above-described embodiment, and various modifications are possible without departing from the spirit of the present invention.
[0055] For example, the transaction aggregation server 1 is shown as a separate device from the transaction servers 2a, 2b, and 2c, but may be configured as one unit with any of the transaction servers 2a, 2b, and 2c. Also, the record storage server 3 may be configured as one unit with the transaction aggregation server 1. Also, if the times of the clock modules of the transaction servers 2a, 2b, and 2c are unified, the transaction servers 2a, 2b, and 2c may be configured to mutually calibrate each other without using the calibration clock server 6. Also, the client 4a 1 , 4a 2 , 4b 1 , 4b 2 , 4c 1 , 4c 2 If a clock module can be provided for each server, the functions of the transaction servers 2a, 2b, and 2c can be implemented as 1 , 4a 2 , 4b 1 , 4b 2 , 4c 1 , 4c 2 Prepare for client 4a 1 , 4a 2 , 4b 1 , 4b 2 , 4c 1 , 4c2 Alternatively, the order information may be transmitted directly to the transaction aggregation server 1.
[0056] In addition, the transaction aggregation server 1, transaction servers 2a, 2b, 2c, record storage server 3, and calibration clock server 6 have been described as being configured as server devices, but the information held by these devices and the functions of these devices may also be configured on a blockchain consisting of multiple server devices.
[0057] The arbitration means 102 may also impose a penalty by advancing the cut-off time relative to a predetermined cut-off time for a specific trading participant, trading type, or trading issue. The cut-off time may be advanced, for example, when the trading participant is far from the location where information that has a large impact on the overall market is generated, or when a fraudulent transaction or an attempt to commit a fraudulent transaction that was just performed by a specific trading participant is detected. Specifically, for example, there is an international commodity futures market where the main trading is performed in Chicago in the United States, and if a Japanese trading participant and a participant participating in Chicago perform a high-frequency batch transaction that closes at the same time, only the Chicago trading participant can always trade based on the latest information. For example, if a large buy order is placed in the Chicago commodity futures market just before the cut-off time, the information is not transmitted to any server other than the server near the Chicago market due to communication time, and the transaction is closed (it is transmitted to Tokyo after the cut-off time). In this state, if a market participant in Chicago places a buy order in the market and the transaction is concluded, the participant can acquire the commodity futures at a price lower than the market price (an attack in high frequency trading). In order to suppress this high-speed trading, when the arbitration means 102 detects that the latest information that affects the next order may be known to the participants in Chicago (when it detects that the time required to transmit the information to the participants in Japan will not be in time for the next cut-off time, or when it detects that there is a large difference in the time from the transmission to the participants in Chicago to the order even if the information is transmitted), it will implement a method of imposing a cut-off time earlier than the standard on the participants in Chicago and adjusting the cut-off time according to the distance from the source of the information, or a method of prohibiting attacks that utilize communication gaps in the terms of use, etc., and imposing a penalty of an earlier transaction cut-off time on market participants who attempt such attacks. Note that attacks using high frequency trading are carried out by placing a large number of orders based on the difference in communication time, so it is possible to determine whether or not an attack is occurring by checking the transaction history of the record storage server 3. Since the transaction history on the record-keeping server 3 is made public to market participants, even if no actual penalties are imposed, the watchful eye of market participants and the rule that penalties will be imposed on any attack will act as a deterrent against attacks.
[0058] In addition, the following methods can be considered as a method for detecting fraudulent transactions or attempts at fraudulent transactions. For example, if the time when the client decides to place an order, i.e., the time when the transaction server receives the order, is recorded and this time is extremely biased toward just before the deadline, it can be easily inferred that a transaction based on an information gap caused by a difference in latency is being attempted.
[0059] In the above embodiment, the functions of the means 100-103, 200-202 of the control unit 10 are realized by a program, but all or part of the means may be realized by hardware such as ASIC. Also, the program used in the above embodiment may be stored in a recording medium such as a CD-ROM and provided. Also, the steps described in the above embodiment may be replaced, deleted, added, etc., without departing from the spirit of the present invention. Industrial Applicability
[0060] A transaction management program, an information processing device, and a transaction management system are provided that can equally handle transaction orders with communication differences.
[0061] Further, another aspect of the present invention provides the following application management program, information processing device, and application management system.
[0062] [1] A trading server that receives orders from clients installed in the same region, the trading server having a reception means for receiving order information accompanied by an order submission time from a plurality of trading servers installed in different regions; a transaction management program that functions as arbitration means for arbitrating the order information at predetermined intervals; [2] The trading management program described in [1], wherein the multiple trading servers each have a clock module calibrated to show the same time, and the application time is entered into the order information by the clock module. [3] The transaction management program according to [2], wherein the clock module has a private key, creates a token from the private key, and attaches the token to the order information together with the application time. [4] The transaction management program described in [3], further functioning as a verification means for verifying the order information using the token. [5] The transaction management program according to any one of [1] to [4], which outputs the arbitration result of the arbitration means as transaction result information. [6] A transaction management program described in any of [1] to [5], wherein the arbitration means, when it detects that information affecting the next order has not arrived in one or more regions, or when it detects that even if information has arrived in one or more regions, a disparity occurs in the time between the arrival and the order being placed, advances the cut-off time for the predetermined period in regions other than the one or more regions relative to the cut-off time for the one or more regions. [7] The transaction management program described in [5], wherein the arbitration means refers to the transaction result information, and if it detects fraud or an attempted fraud, advances the deadline for the predetermined period of the client who committed the fraud or attempted fraud relative to the deadlines of other clients. [8] a trading server that receives orders from clients located in the same region, the trading server having a reception means for receiving order information accompanied by an order submission time from a plurality of trading servers each located in a different region; and an arbitration means for arbitrating the order information at predetermined intervals. [9] a trading server that accepts orders from clients located in the same region; A transaction management system comprising a transaction aggregation server having a reception means for receiving order information accompanied by an order application time from a plurality of transaction servers installed in different regions, and an arbitration means for arbitrating the order information for each predetermined period. [Explanation of symbols]
[0063] 1: Transaction aggregation server 2a, 2b, 2c: Trade servers 3: Archive server 4a 1 , 4a 2 , 4b 1 , 4b 2 , 4c 1 , 4c 2 :client 5a, 5b, 5c, 5d: Network 6: Calibration clock server 10: Control section 11: Storage section 12: Communications Department 20: Control section 21: Storage section 22: Communications Department 23: Clock module 100: Order acceptance method 101: Order verification method 102: Arbitration means 103: Transaction result output means 110: Transaction management program 111: Order Information 112: Arbitration condition information 113: Trading results information 200: Order acceptance method 201: Verification token generator 202: Order request means 210: Transaction Management Program 211: Order Information 212: Verification token information
Claims
1. A computer, a receiving means for receiving order information accompanied with an application time from a trading server installed in the same region in response to an order from a client installed in the same region, and for receiving order information accompanied with an application time from a trading server installed in a different region in response to an order from a client installed in a different region; a transaction management program that functions as arbitration means for arbitrating the order information;
2. 2. A transaction management program according to claim 1, wherein said transaction servers each have a clock module calibrated to keep the same time, and said application time is entered in said order information by said clock module.
3. 3. The transaction management program according to claim 2, wherein the clock module has a private key, and generates a token from the private key and attaches the token to the order information together with the application time.
4. 4. The transaction management program according to claim 3, further functioning as a verification means for verifying the order information using the token.
5. 5. The transaction management program according to claim 1, further comprising: outputting an arbitration result of said arbitration means as transaction result information.
6. A transaction management program as described in any one of claims 1 to 5, wherein the arbitration means arbitrates on the order information included in a predetermined period, and when it detects that information affecting the next order has not arrived in one or more regions, or when it detects that even if information has arrived, there is a disparity in the time from when the information arrives to when the order is placed, it advances the closing time of the predetermined period in regions other than the one or more regions relative to the closing time of the one or more regions.
7. 6. The transaction management program according to claim 5, wherein the arbitration means arbitrates on the order information included in a predetermined period, refers to the transaction result information, and if fraud or an attempt at fraud is detected, advances the deadline for the predetermined period of the client who committed the fraud or attempted fraud relative to the deadlines of other clients.
8. a receiving means for receiving order information accompanied with an application time from a trading server installed in the same region in response to an order from a client installed in the same region, and for receiving order information accompanied with an application time from a trading server installed in a different region in response to an order from a client installed in a different region; and an arbitration means for arbitrating the order information.
9. A trading server that receives orders from clients located in the same region and stores the orders as order information including the application time; A transaction management system comprising: a transaction aggregation server having a receiving means for receiving the order information from a plurality of the transaction servers installed in different regions, and an arbitration means for arbitrating the order information.
Citation Information
Patent Citations
Online trading system, online trading method, server device, and program
JP2002288429A
Throttling of correction messages
JP2014510978A
Communication latency leveling apparatus, method, and system
JP2015532986A
System and method for making synchronized transactions at multiple exchanges
JP2020166905A
System and Method for Delaying Execution of Financial Transactions
US20130151391A1