Ir al contenido
AstroWay/api v2.254.12 · es
todos los sistemas funcionando con normalidad

Precisión de los cálculos

La API de AstroWay utiliza Swiss Ephemeris (código C oficial de Astrodienst, creadores de astro.com), el mismo motor con el que astrólogos profesionales han trabajado durante más de 30 años en Solar Fire ($495), Kepler ($995), Astro Gold ($29.99/mes) y Janus. Lo ejecutamos en nuestros propios servidores y lo entregamos como una capa de API REST, sin recargos de intermediarios. Cada uno de los endpoints de cálculo básicos está cubierto por pruebas de instantánea de regresión; la precisión del motor se verifica mediante triangulación con tres fuentes independientes + contra el Catálogo de Eclipses de 5 Milenios de la NASA:

  • Posiciones planetarias: mediana de 0.0013", máximo de 0.561" vs CGI oficial de swetest de Astrodienst (medido el 29-07-2026 en 130 mediciones). Desglose por cuerpos a continuación
  • Ejecución independiente con un benchmark externo (RoxyAPI, contra NASA JPL Horizons DE441): 210 de 210 dentro de la tolerancia, mediana 0.11", máximo 0.60"
  • Cúspides de casas Placidus: 0.000" coincidencia exacta
  • Eclipses: < 1 minuto vs Catálogo de Eclipses de la NASA
  • Líneas ACG: < 1.5 km en el ecuador vs swetest
  • Amanecer/atardecer: < 10 segundos vs timeanddate.com
  • VOC lunar, ingresos, conjunciones planetarias: precisión de una fracción de segundo

Estos números no son una estimación, sino el resultado de una ejecución. El script toma 10 cartas, distribuidas entre 1900 y 2050, consulta los mismos momentos en el CGI de swetest de Astrodienst en vivo y compara los 13 cuerpos que entregamos. En total, 130 mediciones.

CuerpoDeriva máxima
Sol, Venus, Saturno0.001"
Mercurio0.002"
Nodo verdadero0.004"
Marte0.007"
Júpiter0.009"
Luna0.022"
Urano0.083"
Plutón0.097"
Neptuno0.223"
Quirón0.561"
Apogeo medio (Lilith)0.000"

Mediana de las 130 mediciones: 0.0013"

Anteriormente, esta página contenía una promesa general de ”< 0.1 segundos de arco”. Las mediciones del 29-07-2026 mostraron que Neptuno, Plutón y Quirón no la cumplían, por lo que la promesa fue reemplazada por las cifras reales. Quirón y los planetas exteriores tienen una mayor deriva debido a que sus posiciones se toman de un conjunto comprimido de efemérides que utiliza nuestra compilación.

Puedes reproducirlo tú mismo: api-calc/scripts/accuracy-vs-swetest.mjs realiza exactamente estas consultas e imprime la misma tabla.

Compruébalo tú mismo. El script con el que se midieron los números anteriores se encuentra en el repositorio público bajo licencia MIT: astroway/astrology-accuracy-benchmark. Funciona no solo con nosotros: un adaptador a cualquier otra API son treinta líneas, por lo que las mismas 130 mediciones se pueden ejecutar contra un competidor y comparar. Una clave de sandbox es suficiente.

ComponenteValor
BibliotecaCódigo C de Swiss Ephemeris (aloistr/swisseph)
VersiónCódigo C upstream de Astrodienst
EfeméridesEfemérides JPL DE431 (a través de archivos .se1)
AlternativaAnálisis de Moshier (para fechas fuera de 1800-2399)
Compartición de códigoCompartido @/core con app.astroway.info - un motor, dos transportes

La precisión se verifica mediante triangulación, comparando con tres fuentes independientes:

La implementación de referencia oficial de Swiss Ephemeris de los propios Astrodienst, el equipo que creó Astro.com y sirve a millones de astrólogos en todo el mundo. La fuente pública más autorizada. Nuestro motor es idéntico (0.00–0.07 segundos de arco de deriva).

Una biblioteca Python independiente que utiliza enlaces pyswisseph, independientes de nuestra compilación. Confirma que nuestra capa de envoltura no distorsiona los datos.

