Hoy he liberado el ultimo update de la libreria de reporting de QUANTARMY. En otra ocasion explicamos superficialmente la libreria en este articulo

El repositorio donde se encuentra definitivamente el paquete es
Cambios
- Mejoras de Estabilidad
- Correccion de Errores
- Actualizado la lista de eventos relevantes
- Nuevo Ratio SQN en las estadisticas avanzadas
- Adaptado a una instalacion mediante pip
Instalacion
Como he recibido bastantes consultas sobre como utilizar la herramienta, vamos a explicar para todos los principiantes como empezar con la libreria. Utilizaremos conda para crear entornos de trabajo, puede utilizarse cualquier otro metodo, pero mi recomendacion es instalarlo via miniconda. Las instrucciones para su instalacion las podeis obtener de su pagina oficial
El primer paso es crear un nuevo entorno en conda para la libreria mediante el comando
conda create -n qastatsUna vez hemos creado el entorno de trabajo qastats, necesitamos activarlo
conda activate qastatsUna vez que tenemos el entorno de trabajo instalado y activado, procedemos a instalar la libreria mediante los siguientes comandos que, clonan el repositorio. Una vez lo tenemos descargado, accedemos a la carpeta y lo instalamos mediante pip install .
git clone https://github.com/quantarmyz/QAStats
cd qastats
pip install -r requirements.txt
pip install .Una vez finalizado el proceso veremos algo como

Donde la linea relevante es la ultima que indica 'Successfully instaladed qastats'
Primeros pasos con la libreria.
Primero nos situamos en la carpeta correcta de la repo para ejecutar el ejemplo, y cargamos las librerias necesarias
%cd ../
%matplotlib inline
import qastats
import pandas as pd
import numpy as np
import warnings
warnings.filterwarnings('ignore')posteriormente vamos a cargar una la curva de retornos de una estrategia, y vamos a crear un bechmark sintetico, obteniendo retornos aleatoriso de la misma estrategia y ordenandolos en consecuencia.
Posteriormente sumamos los retornos y los ploteamos
data = pd.read_pickle('examples/diario_normal.pickle')
data['bench'] = np.random.choice(data['Close'],len(data))
data.cumsum().plot()
stats = qastats.stats.get_daily_stats(data)
stats
Drawdowns en periodos relevantes
Para obtener los datos de los drawdowns en los periodos relevantes, actualizado hasta el trade-war de Donald Trump, en este ejemplo, no apareceran por que el historico de la estrategia no llega hasta 2025, pero en una estrategia que si llegue, si que los calcularia. Para ejecutarlo lo hacemos mediante
dds = qastats.stats.get_drawdown_stats(data['Close'])
dds
Vami
El índice VAMI (Value Added Monthly Index o Índice Mensual de Valor Agregado) es una métrica utilizada para rastrear el desempeño de una inversión hipotética, generalmente de $1,000, a lo largo del tiempo, asumiendo la reinversión de rendimientos y descontando todas las comisiones y gastos asociados.
Su principal utilidad en la gestión de fondos es mostrar de manera clara y visual cómo habría evolucionado el capital invertido mes a mes, permitiendo comparar el crecimiento de diferentes estrategias, fondos o benchmarks de forma objetiva y sencilla.
El VAMI es especialmente valioso para evaluar la rentabilidad histórica de un gestor, ya que refleja tanto las ganancias de capital como la reinversión de dividendos e intereses, facilitando la toma de decisiones informadas y la comparación entre alternativas de inversión
Para obtener las estadisticas relevantes de la curva de equity, lo lanzamos de la siguiente manera
Para obtener el VAMI diario lo haremos mediante
qastats.stats.get_vami_diario(data['Close'])
Full Report
Y para obtener un reporte completo lo haremos mediante
qastats.reports.create_return_dd(data)

