A local data lake for China A-shares, no token required
CNEquity turns 55 daily-updated Chinese market datasets into a self-hosted Parquet lake with point-in-time semantics, survivorship handling, and a read-only MCP server for AI agents.

What it does
It scrapes and orchestrates free public sources (TDX protocol, Eastmoney, Sina, cninfo, and friends) into a local Parquet data lake covering quotes, fundamentals, futures, fund flows, announcements, index/industry membership, macro, and risk events — 55 datasets organized into layers L0–L9. Incremental collection with resume-on-failure, quality audits, and a web console (cne serve) for inspecting coverage and data health. No account, no API token, runs fully offline once built.
The interesting bit
The boring part is the value: it bakes research semantics into the data layer instead of leaving them to your notebook. Raw prices and adjustment factors are stored separately, delisted stocks keep their identity in historical universes, and financial statements distinguish strict point-in-time from after-the-fact reconstruction. Every row carries source, data_version, and fetched_at so results are reproducible. The README even shows a survivorship-bias chart — the classic way backtests lie.
Key highlights
- 55 datasets: 47 curated + 8 derived, from daily bars to option Greeks and continuous futures contracts
- Row-level provenance (
source,data_version,fetched_at) plus immutable data versions and research snapshots - Read-only MCP server so Claude, ChatGPT, Cursor, etc. can query the lake directly
- Consumable via Python
load()/scan(), DuckDB, Polars, SQL CLI, or the console - Interrupted builds resume without redoing completed batches;
cne checkexits non-zero on gaps or quality errors
Caveats
- Minute bars, tick data, and futures/options are disabled by default; even after enabling, the README warns you must verify source history depth and actual coverage yourself
- Full-market initialization “may take a few hours” on first run
- Registered primary/backup sources are metadata only — actual routing for daily tips and backfills may differ, so the catalog needs consulting
Verdict Worth a look if you backtest Chinese equities and are tired of hand-rolling data plumbing or discovering survivorship bias the hard way. If you need tick-level or institutional-grade data, temper expectations — this is built on free public sources, honestly labeled.
Frequently asked
- What is rootSunc/CNEquity?
- CNEquity turns 55 daily-updated Chinese market datasets into a self-hosted Parquet lake with point-in-time semantics, survivorship handling, and a read-only MCP server for AI agents.
- Is CNEquity open source?
- Yes — rootSunc/CNEquity is open source, released under the Apache-2.0 license.
- What language is CNEquity written in?
- rootSunc/CNEquity is primarily written in Python.
- How popular is CNEquity?
- rootSunc/CNEquity has 793 stars on GitHub.
- Where can I find CNEquity?
- rootSunc/CNEquity is on GitHub at https://github.com/rootSunc/CNEquity.