数据获取
数据获取
Jiuhuang提供便捷的数据获取接口,支持多种数据源和数据类型。
### 初始化
```pythonfrom jiuhuang.data import JiuhuangData, DataTypes
# 方式一:使用环境变量(推荐)jh = JiuhuangData()
# 方式二:直接传入参数jh = JiuhuangData(api_url="https://data.jiuhuang.xyz", api_key="你的API KEY")单一股票数据获取
# 单一股票数据获取(前复权)stock_price = jh.get_data( DataTypes.STOCK_ZH_A_HIST_D_QFQ, # 前复权 start="2025-01-01", end="2026-02-06", symbol="000001",)多只股票数据获取
# 多只股票数据获取symbols = ["000568", "000651", "000725", "000776", "000895"]stock_price = jh.get_data( DataTypes.STOCK_ZH_A_HIST_QFQ, # 前复权 start="2025-01-01", end="2026-02-06", symbol=",".join(symbols), # 多只股票使用英文逗号分隔)不同时间颗粒度数据
jiuhuang 通过统一的 start 和 end 参数来筛选数据范围,不同数据源时间颗粒度不同:
from jiuhuang.data import JiuhuangData, DataTypesfrom datetime import datetime, timedelta
jh = JiuhuangData()
# 日数据,使用时间格式 YYYY-MM-DDstock_price = jh.get_data( DataTypes.STOCK_ZH_A_HIST_QFQ, start="2025-01-01", end="2026-02-06", symbol="000568",)
# 月数据,使用时间格式 YYYY-MMcpi = jh.get_data( DataTypes.MACRO_CHINA_CPI, start="2025-01", end="2026-02",)
# 分钟级数据,使用时间格式 YYYY-MM-DD HH:MM:SSnow = datetime.now()price_realtime = jh.get_data( DataTypes.STOCK_ZH_A_SPOT, start=now - timedelta(minutes=10).strftime("%Y-%m-%d %H:%M:%S"), end=now.strftime("%Y-%m-%d %H:%M:%S"), symbol="000001",)搜索和描述数据
中文语义搜索
# 中文名搜索results = jh.search_data("A股 股价 前复权", top_n=5)print(results)数据详细说明
# 获取数据类型详细说明(包含参数说明和代码示例)description_md = jh.describe_data(DataTypes.STOCK_ZH_A_HIST_D_QFQ)print(description_md)describe_data 返回的内容包括:
- 接口描述
- 输入参数说明
- 输出参数(字段)说明
- 代码示例
DataTypes 枚举类
jiuhuang 兼容了 akshare 多种数据类型,DataTypes(枚举类)对应了 ak.xxxx()。
例如:
akshare.stock_zh_a_hist()对应DataTypes.STOCK_ZH_A_HIST- 不同点在于:akshare 通过
adjust参数控制复权方式,而 jiuhuang 通过DataTypes有无后缀进行区分(如_QFQ表示前复权)
常见数据类型
| DataTypes | 说明 |
|---|---|
STOCK_ZH_A_HIST | A股股价日数据(不复权) |
STOCK_ZH_A_HIST_QFQ | A股股价日数据(前复权) |
STOCK_ZH_A_HIST_HFQ | A股股价日数据(后复权) |
STOCK_ZH_A_SPOT | 股票分钟级实时数据 |
STOCK_INDIVIDUAL_INFO_EM | 个股信息 |
MACRO_CHINA_CPI | 中国CPI数据 |
数据字段
jiuhuang 输出的 DataFrame 都是字段命名标准化后的英文字段名:
| 字段 | 描述 |
|---|---|
date | 日期 |
symbol | 股票代码 |
open | 开盘价 |
high | 最高价 |
low | 最低价 |
close | 收盘价 |
volume | 成交量 |
amount | 成交额 |
amplitude | 振幅 |
pct_chg | 涨跌幅 |
chg | 涨跌额 |
turnover_rate | 换手率 |