Methodology

How this personal dashboard is built and how figures are validated.

Multi-agent framework

Shared pattern

Each system runs specialist agents (technical, sentiment, macro, risk) that feed a portfolio manager. Decisions are logged as JSON reports and second-brain markdown for accountability.

Model routing

All active teams route through DeepSeek (V4-Pro for PM/macro/risk, V4-Flash for technical/sentiment). See each strategy page for the agent roster.

Data sources

Exported metrics

python export_all.py reads SQLite and JSON from each project folder and writes public/data/*.json. The home page and strategy pages use these files.

Live detail

/detail.html pulls live positions and charts from Supabase (synced by each strategy’s daily run).

How we validate figures

Before display

Run python validate_strategy.py. CAGR uses calendar years between first and last date — not row count ÷ 252. Periods under ~90 days omit annualized CAGR. Max drawdown is peak-to-trough on portfolio value.

Second-brain memory

Continuous learning

Daily logs and lessons in each project’s second-brain/ folder. The latest lesson is surfaced on strategy pages after each export.

Registry

All strategies are defined in dashboard/strategies/*.yaml. Adding a system: new YAML + exporter in exports/runner.py + run export.

View strategy registry → · Continuous learning →