数据库

数据库承担市场数据与行为数据的采集、清洗、存储、查询,为智能体与回测提供底层供数能力,本身不做分析判断。所属层级与边界见 仿真库总体设计。

定位与边界

数据库是仿真库的"水电煤",不直接产生分析结论,但决定智能体与回测的效率与可靠性。它的边界是:

  • 做什么:通过 akshare 获取指数/基金/股票/行业/宏观/资金流向等市场数据,存入本地 SQLite;记录投资者自身的决策、持仓、关注清单等行为数据;提供统一查询接口
  • 不做什么:不做量化交易级的高频数据采集,不做实时行情推送,不存储政策原文(政策文件以 01-知识库/02-政策解读 下的 Markdown 文档形式管理,数据库只存储政策传导后的结果数据)

模块组成

模块入口说明
方案设计01-方案设计/数据库选型、表结构、数据获取接口映射、更新策略、质量校验
采集脚本02-采集脚本/Python 脚本:建表、数据获取(akshare 为主)、校验、本地计算、全量更新入口
查询接口03-查询接口/连接工具函数 + 7 类业务查询模板,供站点分析调用
共享资源04-共享资源/SQLite 数据库文件与备份目录,运行时生成,不进版本库

数据范围

数据库存储两类数据:

市场数据(自动获取)

通过 akshare 从外部数据源获取,按趋势定投分析需求覆盖六类:

  1. 指数数据:宽基(沪深300/中证500/中证1000/创业板指等)、行业/主题指数的日线行情与估值
  2. 基金数据:ETF 与场外指数基金的行情、持仓、规模、费率
  3. 股票数据:行业龙头股与指数权重股的行情、财报
  4. 行业数据:申万一级行业指数的行情与估值
  5. 宏观数据:CPI/PPI/PMI/M2/社融/利率等周期与流动性指标
  6. 资金流向:北向资金、两融余额、ETF 申赎等情绪指标

行为数据(手动记录)

投资者自身的行为记录,打通路线图中决策复盘、估值跟踪、机会清单等闭环环节:

  1. 决策日志(decision_log):买入/卖出/止盈/止损决策,含决策时估值快照与情绪标签
  2. 组合快照(portfolio_snapshot):定期记录持仓与盈亏,支撑"6 个月估值跟踪"完成标志
  3. 可投标的清单(watchlist):分析产出的可投标的,含来源、优先级、状态流转

历史深度按数据类型分级,详见 01-方案设计/02-数据架构与表结构设计。

与知识库各分类的衔接

消费方用途主要查询
01-知识库/02-政策解读政策传导回测(政策本身以 md 管理)宏观查询、资金流向查询
01-知识库/03-行业与产业行业景气度跟踪行业查询、股票查询
01-知识库/03-行业与产业趋势估值跟踪指数估值查询
01-知识库/04-宏观与经济指标周期与流动性判断宏观查询
01-知识库/04-宏观与经济指标可投标的清单输出行为数据查询(写入 watchlist)
01-知识库/01-基础知识估值分位与筛选基金查询、指数估值查询
01-知识库/05-定投策略策略回测与参数调优定投决策查询
01-知识库/06-实盘与复盘扣款日参考指数估值查询、行为数据查询(写入 decision_log)
01-知识库/06-实盘与复盘历史决策还原与命中率统计行为数据查询、组合分析查询

快速开始

  1. 安装依赖:pip install -r 03-仿真库/01-数据库/02-采集脚本/requirements.txt
  2. 建库建表:python 03-仿真库/01-数据库/02-采集脚本/db.py
  3. 全量更新:python 03-仿真库/01-数据库/02-采集脚本/update_all.py
  4. 查询验证:参考 03-查询接口/ 下的模板

数据库文件生成在 03-仿真库/01-数据库/04-共享资源/trend_invest.db,已加入 .gitignore,不进版本库。

延伸阅读