Una API remota de Swiss Ephemeris (Lahiri sidéreo). La deriva sistémica de 8–17 segundos de arco está relacionada con diferentes versiones de la fórmula de ayanamsa de Lahiri, y no con la precisión del motor.

Cartacontra swetest (Astrodienst)contra Kerykeion (Python)contra Prokerala API
Monroe 19260.00”0.19”16.95” (sistémica)
Diana 19610.00”0.69”8.18” (sistémica)
Einstein 18790.07”Artefacto LMT de Kerykeion14.96” (sistémica)

Verificación independiente con una herramienta externa

Sección titulada «Verificación independiente con una herramienta externa»

RoxyAPI publica su propio benchmark contra NASA JPL Horizons DE441: licencia MIT, solo la biblioteca estándar, 21 cartas y 210 posiciones, y el indicador --base-url para apuntarlo a cualquier otra API. En su README se afirma directamente que las tolerancias no se ajustaron intencionalmente a su propio motor, porque un benchmark que propone verificar a un competidor debe ser justo.

Lo apuntamos a nosotros mismos, sin cambiar ningún número en su código. El adaptador renombra un campo de solicitud y elimina una envoltura de respuesta.

AstroWayRoxyAPI, su ejecución 29-09-2026
Dentro de la tolerancia210 de 210210 de 210
Mediana de desviación0.11"0.05"
Máximo0.60"0.78"

Nuestra medición del 09-09-2026, costo 21 solicitudes a la API. RoxyAPI en septiembre pasó a la lectura directa de DE440, y su mediana ahora es inferior a la nuestra; nuestro máximo es inferior al suyo. Salida ordenada de las 210 líneas: CSV.

Cada uno de los endpoints de cálculo básicos está cubierto por pruebas de instantánea congeladas en 3 cartas de referencia (Monroe / Diana / Einstein) = 873 instantáneas.

El conjunto de instantáneas detecta:

  • Errores de mapeo de datos de entrada: ID de planeta incorrecto, UT, sistema de casas
  • Post-procesamiento: redondeo, conversión de unidades, pérdida de signo
  • Discrepancia de valores predeterminados: nodo medio vs verdadero, geocéntrico vs topocéntrico
  • Deriva del esquema: la validación omitió una forma incorrecta
  • Despliegue obsoleto: la distribución de producción no corresponde al código

Tolerancia: 5e-5° (≈0.18 segundos de arco) por defecto para todos los campos numéricos.

Posiciones planetarias (trópico, contra swetest)

Sección titulada «Posiciones planetarias (trópico, contra swetest)»
CartaFechaDeriva máxima
Marilyn Monroe1926-06-010.00”
Princesa Diana1961-07-010.00”
Albert Einstein1879-03-140.07”

Cúspides de casas Placidus (contra swetest)

Sección titulada «Cúspides de casas Placidus (contra swetest)»
Cartaderiva ASCderiva MCDeriva máxima de cúspide
Monroe0.000”0.000”0.000”
Diana0.000”0.000”0.000”

Eclipses (contra el Catálogo de 5 Milenios de la NASA)

Sección titulada «Eclipses (contra el Catálogo de 5 Milenios de la NASA)»
EventoMáximo NASANuestro máximoDeriva
2025-03-14 Lunar Total06:58 UT06:58 UT0.8 min
2025-03-29 Solar Partial10:47 UT10:47 UT0.5 min
2025-09-07 Lunar Total18:11 UT18:11 UT0.8 min
2025-09-21 Solar Partial19:41 UT19:42 UT1.0 min

Astrocartografía (contra la fórmula RA de swetest)

Sección titulada «Astrocartografía (contra la fórmula RA de swetest)»

Las líneas MC e IC se construyen con la fórmula longitud = RA − GMST (estándar de Kenneth Bowser). Deriva del estándar: < 1.5 km en el ecuador para todos los planetas.

