Estoy trabajando en un POC para extraer datos de varios grupos de liquidez (tokens emparejados, es decir, WEI/USDT de varios intercambios).
Al tratar de crear algo como el gráfico DAI que se ve aquí :
Estoy tratando de crear un modelo de consulta y datos en JavaScript para contener estos datos.
El dado sería "DAI". Primero obtenga los resultados de Uniswap con grupos de DAI (cualquier par de grupos que contenga "DAI"). Luego obtenga una lista de resultados de SushiSwap de coincidencias con "WETH". Dado que es probable que ambas fuentes no tengan todos los grupos coincidentes, con estas dos listas en la memoria, cree una lista de todos los elementos que coincidan, es decir, USDT/WETH (coincidencia en verde en la imagen de arriba).
Inicialmente, iba a crear una matriz asociativa con una lista de tokens para hacer coincidir:
poolList["Uniswap"] = { collection of pool objects } poolList["Sushiswap"] = { collection of pool objects }Donde los datos de la colección se verían algo así como
{ "data": { "pools": [ { "token0": { "id": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", "name": "Wrapped Ether", "symbol": "WETH" }, "token1": { "id": "0xd1063ee5ec2891991a29fefb52bcc448cd386844", "name": "BanDogge Mastiff", "symbol": "DOGGE" } }, { "token0": { "id": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", "name": "Wrapped Ether", "symbol": "WETH" },¿Cómo se almacenarían los datos de varios intercambios para que exista una lista de filtros de pares comunes o se cree algún tipo de matriz 2D que refleje cómo aparece el gráfico anterior?
Me puse a mirar esto a nivel del suelo: ¿Qué tipo de problema de datos es este?
Al abordar esto, pude trabajar a través de una respuesta sugerida a mi pregunta: ¿Qué se puede usar para identificar la colección de origen para elementos comunes de n-número de colecciones? y se le ocurrió una solución que representa los datos en un formato viable:
La tabla no refleja exactamente la pregunta inicial, sin embargo, (index) representa el nombre del grupo o los pares de tokens, es decir, USDT/ETH. Las columnas subsiguientes representan intercambios y sus propiedades que contienen estos pares de tokens o fondos de liquidez.
Para mantener el contexto de la pregunta original y ayudar a otros, la solución de código completo se puede encontrar aquí .