Open Net Worth
Open Net Worth is an open-source personal AI wealth assistant you run yourself: one ledger for your whole financial life, worked by an AI agent you control.
翻訳待ち
Cost-effective agent ranking ~90 world equity indices by value and fundamental growth, with an interactive dashboard and market/user feedback loops.
翻訳待ち
金融JavaScript · PythonGitHub @Karthik-Veluオンライン所有者未確認
Have you tried it? One tap is enough. No sign-in needed.
Loading the full README. The saved excerpt is shown below.
Where is the world's equity value — and where's the opportunity?
A cost-effective research agent that ranks ~90 global market indices by value and
fundamental growth, surfaces the handful of calls worth your attention, and learns
from whether its past calls actually played out — so you spend a minute, not an afternoon.Read the full README ↗Where is the world's equity value — and where's the opportunity? A cost-effective research agent that ranks ~90 global market indices by value and fundamental growth, surfaces the handful of calls worth your attention, and learns from whether its past calls actually played out — so you spend a minute, not an afternoon.
· ▶ Live demo · Architecture · Data-ingestion agent · Write-up: the decisions and what broke
[!WARNING] For research/education only — not investment advice. The rankings are experimental and unvalidated — a first stock-level walk-forward backtest has run (2026-07-22) with an encouraging but not yet statistically significant signal (see docs/STATUS.md for the numbers). Do your own research. See DISCLAIMER.md.
Most equity tools are either data terminals you dig through (Bloomberg, Koyfin, TIKR) or opaque ratings that never show whether they worked (Simply Wall St, Stockopedia). This is neither. It is an agent that does the research for you and shows its work:
Try it: https://global-index-valuation-agent.vercel.app (the strategist read, the insight cards, and the Value × Growth map are the one-minute answer).
flowchart LR
SRC["Free data sources<br/>(ETF holdings, prices, fundamentals)"] --> ENG
subgraph ENG["Engine — deterministic, free (weekly)"]
direction TB
F["Fetch + normalize"] --> M["Score: value · growth · momentum · opportunity<br/>(within each peer group)"]
M --> S["Surface the few insights that matter"]
M --> L["Record predictions → grade past calls → auto-tune weights"]
end
ENG --> J["dashboard_data.json (published snapshot)"]
J --> UI["Static dashboard on Vercel<br/>insights · Value×Growth map · scoreboard"]
LLM["LLM (optional, cheap tier)<br/>tags + strategist brief"] -.-> S
The deterministic spine. Fetching, parsing, computing P/E and other metrics, scoring, ranking, and grading are all plain Python — free, exact, auditable. The LLM is optional and only ever narrates the final ≤90-row scoreboard. With no API key the product still runs end-to-end for $0 (deterministic fallbacks fill in the text).
The scores (all ranked within a peer-group kind, so adding US sectors never
distorts the country comparison):
| Score | Question it answers |
|---|---|
| Value | Is it cheap? (P/E, P/B, P/S, yields — with value-trap guards) |
| Growth | Are the underlying fundamentals growing? (revenue + earnings growth of the top holdings + forward estimates — not price momentum) |
| Opportunity (GARP) | Cheap and growing and not overvalued? (value 40% · growth 40% · momentum 12% · mean-reversion 8%) |
Two feedback loops make it an agent, not a report:
Cost model — right model for the right task. Deterministic work is free; LLM work is routed by frequency × stakes: cheap/owned models (self-hosted Qwen, GLM-4-Flash, DeepSeek) for frequent customer-facing calls, frontier models only for the rare weekly synthesis. Full design in docs/ARCHITECTURE.md.
We keep the terminology precise (see docs/AGENTS.md):
Jobs running today:
engine/) — sources indices, scores them, surfaces
insights, grades itself, publishes the dashboard. (weekly)engine/datapipeline.py) — one sequenced job: probe sources →
ingest fundamentals (SEC EDGAR) → tag stocks by sector → validate + auto-fix the
KPI catalog → data-quality checks → recalibration check. Validation runs right
after ingestion. (daily) See docs/DATA_INGESTION.md.This is the beginning of the README. Read the rest at the original. Read the full README ↗