Las líneas horizontales ASC y DSC se calculan a partir de la ecuación del horizonte en las mismas coordenadas ecuatoriales: cos H = -tan φ · tan δ, donde H = (GMST + lng) − RA. Las mitades difieren en el signo del ángulo horario: cuando H < 0, el cuerpo está al este del meridiano, es decir, asciende. La verificación que ejecutamos en cada ejecución: se toma cada punto de cada curva horizontal y se calcula la altura del cuerpo sobre el horizonte en ese punto. En 8419 puntos, la desviación máxima es 0.0 km, lo que significa que el cuerpo realmente está en el horizonte en todos los lugares donde trazamos la línea.

Amanecer / Atardecer (contra timeanddate.com)

Sección titulada «Amanecer / Atardecer (contra timeanddate.com)»
UbicaciónFechaParámetroDeriva
Londres2026-04-15Amanecer0.6 s
Londres2026-04-15Atardecer9 s

Las ubicaciones polares (|lat| > 66.5°) devuelven automáticamente polarState + una advertencia de que las horas planetarias normales no están definidas.

AstroWay utiliza orbes variables por planeta (regla del MIN de dos planetas), como en ZET9 y astro.com. Orbes por defecto (para la carta natal):

AspectoSolLunaInterioresJúpiterExteriores
Conjunción12°10°5°8°5°
Sextil6.5°6°5°5°5°
Cuadratura10°8°5°7°5°
Trígono12°8°5°5°5°
Oposición12°10°5°8°5°

Los aspectos menores (36°, 40°, 45°, 72°, 108°, 135°, 144°) están desactivados por defecto. Se activan explícitamente a través de ALL_ASPECTS.

Para |lat| > 66.5°, los sistemas Placidus / Koch / Regiomontanus no están definidos matemáticamente. En tales casos, Swiss Ephemeris devuelve automáticamente Porphyry, y nuestra API añade una advertencia:

{
"system": "P",
"warning": "Placidus system is undefined for lat=68.96° (> 66.5°). Swiss Ephemeris fell back to Porphyry..."
}

La regresión se verifica en cada PR a través de CI:

  • api-calc/tests/endpoints/: 873 instantáneas contra cartas de referencia (Monroe / Diana / Einstein) + sinastría / compuesto / davison
  • .github/workflows/api-accuracy.yml: ejecución automática en PR
  • Triangulación contra swetest CGI + Kerykeion: semanalmente
  • Monitoreo de Swiss Ephemeris upstream a través de Dependabot

La precisión del motor es la mitad de la confianza. La otra mitad es el contrato de salida, que un agente (Claude, ChatGPT, Cursor) puede validar. Nuestro servidor MCP no devuelve “texto sin procesar, averígualo tú mismo”:

  • structuredContent tipado. Más de 600 herramientas MCP, y la gran mayoría de ellas publican un outputSchema estricto: el cliente MCP recibe una estructura validada, no una cadena que deba ser parseada al azar.
  • Protección contra la deriva del esquema. La prueba CI openapi-example-drift valida cada instantánea de regresión contra el esquema derivado de su propio ejemplo: si la salida real del endpoint difiere del esquema publicado, la compilación falla. Esta misma clase de discrepancias causa el error MCP -32602 Output validation error.
  • Errores: son errores. Un fallo de la herramienta siempre se devuelve con un indicador isError y un código tipado (UPPER_SNAKE). Nunca entregamos al modelo un stack trace sin procesar o rutas internas del servidor como “datos”.

Es decir, la integración a través de MCP es tan predecible como una llamada REST directa: lo que se describe en /openapi.json es lo que devuelve la herramienta.

  • Fechas fuera de rango (antes de 1800 y después de 2399): se utiliza el análisis de Moshier, precisión ~0.1” (frente a < 0.01” para SWIEPH con archivos DE431)
  • Lilith verdadera (id=13) vs Lilith media (id=12): diferencia de hasta 12° - por defecto Lilith media (comportamiento estable), Lilith verdadera disponible a través de planetIds: [13]
  • Topocéntrico vs geocéntrico: por defecto geocéntrico

Sobre cuestiones de precisión: escribe a support@astroway.info con los datos de la carta y el estándar esperado (astro.com o cualquier otra fuente autorizada).

¿Útil?
Sugerir edición

Última actualización: