Repository navigation
QuantPulse 1.0: a $0 equity-research and portfolio-construction engine for the S&P 500. Phases 0–12 of the design plan are complete, and both public deployments run from this code.
- Live demo: https://marlenmm.github.io/quantpulse/ (React + TypeScript over pre-rendered API output, refreshed every weekday evening)
- Full app: https://quantpulse-demo.streamlit.app (all seven Streamlit pages, including the Portfolio Manager)
- Locally:
./run.sh, no API key
What it does
- Ingests eight free sources (Yahoo Finance, Finnhub, FRED, SEC EDGAR filings and 13F, GDELT, Reddit, news RSS, Wikipedia) into a 26-table SQLite schema with 19 reversible Alembic migrations.
- Scores every S&P 500 name on seven categories under six investor profiles; a category with no data is dropped from the weighting rather than scored as zero.
- Forecasts with a random-walk baseline, ARIMA/SARIMA, gradient boosting and a Monte Carlo fan chart, each graded out-of-sample against the baseline.
- Backtests walk-forward on a point-in-time universe, with transaction costs and moving-block bootstrap confidence intervals on Sharpe and CAGR.
- Builds portfolios with mean-variance, Hierarchical Risk Parity and Black-Litterman, each with a concrete trade list, on FIFO tax-lot bookkeeping.
Quality: 2,100+ Python tests (unit, integration, property-based), two Playwright suites, golden files shared by the Python engine and the TypeScript client, ruff/mypy in CI, and tests that keep the documented counts and the engine's import layering honest.
In this release
- The backtest's equal-weight benchmark is chained from daily returns, so a night with partial price coverage can no longer move it (the 2026-10-19 run had reported it at −10.7% a year; on the same window it is +20%, beside +19.7% for the S&P 500).
- A README that leads with what the engine does, with deployment and operations detail in docs/OPERATIONS.md and an up-to-date HOW_TO_USE.md.
- Vite 8.3.4 for the Vite and launch-editor advisories, React 19.3.1, Plotly 4.1.2.
The demo database is published separately on the rolling demo-data release. Educational and research use only; not financial advice.