Advanced Financial Report Library in Python

Advanced Financial  Report Library in Python

Con el paso del tiempo, hay codigos que pueden empezar a ver la luz de forma publica, y revisando repositorios antiguos, encontre una version muy primitiva de una libreria sobre reporting, que nos facilito muchisimo la vida en su momento.

Durante un tiempo, dentro del equipo, no habia un flujo de trabajo estandarizado, y cada cual (con sus errores) utilizaba diferentes formas de resolver modelos, con todo el kaos que aquello genero.

Dentro de un proceso de restructuracion interna, donde personalmente me encarge de todos los procesos internos para la gestion de datos (datalakes) como toda la parte de reporting. Y estandarizamos todo el procedimiento, creando homogeneidad en los resultados, y eliminando muchisimos otros problemas.

Todo ello ha ido avanzando de una forma que actualmente lo definiria como alta tecnologia relojera suiza, donde nos facilita la labor dia a dia. Pero que en su momento era un autentico descontrol.

La libreria liberada, esta lista para funcionar. Pero se recomienda, que se entienda su funcionamiento interno, y que cada cual se la adapte a sus necesidades. Mediante las bases asentadas en la libreria, crea un framework de trabajo solido, que puede ser personalizado a las necesidades de cada uno.

Que es el financial reporting

El financial Reportig, es la disciplina que translada las operaciones financieras de una cuenta, estrategia o cualquier otro subconjunto, a una serie de valores econometricos y interpretaciones visuales, que facilitan mejor la comprension de los datos.

Las librerias mas utilizadas para el financial reporting, por mi parte siempre han sido pyfolio-reloaded, libreria que genera unos reports adaptados a zipline, basando el calculo de ratios en empyrical.

Para tener una herramienta estandarizada, donde poder comparar modelos y estrategias, empezamos a desarrollar la librería que hoy liberamos.

Funcionalidades básicas necesarias

La idea principal, que queríamos trasladar, eran las 4 ideas principales de pyfolio, a un formato adaptado a nuestra forma de trabajar, y que ahora abrimos para todos.

  • Reports sólidos, con estadísticas y cálculos robustos, todo testeado y validado, y lo más importante, que todos los reportes sean comparables entre ellos.
  • Que se pudieran desplegar en conjunto, o por separado, además de dar la posibilidad de personalizar
  • La forma de ingerir los datos, se simplifica a una variación porcentual de un activo, y de su benchmark, dejando de lado los trades de forma independiente, para utilizar un agregado de a fin de día.
  • Que todo sea modulable, ampliable, actualizable, con un mantenimiento fácil

Sobre QAstats

La librería que utilizamos actualmente de forma profesional, no difiere mucho de la Liberia liberada en esta publicación. La base es la misma, solo que hemos aumentado la funcionalidad, para adaptarla por completo a nuestras necesidades y las necesidades del departamento de compilance.

La repo trae un ejemplo para ver su funcionamiento, pero esta librería está creada para usar como base a futuros desarrollos. Aunque se puede usar tal cual, el potencial de la personalización que proporciona la base de la libreria, es ilimitada.

Enlace al Repositorio QAstats

GitHub - quantarmyz/qastats-git: Based on private module for generate reports. Using empyrical calcs and create faster factsheets in a pandas-like style
Based on private module for generate reports. Using empyrical calcs and create faster factsheets in a pandas-like style - quantarmyz/qastats-git

Ejemplo de un reporte.