[投资]akshare库包(etf篇)

1. 获取所有场内ETF基金列表

使用 fund_etf_category_sina() 函数,从新浪财经获取ETF列表数据(包含代码、名称、净值、涨跌幅等):

python 复制代码
import akshare as ak

# 获取所有ETF列表
etf_list = ak.fund_etf_category_sina()
print(etf_list)

输出字段示例

  • symbol: ETF代码(如 sh510300
  • name: ETF名称
  • nav: 单位净值
  • change_percent: 涨跌幅

2. 获取指定ETF的日级别数据

使用 fund_em_etf_fund_daily() 函数,从东方财富获取日线数据:

python 复制代码
# 示例:获取沪深300ETF(代码:510300)的日线数据
daily_data = ak.fund_em_etf_fund_daily(symbol="510300")
print(daily_data)

输出字段

  • 日期: 交易日期
  • 单位净值: 净值
  • 累计净值: 复权净值
  • 涨跌幅: 百分比

3. 获取指定ETF的分钟级别数据

使用 fund_etf_hist_min_em() 函数,从东方财富获取分钟级数据:

python

复制

ini 复制代码
# 示例:获取沪深300ETF(代码:sh510300)的1分钟数据
minute_data = ak.fund_etf_hist_min_em(
    symbol="sh510300",  # 需带市场前缀(sh/sz)
    period="1",         # 1/5/15/30/60分钟
    adjust="qfq",       # qfq前复权/hfq后复权
    start_date="2023-01-01",
    end_date="2023-12-31"
)
print(minute_data)

输出字段

  • 时间: 分钟时间戳
  • 开盘价/收盘价/最高价/最低价
  • 成交量/成交额

完整流程示例

python

复制

ini 复制代码
import akshare as ak

# 1. 获取ETF列表
etf_list = ak.fund_etf_category_sina()

# 2. 遍历获取每个ETF的历史数据
for index, row in etf_list.iterrows():
    symbol = row["symbol"]  # 如 'sh510300'
    code = symbol[2:]       # 提取纯数字代码 '510300'
    
    # 获取日线数据
    daily = ak.fund_em_etf_fund_daily(symbol=code)
    
    # 获取分钟数据(需带市场前缀)
    minute = ak.fund_etf_hist_min_em(symbol=symbol, period="1")

注意事项

  1. 代码前缀 :分钟数据需指定市场前缀(shsz),日线数据一般用纯数字代码。
  2. 数据频率 :部分接口可能有访问频率限制,建议添加 time.sleep(1) 避免被封。
  3. 数据更新 :确保使用最新版 akshare(更新命令:pip install --upgrade akshare)。

如果需要进一步优化代码或处理异常,请告知具体需求!

相关推荐
IT_陈寒2 小时前
Vue的双向绑定把我坑惨了,原来这个场景不能用
前端·人工智能·后端
31535669134 小时前
DeepSeek Harness 发布后,我没急着跑 Demo,先把 `.agents/` 翻了一遍
前端·后端·github
Nturmoils4 小时前
不在公司,也能连回办公电脑:用 Natapp 打通 Windows 远程桌面
后端
LEE4 小时前
AI Agent 都在疯狂加功能,它说:我全砍了
前端·后端
桦说编程4 小时前
记一次 Coding Agent 改动带来的bug与启示
后端·agent·vibecoding
302wanger4 小时前
Mole-在终端里给Mac做减法
后端
一心只读圣贤书4 小时前
本地后端环境与前端联调总结(前端小白视角)
后端
杨利杰YJlio5 小时前
KB5121003更新详解:安全启动证书、AI组件、资源管理器与安装验证
前端·javascript·后端
忙碌碌粒粒橙5 小时前
《用户付一次钱,你的系统为什么处理了两遍:Webhook 重复投递避坑指南》
后端
数字化探索者笔记5 小时前
从零搭建:VMware 银河麒麟V10部署 OceanBase 4.2.5 企业版集中式数据库
后端