| title | Blum AI Financial Intelligence | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| emoji | 📈 | |||||||||
| colorFrom | yellow | |||||||||
| colorTo | gray | |||||||||
| sdk | docker | |||||||||
| app_port | 7860 | |||||||||
| short_description | Open-source evidence-bound financial decision intelligence. | |||||||||
| tags |
|
|||||||||
| pinned | false |
BLUM studies markets, records decisions, simulates execution and learns from measured outcomes. It is designed to explain whether its reasoning is improving, not to manufacture confidence or promise returns.
Live application · Documentation · Model · Discussions · Contributing
BLUM is an open-source research system for quantitative finance, financial machine learning, equities and Forex paper trading. Its core loop is explicit:
Market evidence -> thesis -> risk-gated decision -> paper execution
-> measured outcome -> learning -> next experiment
The system combines technical, fundamental, narrative, regime, benchmark and portfolio evidence. Every trading result remains paper-only, timestamped and auditable. Stored outcomes can influence future confidence and research priorities, but BLUM never rewrites its own source code.
| Surface | Question answered | Live view |
|---|---|---|
| Brain | Is decision quality improving? | Open Brain |
| Training Ground | What is BLUM testing and learning? | Open Training Ground |
| Paper Trading | Which decisions were opened, closed or rejected, and why? | Open Paper Trading |
| Alpha | Does stored evidence beat relevant benchmarks? | Open Alpha |
The public UI reads compact snapshots. Training, research and trade evaluation continue in background workers and are never triggered by page rendering.
BLUM separates four evidence classes rather than combining them into one score:
- historical replay;
- purged or walk-forward validation;
- paper-forward outcomes;
- live-forward evidence when available.
Every performance surface should expose sample size, benchmark, period, transaction-cost assumptions and reliability warnings. Historical success is not treated as forward alpha. Missing evidence is reported as missing, not replaced with synthetic results.
BLUM uses three boundaries with one source of financial truth:
flowchart LR
Data["Market, news and filing evidence"] --> Engine["BLUM Engine"]
Engine --> Decisions["Theses, decisions and risk plans"]
Decisions --> Paper["Paper execution and outcomes"]
Paper --> Learning["Learning and validation"]
Learning --> Memory["Versioned evidence memory"]
Memory --> Engine
Engine --> Snapshots["Read-only snapshots"]
Snapshots --> Runtime["BLUM Runtime"]
Runtime --> UI["Brain · Training · Paper Trading · Alpha"]
Engine --> Dataset["Curated reasoning dataset"]
Dataset --> Analyst["BLUM Finance model"]
Analyst -->|"Advisory reasoning only"| Engine
- BLUM Engine owns evidence, decisions, learning, risk, portfolio logic and benchmark validation.
- BLUM Runtime owns APIs, scheduling, snapshots, observability and the web interface. It does not own financial truth.
- BLUM Finance model learns BLUM's evidence-bound reasoning format. Its output remains advisory until the Engine validates it.
Read Architecture for module boundaries and event flow.
- point-in-time market, news, filing and sentiment evidence;
- multi-engine bull, bear and neutral thesis competition;
- equities, ETF and Forex opportunity research;
- deterministic risk gates and paper execution simulation;
- spread, slippage, fees, partial-fill and benchmark accounting;
- historical replay, walk-forward and paper-forward evidence separation;
- decision, trade, engine-vote and learning attribution;
- confidence calibration and regime-aware reliability;
- autonomous research priorities and champion/challenger policies;
- snapshot-first FastAPI and Next.js runtime;
- governed reasoning-dataset and model-release pipeline.
Docker is the supported reproducible path:
git clone https://github.com/BlumFinancialLab/Blum.git
cd Blum
docker build -t blum .
docker run --rm -p 7860:7860 blumOpen http://localhost:7860. The first image build installs CPU machine-learning
and quantitative dependencies and can take several minutes.
Without DATABASE_URL, the container starts an embedded PostgreSQL instance for
research use. On deployments with persistent /data, BLUM asynchronously keeps
a physical recovery image for fast local startup and an atomic logical dump as
fallback. PostgreSQL itself remains on local disk because network-mounted Space
storage is not a safe database data directory. Use an external PostgreSQL
database for durable multi-replica deployments:
docker run --rm -p 7860:7860 \
-e DATABASE_URL=postgresql+psycopg2://user:password@host:5432/blum \
blumConfiguration belongs in environment variables or deployment secrets. Never commit market-provider, model-provider or database credentials.
GitHub is canonical. The Hugging Face Space is the public Docker deployment.
A scheduled GitHub workflow reads the public HF Git history:
- equal or older HF history produces no change;
- a strictly newer HF history fast-forwards GitHub after Git LFS transfer;
- divergent histories create a protected review branch and pull request;
- canonical
mainis never force-pushed.
See Deployment and synchronization.
- BLUM Finance 4B: downloadable evidence-bound reasoning model.
- BLUM Finance Reasoning: versioned training and evaluation examples.
- BLUM Finance Memory: opt-in, quarantined community contributions.
Inference does not send telemetry by default. Community evidence requires an explicit redacted contribution flow and never changes active weights merely because it was uploaded.
| Document | Purpose |
|---|---|
| Architecture | Engine, Runtime, Analyst and data-flow boundaries |
| Research methodology | Evidence, validation and anti-bias rules |
| Deployment | Docker, HF and repository synchronization |
| Engineering standards | Production and evidence requirements |
| Roadmap | Current engineering direction |
| Changelog | Shipped changes |
| Project reference | Full historical subsystem and release reference |
| Model release report | Dataset, evaluation and release limitations |
Contributions should improve measured decision quality, evidence integrity, risk control, reproducibility or runtime reliability. Start with CONTRIBUTING.md, use Discussions for research questions and submit reproducible defects through Issues.
Project decisions follow GOVERNANCE.md. Security issues must be reported privately according to SECURITY.md.
BLUM is research and paper-trading software. It does not connect to a broker or execute real-money orders in the supported open-source configuration. It does not provide investment advice, guarantee profit or claim market outperformance without sufficient stored evidence.
Models, datasets and third-party market sources may have licenses or usage terms separate from the Apache-2.0 application license. Review their cards and terms before redistribution or commercial use.
Application source is licensed under Apache-2.0.
Copyright 2026 BLUM Financial Lab contributors.