配置指南¶
StockDataMaster 默认读取根目录 config.json,并在加载配置时自动读取代码库根目录 .env。推荐把真实凭据放在 .env,不要写入 config.json。
快速配置¶
复制模板:
编辑 .env:
TUSHARE_TOKEN=你的Tushare Token
XTQUANT_QMT_PATH=
XTQUANT_ACCOUNT=
STOCKDATAMASTER_LOG_LEVEL=INFO
STOCKDATAMASTER_LOG_FILE=logs/data_master.log
.env 已被 .gitignore 忽略,不应提交到 Git。
配置优先级¶
同一个配置项存在多个来源时,优先级从高到低为:
- 系统环境变量
- 根目录
.env config.json
这个顺序适合本地开发和 CI/CD 共用:本地使用 .env,CI 使用平台密钥或环境变量临时覆盖。
支持的环境变量¶
| 环境变量 | 覆盖配置 | 说明 |
|---|---|---|
TUSHARE_TOKEN |
data_sources.tushare.token |
Tushare 访问 token |
BAOSTOCK_API_KEY |
data_sources.baostock.api_key |
Baostock 0.9.x API Key(留空则匿名访问) |
XTQUANT_QMT_PATH |
data_sources.xtquant.qmt_path |
QMT 客户端路径 |
XTQUANT_ACCOUNT |
data_sources.xtquant.account |
QMT 账号 |
STOCKDATAMASTER_LOG_LEVEL |
logging.level |
日志级别 |
STOCKDATAMASTER_LOG_FILE |
logging.file |
日志文件路径 |
Demo Key 说明¶
config.json 中保留的 Tushare token 是已吊销 demo key,仅用于展示配置结构。实际使用时请通过 .env 或系统环境变量提供自己的 token。
示例配置文件¶
config.example.json 展示了可提交的配置形态,其中 token 使用 ${TUSHARE_TOKEN} 占位。真实本地配置可以保留 config.json 的结构,再用 .env 覆盖敏感值。
Baostock 0.9.x 说明¶
新版 Baostock(0.9.x,已锁定 baostock==0.9.1)收紧了访问格式与行为,系统已统一适配:
- API Key(可选):如持有 Baostock API Key,可通过
.env的BAOSTOCK_API_KEY或config.json的data_sources.baostock.api_key提供,登录前自动注入;留空则匿名访问,功能不受影响。 - 复权类型归一化:内部统一映射为 Baostock 接受的
'1'(后复权)/'2'(前复权)/'3'(不复权)。 - 错误可读化:登录/查询错误码显式校验,对账号激活、权限不足、登录数超限等错误补充中文可读提示,便于排查。
- 自动降级:Baostock 故障时按数据源优先级自动降级到 Mootdx,不阻塞主流程。