AShareSkill - A股数据获取工具
基于BaoStock数据源的股票数据分析工具,支持获取完整K线数据及各类技术指标。
功能特点
- - 支持多种查询方式:单只股票或股票池批量查询
- 灵活的时间段:支持自定义起始和结束日期
- 多级别K线:日线(d)、周线(w)、月线(m)
- 完整技术指标:
- 均线系统:MA5, MA10, MA20, MA30, MA60, MA120, MA250
- MACD指标:DIF, DEA, MACD柱状
- KDJ指标:K值, D值, J值
- RSI指标:RSI6, RSI12, RSI24
- 布林带(BOLL):上轨, 中轨, 下轨
- CCI指标
- 成交量指标及涨跌幅数据
使用方法
1. 直接调用脚本
CODEBLOCK0
2. 参数说明
| 参数 | 简写 | 说明 | 默认值 |
|---|
| INLINECODE0 | INLINECODE1 | 股票名称或代码(多只股票用逗号分隔) | 与--index二选一 |
| INLINECODE2 |
-i | 指数代码,获取指数成分股(000905中证500,000300沪深300等) | 与--stock二选一 |
|
--start | | 开始日期 (YYYY-MM-DD) | 一年前 |
|
--end | | 结束日期 (YYYY-MM-DD) | 今天 |
|
--freq |
-f | K线级别: d(日线), w(周线), m(月线) | d |
|
--output |
-o | 输出文件名 | 自动生成 |
|
--adjust |
-a | 复权类型: 1(前复权), 2(后复权), 3(不复权) | 3 |
3. 作为Python模块使用
CODEBLOCK1
输出数据字段说明
| 字段名 | 说明 |
|---|
| INLINECODE12 | 股票代码 |
| INLINECODE13 |
股票名称 |
|
date | 交易日期 |
|
open | 开盘价 |
|
high | 最高价 |
|
low | 最低价 |
|
close | 收盘价 |
|
preclose | 前收盘价 |
|
volume | 成交量(股) |
|
amount | 成交额(元) |
|
turn | 换手率 |
|
pctChg | 涨跌幅(%) |
|
peTTM | 滚动市盈率 |
|
pbMRQ | 市净率 |
|
psTTM | 滚动市销率 |
|
pcfNcfTTM | 滚动市现率 |
|
isST | 是否ST股 |
|
均线指标 | |
|
ma5,
ma10,
ma20,
ma30,
ma60,
ma120,
ma250 | 各周期移动平均线 |
|
MACD指标 | |
|
macd_dif,
macd_dea,
macd | DIF线, DEA线, MACD柱状 |
|
KDJ指标 | |
|
kdj_k,
kdj_d,
kdj_j | K值, D值, J值 |
|
RSI指标 | |
|
rsi_6,
rsi_12,
rsi_24 | 6日/12日/24日RSI |
|
布林带 | |
|
boll_upper,
boll_middle,
boll_lower | 上轨, 中轨, 下轨 |
|
CCI指标 | |
|
cci | CCI指标值 |
依赖要求
需要安装以下Python包:
注意事项
- 1. 首次使用时会自动登录BaoStock并加载股票列表
- K线级别说明:
-
d - 日线:每个交易日一条数据
-
w - 周线:每周一条数据(周五收盘)
-
m - 月线:每月一条数据(月末收盘)
- 3. 复权类型说明:
-
1 - 前复权:保持当前价格不变,调整历史价格
-
2 - 后复权:保持历史价格不变,调整当前价格
-
3 - 不复权:原始价格
- 4. 技术指标说明:
- 均线需要足够的历史数据才能计算
- MA120/MA250等长期均线需要至少120/250个交易日数据
- MACD、KDJ等指标基于默认参数计算
- 5. 支持的指数成分股查询:
-
000905 - 中证500指数
-
000300 - 沪深300指数
-
000016 - 上证50指数
- 6. 批量获取大量股票数据时(如500只成分股),建议分批处理或增加超时时间
- 数据仅供参考,不构成投资建议
AShareSkill - A股数据获取工具
基于BaoStock数据源的股票数据分析工具,支持获取完整K线数据及各类技术指标。
功能特点
- - 支持多种查询方式:单只股票或股票池批量查询
- 灵活的时间段:支持自定义起始和结束日期
- 多级别K线:日线(d)、周线(w)、月线(m)
- 完整技术指标:
- 均线系统:MA5, MA10, MA20, MA30, MA60, MA120, MA250
- MACD指标:DIF, DEA, MACD柱状
- KDJ指标:K值, D值, J值
- RSI指标:RSI6, RSI12, RSI24
- 布林带(BOLL):上轨, 中轨, 下轨
- CCI指标
- 成交量指标及涨跌幅数据
使用方法
1. 直接调用脚本
bash
单只股票查询
python kimi/ashareskill/scripts/ashareskill.py --stock 贵州茅台 --start 2023-01-01 --end 2024-01-01 --freq d
股票池查询(逗号分隔)
python kimi/ashareskill/scripts/ashareskill.py --stock 贵州茅台,中国平安,宁德时代 --start 2023-01-01 --end 2024-01-01
使用周线数据
python kimi/ashareskill/scripts/ashareskill.py --stock 600519 --start 2022-01-01 --freq w --output mydata.csv
使用月线数据
python kimi/ashareskill/scripts/ashareskill.py --stock 000001 --start 2020-01-01 --freq m
获取指数成分股(如中证500)月线数据
python kimi/ashareskill/scripts/ashareskill.py --index 000905 --start 2024-01-01 --freq m -o zz500.csv
获取沪深300成分股日线数据
python kimi/ashareskill/scripts/ashareskill.py --index 000300 --start 2024-01-01 --freq d -o hs300.csv
2. 参数说明
| 参数 | 简写 | 说明 | 默认值 |
|---|
| --stock | -s | 股票名称或代码(多只股票用逗号分隔) | 与--index二选一 |
| --index |
-i | 指数代码,获取指数成分股(000905中证500,000300沪深300等) | 与--stock二选一 |
| --start | | 开始日期 (YYYY-MM-DD) | 一年前 |
| --end | | 结束日期 (YYYY-MM-DD) | 今天 |
| --freq | -f | K线级别: d(日线), w(周线), m(月线) | d |
| --output | -o | 输出文件名 | 自动生成 |
| --adjust | -a | 复权类型: 1(前复权), 2(后复权), 3(不复权) | 3 |
3. 作为Python模块使用
python
from kimi.ashareskill.scripts.ashareskill import AShareSkill
创建实例
skill = AShareSkill()
获取单只股票数据
df = skill.get
klinedata(
stock_code=sh.600519, # 或 贵州茅台
start_date=2023-01-01,
end_date=2024-01-01,
frequency=d
)
获取多只股票数据
df
pool = skill.getstock
pooldata(
stock_list=[贵州茅台, 中国平安, 宁德时代],
start_date=2023-01-01,
end_date=2024-01-01,
frequency=d
)
保存到文件
skill.save
tocsv(df_pool, output.csv)
输出数据字段说明
股票名称 |
| date | 交易日期 |
| open | 开盘价 |
| high | 最高价 |
| low | 最低价 |
| close | 收盘价 |
| preclose | 前收盘价 |
| volume | 成交量(股) |
| amount | 成交额(元) |
| turn | 换手率 |
| pctChg | 涨跌幅(%) |
| peTTM | 滚动市盈率 |
| pbMRQ | 市净率 |
| psTTM | 滚动市销率 |
| pcfNcfTTM | 滚动市现率 |
| isST | 是否ST股 |
|
均线指标 | |
| ma5, ma10, ma20, ma30, ma60, ma120, ma250 | 各周期移动平均线 |
|
MACD指标 | |
| macd
dif, macddea, macd | DIF线, DEA线, MACD柱状 |
|
KDJ指标 | |
| kdj
k, kdjd, kdj_j | K值, D值, J值 |
|
RSI指标 | |
| rsi
6, rsi12, rsi_24 | 6日/12日/24日RSI |
|
布林带 | |
| boll
upper, bollmiddle, boll_lower | 上轨, 中轨, 下轨 |
|
CCI指标 | |
| cci | CCI指标值 |
依赖要求
需要安装以下Python包:
注意事项
- 1. 首次使用时会自动登录BaoStock并加载股票列表
- K线级别说明:
- d - 日线:每个交易日一条数据
- w - 周线:每周一条数据(周五收盘)
- m - 月线:每月一条数据(月末收盘)
- 3. 复权类型说明:
- 1 - 前复权:保持当前价格不变,调整历史价格
- 2 - 后复权:保持历史价格不变,调整当前价格
- 3 - 不复权:原始价格
- 4. 技术指标说明:
- 均线需要足够的历史数据才能计算
- MA120/MA250等长期均线需要至少120/250个交易日数据
- MACD、KDJ等指标基于默认参数计算
- 5. 支持的指数成分股查询:
- 000905 - 中证500指数
- 000300 - 沪深300指数
- 000016 - 上证50指数
- 6. 批量获取大量股票数据时(如500只成分股),建议分批处理或增加超时时间
- 数据仅供参考,不构成投资建议