Data aggregation and normalization for exchange of assets
Systems and methods for aggregating and normalizing market data from multiple types of asset exchanges are described herein. For example, the system (e.g., an exchange platform) may generate connections with different types of exchanges (e.g., traditional exchanges, over the counter (OTC) markets, etc.), enabling communication between the exchanges and the system via a high speed and low latency network. The system may receive, normalize, parse, and store all of asset data available from the various exchanges and provide the asset data in real time to the various users (e.g., traders) inquiring about the asset data and/or attempting to execute a transaction via a client device.
1 . A method comprising:
determining multiple asset exchanges to be associated with an exchange platform in a computer-centric environment, wherein the multiple asset exchanges are associated with systems that differ from the exchange platform;
generating, by the exchange platform, multiple connections with the multiple asset exchanges such that digital communication between the exchange platform and the multiple connections is secure, wherein:
individual connections of the multiple connections connect the exchange platform with individual asset exchanges of the multiple asset exchanges;
the individual connections enable the digital communication via a high speed wireless communication network;
the individual connections enable the digital communication via a low latency wireless communication network; and
the individual connections enable real-time, on-the-fly monitoring of performance rates with the multiple asset exchanges;
accessing a respective order book associated with each of the multiple asset exchanges;
obtaining asset data from each of the respective order books, the asset data including at least one asset identifier associated with an asset type and at least one value associated with the asset type, wherein the asset data is received via multiple data bundles, each of the multiple data bundles containing multiple values associated with multiple assets;
determining that at least one file included within at least one of the multiple data bundles or the multiple values is corrupt;
generating a standard representation of the asset identifier based on the asset type;
identifying a file type associated with the asset data;
applying the file type as an input to a trained machine learning model configured to identify parser patterns to be utilized for parsing reference asset data;
receiving an output from the trained machine learning model based at least in part on the file type;
determining, based at least in part on the output received from the trained machine learning model, a parser pattern to be used for parsing the asset data based at least in part on the file type;
parsing the asset data into one or more data buckets using the parser pattern, wherein each data bucket of the one or more data buckets is associated with a respective standard representation;
reversing a normalization action performed during the parsing to a previous state for at least a portion of the asset data based on the at least one file being corrupt, wherein the previous state is determined based at least in part on the asset type; and
causing display in at least near real time of the asset data as parsed such that at least a portion of the asset data is filtered from being displayed based on the parsing.
2 . The method of claim 1 , further comprising causing the asset data to be presented on a user device.
3 . The method of claim 2 , further comprising:
receiving a transmission indicating an update to at least one order book;
determining the update is associated with a value change of at least one asset; and
presenting the value change of the at least one asset on the user device.
4 . The method of claim 1 , further comprising:
determining that at least one connection of the multiple connections has failed; and
performing, in response to determining that the at least one connection has failed, restoration processes to the at least one connection.
5 . The method of claim 1 , further comprising:
presenting, via a user device, an option to buy or sell a first asset in exchange for a second asset;
receiving, from the user device, an instruction to buy or sell the first asset in exchange for the second asset;
sending a transmission to at least one asset exchange of the multiple asset exchanges requesting to buy or sell the first asset in exchange for the second asset; and
receiving a response from the at least one asset exchange of the multiple asset exchanges confirming a transaction to buy or sell the first asset in exchange for the second asset.
6 . A system comprising:
one or more processors; and
non-transitory computer-readable media storing instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:
determining multiple asset exchanges to be associated with an exchange platform in a computer-centric environment, wherein the multiple asset exchanges are associated with systems that differ from the exchange platform;
generating, by the exchange platform, multiple connections with the multiple asset exchanges such that digital communication between the exchange platform and the multiple connections is secure, wherein:
individual connections of the multiple connections connect the exchange platform with individual asset exchanges of the multiple asset exchanges;
the individual connections enable the digital communication via a high speed wireless communication network;
the individual connections enable the digital communication via a low latency wireless communication network; and
the individual connections enable real-time, on-the-fly monitoring of performance rates with the multiple asset exchanges;
accessing a respective order book associated with each of the multiple asset exchanges;
obtaining asset data from each of the respective order books, the asset data including at least one asset identifier associated with an asset type and at least one value associated with the asset type, wherein the asset data is received via multiple data bundles, each of the multiple data bundles containing multiple values associated with multiple assets;
determining that at least one file included within at least one of the multiple data bundles or the multiple values is corrupt;
generating a standard representation of the at least one asset identifier based on the asset type;
identifying a file type associated with the asset data;
applying the file type as an input to a trained machine learning model configured to identify parser patterns to be utilized for parsing reference asset data;
receiving an output from the trained machine learning model based at least in part on the file type;
determining, based at least in part on receiving the output from the trained machine learning model, a parser pattern to be used for parsing the asset data based at least in part on the file type;
parsing the asset data into one or more data buckets using the parser pattern, wherein each data bucket of the one or more data buckets is associated with a respective standard representation;
reversing a normalization action performed during the parsing to a previous state for at least a portion of the asset data based on the at least one file being corrupt, wherein the previous state is determined based at least in part on the asset type; and
causing display in at least near real time of the asset data as parsed such that at least a portion of the asset data is filtered from being displayed based on the parsing.
7 . The system of claim 6 , wherein the operations further comprise:
receiving, from a user device, a trade request to buy or sell a first asset in exchange for a second asset;
receiving, from the user device, selection of at least one asset exchange of the multiple asset exchanges in which to participate in the trade request;
determining an exchange rate between the first asset and the second asset provided by the at least one asset exchange; and
presenting, via the user device, an option to buy or sell the first asset in exchange for the second asset based at least in part on the exchange rate.
8 . The system of claim 7 , wherein the operations further comprise:
receiving a transmission indicating an update to at least one order book of the at least one asset exchange;
determining the update is associated with the exchange rate offered by the at least one asset exchange; and
presenting an updated exchange rate on the user device.
9 . The system of claim 6 , wherein the operations further comprise presenting, based at least in part on the asset data and via a user device, at least one of:
a portfolio breakdown associated with one or more assets;
a market overview associated with one or more assets;
a correlation matrix associated with one or more assets; or
a portfolio position associated with one or more assets.
10 . The system of claim 9 , wherein the operations further comprise:
receiving a transmission indicating an update to at least one order book of at least one asset exchange;
determining the update is associated with at least one of:
the portfolio breakdown associated with one or more assets;
the market overview associated with one or more assets;
the correlation matrix associated with one or more assets; or
the portfolio position associated with one or more assets; and
presenting the update on the user device.
11 . The system of claim 6 , wherein the operations further comprise determining that at least one connection of the multiple connections has failed and performing, in response to determining that the at least one connection has failed, restoration processes to the at least one connection.
12 . A method comprising:
determining multiple asset exchanges to be associated with an exchange platform in a computer-centric environment, wherein the multiple asset exchanges are associated with systems that differ from the exchange platform;
generating, by the exchange platform, multiple connections with the multiple asset exchanges such that digital communication between the exchange platform and the multiple connections is secure, wherein:
individual connections of the multiple connections connect the exchange platform with individual asset exchanges of the multiple asset exchanges;
the individual connections enable the digital communication via a high speed wireless communication network; and
the individual connections enable the digital communication via a low latency wireless communication network;
receiving, by the exchange platform, asset data from at least one order book associated with at least one of the multiple asset exchanges via the multiple connections between the exchange platform and the at least one asset exchange, wherein the asset data is received via multiple data bundles, each of the multiple data bundles containing multiple values associated with multiple assets;
determining that at least one file included within at least one of the multiple data bundles or the multiple values is corrupt;
generating a standard representation of at least one asset identifier based on an asset type;
identifying a file type associated with the asset data;
applying the file type as an input to a trained machine learning model configured to identify parser patterns to be utilized for parsing reference asset data;
receiving an output from the trained machine learning model based at least in part on the file type;
determining, based at least in part on receiving the output from the trained machine learning model, a parser pattern to be used for parsing the asset data based at least in part on the file type;
parsing the asset data into one or more data buckets using the parser pattern, wherein each data bucket of the one or more data buckets is associated with a respective standard representation;
reversing a normalization action performed during the parsing to a previous state for at least a portion of the asset data based on the at least one file being corrupt, wherein the previous state is determined based at least in part on the asset type; and
causing display in at least near real time of the asset data as parsed such that at least a portion of the asset data is filtered from being displayed based on the parsing.
13 . The method of claim 12 , further comprising:
causing the asset data to be presented on a user device;
receiving a transmission indicating an update to at least one order book;
determining the update is associated with a value change of at least one asset; and
presenting the value change of the at least one asset on the user device.
14 . The method of claim 12 , further comprising determining that the connection has failed and performing, in response to determining that the connection has failed, restoration processes to the at least one connection.