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. Mientras el código open-source para el ticker sigue disponible — y cualquiera es libre de implementarlo, 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 porque no había suficiente uso para justificar 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 el 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 Activos de comercio (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 de 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 nuestro roadmap.
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 puntos finales 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 PUSH token 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
}
]
}
// Example Response:
{
"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 habla GraphQL:
¡Sí! El ticker es un proyecto de código abierto alojado en el monorepo de SDF Go monorepo. 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 / ajustar 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.