data_master — 主接口¶
StockDataMaster 是整个系统对外暴露的单例入口,封装多数据源、缓存、健康检测的统一访问。
data_master
¶
StockDataMaster主数据接口
提供统一的股票数据访问接口,集成多数据源、缓存、健康检测等功能
StockDataMaster
¶
股票数据主数据接口
初始化StockDataMaster
参数:
| 名称 | 类型 | 描述 | 默认 |
|---|---|---|---|
config_path
|
Optional[str]
|
配置文件路径 |
None
|
源代码位于: data_master.py
get_kline
¶
get_kline(code: str, freq: str = 'd', start_date: Optional[str] = None, end_date: Optional[str] = None, count: Optional[int] = None, adjust: str = 'qfq', use_cache: bool = True) -> Optional[DataFrame]
获取K线数据(统一接口)
参数:
| 名称 | 类型 | 描述 | 默认 |
|---|---|---|---|
code
|
str
|
股票代码,如'600519'或'sh.600519' |
必需 |
freq
|
str
|
频率 'd'=日,'w'=周,'m'=月,'5m'=5分钟,'15m'=15分钟,'30m'=30分钟,'60m'=60分钟 |
'd'
|
start_date
|
Optional[str]
|
开始日期 'YYYY-MM-DD' |
None
|
end_date
|
Optional[str]
|
结束日期 'YYYY-MM-DD' |
None
|
count
|
Optional[int]
|
获取数量(从最新往前) |
None
|
adjust
|
str
|
复权类型,'qfq'=前复权(统一使用) |
'qfq'
|
use_cache
|
bool
|
是否使用缓存(仅对日线有效) |
True
|
返回:
| 类型 | 描述 |
|---|---|
Optional[DataFrame]
|
DataFrame,包含date,open,high,low,close,volume,amount列 |
源代码位于: data_master.py
126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 | |
get_valuation
¶
get_valuation(code: str, start_date: Optional[str] = None, end_date: Optional[str] = None) -> Optional[DataFrame]
获取估值数据
参数:
| 名称 | 类型 | 描述 | 默认 |
|---|---|---|---|
code
|
str
|
股票代码 |
必需 |
start_date
|
Optional[str]
|
开始日期 |
None
|
end_date
|
Optional[str]
|
结束日期 |
None
|
返回:
| 类型 | 描述 |
|---|---|
Optional[DataFrame]
|
DataFrame,包含pe_ttm,pb,ps_ttm等估值指标 |
源代码位于: data_master.py
get_tick
¶
获取实时tick数据
参数:
| 名称 | 类型 | 描述 | 默认 |
|---|---|---|---|
code
|
str
|
股票代码 |
必需 |
返回:
| 类型 | 描述 |
|---|---|
Optional[Dict[str, Any]]
|
实时行情字典 |
源代码位于: data_master.py
get_health_status
¶
get_cache_statistics
¶
cleanup_cache
¶
force_switch_source
¶
强制切换数据源
参数:
| 名称 | 类型 | 描述 | 默认 |
|---|---|---|---|
usage
|
str
|
用途 'kline'/'valuation'/'tick' |
必需 |
target_source
|
str
|
目标数据源名称 |
必需 |
返回:
| 类型 | 描述 |
|---|---|
bool
|
是否成功 |
get_stock_name
¶
获取股票名称 - 四级查找链
L1: 内存缓存 dict L2: baostock query_stock_basic() (免费兜底,数据最全含退市股) L3: xtquant.get_stock_name() (QMT用户快速查询) L4: tushare pro.stock_basic() (付费用户补充)
参数:
| 名称 | 类型 | 描述 | 默认 |
|---|---|---|---|
code
|
str
|
股票代码,支持 '600519', 'sh.600519', '600519.SH' 格式 |
必需 |
返回:
| 类型 | 描述 |
|---|---|
str
|
股票名称字符串,所有级别都失败时返回代码本身 |
源代码位于: data_master.py
warmup_stock_names
¶
预热股票名称缓存 - 从 Tushare 批量获取全市场股票名称, 写入内存缓存和 SQLite 持久化缓存。
调用时机:初始化后、盘前准备阶段、或缓存为空时。
返回:
| 类型 | 描述 |
|---|---|
int
|
缓存的股票名称数量 |
源代码位于: data_master.py
close
¶
关闭DataMaster,清理资源
源代码位于: data_master.py
get_data_master
¶
get_data_master(config_path: Optional[str] = None) -> StockDataMaster
获取全局StockDataMaster实例(单例)
参数:
| 名称 | 类型 | 描述 | 默认 |
|---|---|---|---|
config_path
|
Optional[str]
|
配置文件路径 |
None
|
返回:
| 类型 | 描述 |
|---|---|
StockDataMaster
|
StockDataMaster实例 |