¿Los cálculos internos se realizan en coma flotante o con un número fijo de decimales? ¿Los valores siempre se redondean?

Última actualización: 26 de junio de 2025

Precisión calculada frente a precisión mostrada

El redondeo se realiza generalmente al número entero más cercano al realizar cálculos y se reduce cuando se muestra.

Las opciones "Obtener información de activos" y "Obtener pares de activos negociables" proporcionan información sobre cuántos decimales usan los distintos activos internamente y cuántos se muestran.

Coincidencia de valores locales con valores de la API

Los valores derivados de cálculos locales (como el cálculo de los cambios de saldo a partir del precio y el volumen de una operación) a menudo tienen más decimales de los necesarios, y deben redondearse o truncarse para que coincidan con los valores proporcionados por la API.

Por ejemplo, una orden SHIB/USD para comprar 50,123 SHIB a $0.00002901 da como resultado una operación por valor de $1.45406823 (50,123 x 0.00002901 = 1.45406823), pero el endpoint Ledgers de la API REST muestra que el saldo en USD disminuyó en un valor de precisión menor de $1.4541:

"L2A7BN-OLRUR-DGZH7F":{"refid":"T5JORM-HM432-GQ3RGY","time":1639991413.4671,"type":"trade","subtype":"","aclass":"currency","asset":"ZUSD","amount":"-1.4541","fee":"0.0000","balance":"124.7277"}

La solución a este tipo de discrepancia en la precisión decimal es redondear o truncar los valores locales para que coincidan con la precisión decimal proporcionada por el endpoint Assets de la API REST.

Continuando con el ejemplo de SHIB/USD, el endpoint Assets indica una precisión de cálculo de USD de 4 (véase la sección anterior), por lo que el valor calculado localmente de $1.45406823 también debe redondearse o truncarse a una precisión decimal de 4:

  • 50,123 x 0.00002901 = 1.45406823 redondeado a 4 decimales = 1.4541

Como se muestra, al redondear o truncar a la precisión decimal adecuada, el valor final de $1.4541 corresponde exactamente al valor proporcionado por el endpoint Ledgers, lo que permite que los valores locales coincidan con los valores de la API correctamente.

¿Necesita más ayuda?