返回顶部
b

baostockBaoStock数据

BaoStock 免费A股数据平台 - 支持K线、财务数据、行业分类查询,无需注册即可使用。

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.3
安全检测
已通过
711
下载量
免费
免费
3
收藏
概述
安装方式
版本历史

baostock

BaoStock(免费A股数据平台)

BaoStock 是一个免费的开源中国A股证券数据平台。无需注册或API Key,返回 pandas.DataFrame。

安装

bash
pip install baostock --upgrade

验证安装:

bash
python3 -c import baostock as bs; lg = bs.login(); print(lg.error_msg); bs.logout()

预期输出:login success!。

基本用法

每个会话必须以 bs.login() 开始,以 bs.logout() 结束:

python
import baostock as bs
import pandas as pd

登录系统

lg = bs.login()

... 在此执行数据查询 ...

登出系统

bs.logout()

使用 .get_data() 从查询结果中获取DataFrame:

python
rs = bs.queryallstock()
df = rs.get_data()

核心API

1. queryallstock — 获取全部证券列表

获取指定交易日的全部股票/指数代码。

python

获取指定日期所有证券代码


rs = bs.queryallstock(day=2024-01-02)
df = rs.get_data()

返回字段: code(证券代码), tradeStatus(交易状态), code_name(证券名称)

  • - day — 日期字符串 YYYY-MM-DD(默认今天)。非交易日返回空DataFrame。

2. queryhistorykdataplus — K线数据

获取历史K线数据(开高低收量 + 指标)。

python

获取工商银行日K线数据


rs = bs.queryhistorykdataplus(
sh.601398,
date,code,open,high,low,close,volume,amount,pctChg,
start_date=2024-01-01,
end_date=2024-06-30,
frequency=d, # 频率: d(日线), w(周线), m(月线), 5/15/30/60(分钟线)
adjustflag=3 # 复权: 1(后复权), 2(前复权), 3(不复权,默认)
)
df = rs.get_data()

参数说明:

  • - code — 股票代码,格式 sh.600000 或 sz.000001
  • fields — 逗号分隔的字段名(见下方)
  • startdate / enddate — YYYY-MM-DD 格式
  • frequency — d(日线), w(周线), m(月线), 5/15/30/60(分钟线)。指数无分钟级数据。
  • adjustflag — 1(后复权), 2(前复权), 3(不复权,默认)

日线可用字段:

date(日期), code(证券代码), open(开盘价), high(最高价), low(最低价), close(收盘价), preclose(昨收价), volume(成交量), amount(成交额), adjustflag(复权标志), turn(换手率), tradestatus(交易状态), pctChg(涨跌幅), peTTM(滚动市盈率), pbMRQ(市净率), psTTM(滚动市销率), pcfNcfTTM(滚动市现率), isST(是否ST)

分钟线可用字段:

date(日期), time(时间), code(证券代码), open(开盘价), high(最高价), low(最低价), close(收盘价), volume(成交量), amount(成交额), adjustflag(复权标志)

3. querytradedates — 交易日历

python

获取指定范围的交易日历


rs = bs.querytradedates(startdate=2024-01-01, enddate=2024-12-31)
df = rs.get_data()

返回字段: calendardate(日历日期), istrading_day(是否交易日)

4. querystockindustry — 行业分类

python

获取全部股票行业分类


rs = bs.querystockindustry()
df = rs.get_data()

返回字段: updateDate(更新日期), code(证券代码), code_name(证券名称), industry(行业), industryClassification(行业分类)

5. querystockbasic — 股票基本信息

python

获取指定股票基本信息


rs = bs.querystockbasic(code=sh.601398)
df = rs.get_data()

返回字段: code(证券代码), code_name(证券名称), ipoDate(上市日期), outDate(退市日期), type(类型), status(状态)

  • - type — 1 股票, 2 指数, 3 其他
  • status — 1 上市, 0 退市

6. querydividenddata — 分红信息

python

获取指定股票分红数据


rs = bs.querydividenddata(code=sh.601398, year=2023, yearType=report)
df = rs.get_data()

  • - yearType — report(报告期) 或 operate(实施期)

7. 财务数据(季度)

盈利能力

python

获取盈利能力指标(ROE、净利润率、毛利率等)


rs = bs.queryprofitdata(code=sh.601398, year=2023, quarter=4)
df = rs.get_data()

营运能力

python

获取营运能力指标(存货周转率、应收账款周转率等)


rs = bs.queryoperationdata(code=sh.601398, year=2023, quarter=4)
df = rs.get_data()

成长能力

python

获取成长能力指标(营收同比增长、净利润同比增长等)


rs = bs.querygrowthdata(code=sh.601398, year=2023, quarter=4)
df = rs.get_data()

偿债能力

python

获取偿债能力指标(流动比率、速动比率等)


rs = bs.querybalancedata(code=sh.601398, year=2023, quarter=4)
df = rs.get_data()

现金流

python

获取现金流数据


rs = bs.querycashflow_data(code=sh.601398, year=2023, quarter=4)
df = rs.get_data()

杜邦分析

python

获取杜邦分析数据(ROE分解:利润率×资产周转率×权益乘数)


rs = bs.querydupontdata(code=sh.601398, year=2023, quarter=4)
df = rs.get_data()

8. 指数数据

指数成分股

python

获取沪深300成分股


rs = bs.queryhs300stocks()
df = rs.get_data()

获取上证50成分股

rs = bs.querysz50stocks() df = rs.get_data()

获取中证500成分股

rs = bs.queryzz500stocks() df = rs.get_data()

完整示例: 下载日K线数据并保存为CSV

python
import baostock as bs
import pandas as pd

登录系统

bs.login()

获取贵州茅台2024年日K线数据(后复权)

rs = bs.queryhistorykdataplus( sh.600519, date,code,open,high,low,close,volume,amount,pctChg,peTTM, start_date=2024-01-01, end_date=2024-12-31, frequency=d, adjustflag=2 # 后复权 ) df = rs.get_data()

保存到CSV文件

df.tocsv(kweichowmoutai_2024.csv, index=False) print(df.head())

登出系统

bs.logout()

股票代码格式

  • - 上海证券交易所: sh.600000, sh.601398
  • 深圳证券交易所: sz.000001, sz.300750
  • 北京证券交易所: bj.430047
  • 指数: sh.000001(上证综指), sh.000300(沪深300)

使用技巧

  • - 无需注册或API Key — 直接调用 bs.login() 即可开始。
  • 长时间不活动会话可能超时 — 重新调用 bs.login() 即可。
  • 非线程安全 — 并行下载请使用 multiprocessing(多进程),而非threading(多线程)。

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 baostock-1776168028 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 baostock-1776168028 技能

通过命令行安装

skillhub install baostock-1776168028

下载

⬇ 下载 baostock v1.0.3(免费)

文件大小: 10.31 KB | 发布时间: 2026-4-15 10:55

v1.0.3 最新 2026-4-15 10:55
**Demo project files added for easier usage demonstration.**

- Added `demo_project/README.md` and `demo_project/demo.py` as example/demo files.
- No changes to core functionality.
- Provides sample code and usage instructions for new users.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部