baostock
BaoStock 免费A股数据平台 - 支持K线、财务数据、行业分类查询,无需注册即可使用。
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/coderwpf/baostockBaoStock(免费A股数据平台)
BaoStock 是一个免费的开源中国A股证券数据平台。无需注册或API Key,返回 pandas.DataFrame。
安装
pip install baostock --upgrade
验证安装:
python3 -c "import baostock as bs; lg = bs.login(); print(lg.error_msg); bs.logout()"
预期输出:login success!。
基本用法
每个会话必须以 bs.login() 开始,以 bs.logout() 结束:
import baostock as bs
import pandas as pd
# 登录系统
lg = bs.login()
# ... 在此执行数据查询 ...
# 登出系统
bs.logout()
使用 .get_data() 从查询结果中获取DataFrame:
rs = bs.query_all_stock()
df = rs.get_data()
核心API
1. query_all_stock — 获取全部证券列表
获取指定交易日的全部股票/指数代码。
# 获取指定日期所有证券代码
rs = bs.query_all_stock(day="2024-01-02")
df = rs.get_data()
# 返回字段: code(证券代码), tradeStatus(交易状态), code_name(证券名称)
- day — 日期字符串
YYYY-MM-DD(默认今天)。非交易日返回空DataFrame。
2. query_history_k_data_plus — K线数据
获取历史K线数据(开高低收量 + 指标)。
# 获取工商银行日K线数据
rs = bs.query_history_k_data_plus(
"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 — 逗号分隔的字段名(见下方)
- start_date / end_date —
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. query_trade_dates — 交易日历
# 获取指定范围的交易日历
rs = bs.query_trade_dates(start_date="2024-01-01", end_date="2024-12-31")
df = rs.get_data()
# 返回字段: calendar_date(日历日期), is_trading_day(是否交易日)
4. query_stock_industry — 行业分类
# 获取全部股票行业分类
rs = bs.query_stock_industry()
df = rs.get_data()
# 返回字段: updateDate(更新日期), code(证券代码), code_name(证券名称), industry(行业), industryClassification(行业分类)
5. query_stock_basic — 股票基本信息
# 获取指定股票基本信息
rs = bs.query_stock_basic(code="sh.601398")
df = rs.get_data()
# 返回字段: code(证券代码), code_name(证券名称), ipoDate(上市日期), outDate(退市日期), type(类型), status(状态)
- type —
1股票,2指数,3其他 - status —
1上市,0退市
6. query_dividend_data — 分红信息
# 获取指定股票分红数据
rs = bs.query_dividend_data(code="sh.601398", year="2023", yearType="report")
df = rs.get_data()
- yearType —
report(报告期) 或operate(实施期)
7. 财务数据(季度)
盈利能力
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-coderwpf-baostock": {
"enabled": true,
"auto_update": true
}
}
}Related Skills
pywencai
同花顺问财自然语言数据查询工具 - 使用中文自然语言查询A股、指数、基金、港美股、可转债等市场数据。
tqsdk
天勤量化TqSdk - 开源Python期货/期权交易SDK,提供实时行情、回测和实盘交易功能。
rqalpha
RQAlpha 米筐开源事件驱动回测框架 - 支持A股和期货,模块化架构,可自由扩展。
tushare
Tushare Pro 金融大数据平台 - 提供A股、指数、基金、期货、债券、宏观数据,Token认证方式访问。
backtrader
Backtrader 开源量化回测框架 - 支持多数据源、多策略、多周期回测与实盘交易,纯Python实现。