数据导入
管理行情数据源和手工维护数据。
本机持仓账本
股数和成本保存在当前浏览器 IndexedDB,行情仍来自服务端 Provider。
正在读取本机账本…
| 代码 | 名称 | 股数 | 成本价 | DPS | 目标股数 | 操作 |
|---|---|---|---|---|---|---|
清理浏览器站点数据会删除本机账本,请定期导出 JSON 备份。
下方 Provider 状态是服务端种子持仓的诊断;保存本机账本后,首页会按你录入的代码重新请求行情。
当前数据模式
设置后首页和持仓详情页使用新浪实时快照价格。网络失败时自动降级为 Baostock CSV 延迟数据,再降级为模拟数据。
读取本地 CSV 日线数据,需先执行 Baostock 同步。不设置环境变量时默认使用模拟数据。
数据源状态
当前行情数据源无降级。
Baostock CSV 同步状态
未检测到 CSV 行情文件,请执行同步:
数据质量检查
Sina 实时行情(可选)
通过新浪财经行情 API 获取 A 股盘中实时快照。服务端请求,不在浏览器端调用外部接口。 网络失败时自动降级为 Baostock CSV 延迟数据,再降级为模拟数据。
文件位置
每个文件以股票代码命名,如 600941.csv。 文件放在项目根目录下的 data/market/daily-bars/ 目录中。
CSV 字段
| 字段 | 格式 | 说明 |
|---|---|---|
| date | YYYY-MM-DD | 交易日日期 |
| open | decimal | 开盘价(元) |
| high | decimal | 最高价(元) |
| low | decimal | 最低价(元) |
| close | decimal | 收盘价(元) |
| volume | integer | 成交量(股) |
date,open,high,low,close,volume 2026-08-04,107.80,108.40,107.20,108.00,1200000 2026-08-05,108.00,108.80,107.90,108.15,1250000 2026-08-06,108.15,109.20,108.00,108.60,1320000
Baostock CSV 同步
可选的本地同步辅助工具。通过 Python 脚本从 Baostock 拉取 A 股日线数据, 写入 data/market/daily-bars/ 目录。 应用仍通过 manual-csv provider 读取 CSV, 不在 Next.js 运行时调用外部 API。
详细安装与同步说明请参阅 docs/DATA-SYNC.md
默认同步 600941、600900、000333、600036 四只标的,日期范围自动取最近 90 个自然日(end=今天)。 也可直接运行 Python 脚本并自定义参数:
如果缺少 baostock 依赖,脚本会报错并提示安装命令:
降级规则
- ⚠Sina 模式:网络失败、超时、当前价为 0 时,先降级为 Baostock CSV 延迟数据,再降级为模拟数据。
- ⚠缺文件:对应股票代码的 CSV 文件不存在时,该标的降级为模拟数据,页面标签显示"模拟"。
- ⚠行数不足:有效数据行少于 2 行时,无法计算涨跌幅,降级为模拟数据。
- ⚠格式不合格:日期、价格、成交量格式不合规的行会被静默跳过,不影响其他有效行。
- ✓降级不会导致页面崩溃,所有页面均可正常浏览。
分红事件 CSV
维护 A 股标的的年度分红事件记录,包括预案日、除权日、派息日、DPS 和状态。 当前阶段(M1.6)仅用于可见性核对,年度分红计算仍使用 SEED_HOLDINGS.dps。
| 字段 | 格式 | 说明 |
|---|---|---|
| code | 6位数字 | 股票代码 |
| name | string | 股票名称 |
| year | integer | 分红年度 |
| planDate | YYYY-MM-DD | 预案公告日 |
| exDate | YYYY-MM-DD | 除权除息日 |
| payDate | YYYY-MM-DD | 派息日 |
| dps | decimal | 每股分红(元) |
| status | enum | planned / announced / ex-dividend / paid |
| note | string | 备注 |
投资声明
本系统所有数据仅用于计算口径验证和投资决策辅助,不构成任何投资建议。 手工导入的 CSV 数据由用户自行维护,系统不对其准确性负责。 投资有风险,入市需谨慎。