Artículo de Blog
Autor
Alex Cordeiro
Fecha de publicación
Ticker
API
Horizonte
Cuando se escribió esta publicación, SDF alojaba una instancia del ticker de Stellar. Aunque el código open-source del ticker sigue disponible — y cualquiera es libre de desplegarlo, modificarlo o adaptarlo a su caso de uso — la instancia alojada por SDF fue desmantelada el 3 de enero de 2024.
La instancia alojada por SDF del ticker de Stellar estaba destinada a permitir pruebas y desarrollar pruebas de concepto, y no estaba destinada para uso en producción. La instancia fue desmantelada debido a que el uso insuficiente no justificaba los recursos de ingeniería y operacionales requeridos para mantener el servicio actualizado, y optamos por dedicar esos recursos a proyectos de mayor prioridad. Si tienes preguntas, comentarios o sugerencias sobre el ticker, infraestructura de pruebas o cualquier otra cosa, por favor compártelos en el Stellar Dev Discord!
Estamos muy felices de anunciar que Stellar Development Foundation está lanzando una nueva API de ticker para proporcionar los datos más recientes sobre Mercados, Emisores y Activos en la Red de Stellar.
SDF ya tenía un ticker de larga duración, pero su tasa de actualización no era lo suficientemente rápida para representar la red dinámica y en constante crecimiento, y los datos proporcionados eran solo un subconjunto de lo que actualmente está disponible a través de herramientas como Horizon.
El nuevo ticker proporciona una API de backend con la misma funcionalidad que la anterior, más:
{
ticker(numHoursAgo: 24) {
tradePair
baseVolume
counterVolume
orderbookStats {
bidMax
askMin
spread
}
}
}
Según Investopedia:
Un ticker de acciones es un informe del precio de ciertos valores, actualizado continuamente a lo largo de la sesión de negociación por las diversas bolsas de valores. Un “tick” es cualquier cambio en el precio, ya sea que el movimiento sea hacia arriba o hacia abajo. Un ticker de acciones muestra automáticamente estos ticks, junto con otra información relevante, como el volumen, que los inversores y comerciantes utilizan para mantenerse informados sobre las condiciones actuales del mercado.
En el contexto de la Red de Stellar, un ticker proporciona los datos asociados con diferentes pares de comercio de Activos (p. ej., XLM y USDT), a los que llamamos Mercados.
Un ticker es importante para dar una visión precisa de la actividad del mercado en cualquier momento dado. Sitios web como CoinMarketCap dependen de los datos del ticker para mostrar correctamente la información sobre los pares de comercio.
Como un proyecto de backend, el nuevo ticker es agnóstico a la UI, es decir, no ofrece por sí mismo una interfaz amigable para visualizar datos, aunque tenemos algunos proyectos para construir UIs para mostrar datos del ticker en nuestra hoja de ruta.
En términos más técnicos, esta es la raíz de la API del nuevo ticker: https://ticker.stellar.org.
El nuevo ticker ofrece dos endpoints JSON:
// Ejemplo de Respuesta:
{
"generated_at": 1555536150576,
"assets": [
{
"code": "AngelXYZ",
"issuer": "GANZBUS4726LBT2CBJ3BGF3TP4NJT5MHZMI423NHMXFRWGO2DCBQEXYZ",
"type": "credit_alphanum12",
"num_accounts": 282,
"auth_required": false,
"auth_revocable": false,
"amount": 4999999999.999953,
"asset_controlled_by_domain": true,
"anchor_asset": "",
"anchor_asset_type": "",
"display_decimals": 0,
"name": "",
"desc": "",
"conditions": "",
"is_asset_anchored": false,
"fixed_number": 0,
"max_number": 0,
"is_unlimited": false,
"redemption_instructions": "",
"collateral_addresses": [],
"collateral_address_signatures": [],
"countries": "",
"status": "",
"last_valid": 1555509989002
},
{
"code": "PUSH",
"issuer": "GBB5TTFQE5KT3TEBCR7Z3FZR3R3WTVD654XL2KHKVONRIOBEI5UGOFQQ",
"type": "credit_alphanum4",
"num_accounts": 15,
"auth_required": false,
"auth_revocable": false,
"amount": 1000000000,
"asset_controlled_by_domain": true,
"anchor_asset": "",
"anchor_asset_type": "",
"display_decimals": 2,
"name": "Push",
"desc": "1 token PUSH te da derecho a acceder a la API de PUSH.",
"conditions": "Token utilizado para acceder a la API de PUSH para enviar una solicitud de empuje a la red de Stellar.",
"is_asset_anchored": false,
"fixed_number": 0,
"max_number": 0,
"is_unlimited": false,
"redemption_instructions": "",
"collateral_addresses": [],
"collateral_address_signatures": [],
"countries": "",
"status": "",
"last_valid": 1555509990457
}
]
}
// Ejemplo de Respuesta:
{
"generated_at": 1555529876427,
"pairs": [
{
"name": "ABDT_DOP",
"base_volume": 2936.8559372,
"counter_volume": 67288.46914140001,
"trade_count": 48,
"open": 0.043734167043589976,
"low": 0.04348452989055152,
"high": 0.044444444444444446,
"change": -0.0001736265897799502,
"base_volume_7d": 93793.14427990005,
"counter_volume_7d": 1939718.2717202017,
"trade_count_7d": 399,
"open_7d": 0.049850448654037885,
"low_7d": 0.04348452989055152,
"high_7d": 0.05100629529387713,
"change_7d": 0.0059426550206679585,
"price": 0.043907793633369926,
"close": 0.043907793633369926,
"close_time": 1555484876000
},
{
"name": "BTC_ETH",
"base_volume": 0,
"counter_volume": 0,
"trade_count": 0,
"open": 0,
"low": 0,
"high": 0,
"change": 0,
"base_volume_7d": 0.00001,
"counter_volume_7d": 0.00025,
"trade_count_7d": 1,
"open_7d": 0,
"low_7d": 0.04,
"high_7d": 0.04,
"change_7d": 0,
"price": 0.04,
"close": 0.04,
"close_time": 1554943803000
}
]
}
El nuevo ticker también utiliza GraphQL:
¡Sí! El ticker es un proyecto open-source alojado en el monorepo de SDF. Consiste en una serie de rutinas que extraen datos de Horizon, y que procesan y almacenan esos datos de una manera que permite una fácil consulta.
El README.md contiene instrucciones rápidas de Docker para cualquier desarrollador interesado en ejecutar / modificar su propio ticker.
Este proyecto está en desarrollo activo, así que no dudes en enviar comentarios, crear incidencias y enviar Pull Requests directamente en el monorepo.