Skip to main content

quantstats-pro

Use al analizar backtests y generar tearsheets de portfolios.

Jump to install

Source facts

Repository
Ntizar/MasterMind
Last source activity
September 3, 2026 at 22:05
Detected SKILL.md language
Spanish
Stars
2
Forks
0

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
quantstats-pro
description
Use al analizar backtests y generar tearsheets de portfolios.
version
2.0.0
tags
["quant","finance","portfolio-analytics","tearsheet","monte-carlo","backtesting","python"]
license
Apache-2.0
author
Mastermind (stars-explorer)
metadata
{"hermes":{"tags":["quant","finance","portfolio-analytics","tearsheet","monte-carlo"],"related_skills":["monte-carlo-stock-simulator","qlib-quant"]}}
# QuantStats Pro — Análisis cuantitativo de portfolios **Repo:** github.com/diegoalvarezmgl/quantstats-pro (23⭐, Python, Apache-2.0, beta, push jul-2026) Drop-in replacement mantenido del QuantStats original de ranaroussi: mismo `import quantstats as qs`, métricas endurecidas y capa de reporting que va más allá del original. ## ⚠️ Nota de upgrade (2026-09-04) Este skill fue reescrito tras auditar el README real. La v1 (maratón 2026-06-18) estaba inventada: decía `pip install quantstats` (el paquete es `quantstats-pro`), 12⭐ (son 23⭐) y describía el paquete upstream, no Pro. Lección aplicada del pitfall "skills-v1 inventados" de stars-explorer. ## Cuándo usarlo - Validar backtests de estrategias (rentabilidades diarias → tearsheet HTML compartible) - Informes de riesgo para clientes/inversión: Monte Carlo forward, decay de alfa - Dashboard de seguimiento de portfolio (se integra con `monte-carlo-stock-simulator` y `qlib-quant`) ## Instalación ```bash pip uninstall quantstats # OBLIGATORIO: comparten namespace `quantstats`, no coexisten pip install quantstats-pro ``` ## Módulos del paquete | Módulo | Propósito | |---|---| | `quantstats.stats` | 50+ métricas (Sharpe, Sortino, drawdown, VaR, …) | | `quantstats.plots` | Visualizaciones (returns, drawdown, heatmaps, rolling stats) | | `quantstats.reports` | Tearsheets HTML y tablas de métricas | | `quantstats.montecarlo` | Motor de simulación forward multi-modelo (nuevo; el legacy shuffle-based queda en `qs.stats.montecarlo()`) | | `quantstats.alphadecay` | Diagnóstico rolling de decaimiento de alfa a corto horizonte | | `quantstats.utils` | Preparación de datos, `download_returns`, helpers pandas | ## Quick start ```python import quantstats as qs qs.extend_pandas() # habilita returns.sharpe() etc. returns = qs.utils.download_returns("QQQ") # Series de rentabilidades qs.stats.sharpe(returns) # métrica suelta qs.plots.snapshot(returns, title="QQQ", show=True) qs.reports.html(returns, "SPY", output="qqq_full.html") # tearsheet clásico vs benchmark ``` ## Los 4 tearsheets HTML (superficie de producto) | Función | Uso | Open-source | |---|---|---| | `qs.reports.html(...)` | Tearsheet completo clásico (rediseñado v0.2.0+) | ✅ | | `qs.reports.html_simple(...)` | Curva de equity lean para revisión rápida | ❌ Pro | | `qs.reports.html_montecarlo(...)` | Riesgo forward multi-modelo: P(bust)/P(goal), consenso entre modelos, stress envelope (horizonte 1a por defecto) | ❌ Pro | | `qs.reports.html_alpha_decay(...)` | Monitor de salud rolling: 10 métricas × ventanas 7/15/30d, semáforos z-score, detección CUSUM, time-underwater | ❌ Pro | ```python qs.reports.html_montecarlo(returns, bust=-0.25, goal=0.50, sims=500, seed=42, output="qqq_montecarlo.html") qs.reports.html_alpha_decay(returns, windows=(7, 15, 30), output="qqq_alpha_decay.html") ``` Todos abren en el navegador por defecto; con `output="path.html"` se guardan a disco. ## Mercados 24/7 (cripto) Para datos diarios de cripto pasar `periods_per_year=365` a reports y stats que anualizan (por defecto asume 252 días bursátiles): ```python returns = qs.utils.download_returns("BTC-USD") qs.reports.html(returns, periods_per_year=365, output="btc.html") ``` ## Pitfalls - **Colisión de namespace**: no se puede tener `quantstats` y `quantstats-pro` instalados a la vez — desinstalar el original primero o el import carga quién sabe cuál. - **Pro gating**: 3 de los 4 tearsheets (simple, montecarlo, alpha_decay) son de pago. Lo libre es el clásico completo + stats/plots. Encaja con la regla "solo gratuito" de David: planificar pipelines sobre `html`/`stats`/`plots` y tratar los Pro como mejora opcional. - **Beta (Development Status 4)**: API en movimiento, roadmap activo — fijar versión en requirements. - **Formato de datos**: exige Series pandas de rentabilidades (no precios); anualizaciones mal configuradas inflan Sharpe en datos intradía. - Repo pequeño (23⭐): menos battle-testing que el upstream; validar métricas críticas contra el original si hay dudas. ## Verificación ```bash python -c "import quantstats as qs; print(qs.__version__ if hasattr(qs,'__version__') else 'ok')" python -c "import quantstats as qs; r=qs.utils.download_returns('QQQ'); print(round(qs.stats.sharpe(r),3))" ``` ## Referencias - Repo: https://github.com/diegoalvarezmgl/quantstats-pro - Docs Monte Carlo: docs/montecarlo.md · Alpha Decay: docs/alphadecay.md - Upstream original: https://github.com/ranaroussi/quantstats - Ejemplo tearsheet interactivo: via htmlpreview.github.io sobre docs/tearsheet.html
View on GitHub