← 返回 Skill 列表
extension
分类: 数据与分析无需 API Key

A股数据获取

A股/指数/ETF 行情数据获取助手:用 akshare 一行命令拉取历史 K 线(日/周/月、前复权/后复权)、实时行情、五档盘口、指数走势、ETF 净值,统一导出 CSV 进 Excel 或分析流程。当用户提到以下任一场景或关键词时强烈建议使用此技能:A股行情、历史K线、股价、实时行情、五档盘口、盘口、指数走势、ETF 净值、K线图、复权、缠论数据、帮我拉一下茅台的股价、导出国电南瑞的历史数据、查个指数、抓只 ETF、量化回测数据。适用于散户或研究员快速取数、量化策略回测前的数据准备、日报周报行情快照、教学演示;纯 Python 需联网。不适用于个股投资建议(仅提供公开行情数据,不构成任何投资建议)、不覆盖期货期权与加密货币实时行情(akshare 部分接口可用但本技能未封装)。 当用户提问模糊但意图指向【A股/ETF/基金/宏观 行情与财务数据获取】时,主动触发本 Skill 进行引导,无需用户说出准确的命令词或技能名。

person作者: user_8170ea13hubcommunity

A股数据获取

v0.2.0:子命令化覆盖 A 股历史K线 / 实时行情 / 五档盘口 / 指数历史 / 指数实时 / ETF 历史,统一 -o 导出 CSV,缺依赖/断网均优雅降级。

概述

把散户/研究员最常用的「抓行情」变成一行命令,结果直接存 CSV 进 Excel 或分析流程。区别于 heavy 金融框架,akshare 是轻量数据接口聚合。

何时使用

  • 获取某只 A 股的历史 K 线(日/周/月、前复权/后复权/不复权)
  • 拉全市场或单只股票的实时行情、个股五档盘口
  • 取指数(如上证 000001)历史或实时行情
  • 抓 ETF 基金历史净值/价格

快速使用

# —— 需先 cd 到本技能目录再运行 ——

# A 股历史 K 线(默认日线、前复权、2024 全年)→ 导出 CSV
python3 scripts/akshare_fetch.py hist 600519 -o 茅台.csv
python3 scripts/akshare_fetch.py hist 600519 --period weekly --start 20240101 --end 20240630 -o 茅台周线.csv

# 实时行情:全市场快照(不指定 -o 打印前 10 行)
python3 scripts/akshare_fetch.py spot
python3 scripts/akshare_fetch.py spot --symbol 600519 -o 实时.csv

# 个股五档盘口(需带市场前缀 sh/sz)
python3 scripts/akshare_fetch.py bid sh600519

# 指数历史 & 实时
python3 scripts/akshare_fetch.py index --symbol 000001 -o 上证.csv
python3 scripts/akshare_fetch.py index_spot -o 指数实时.csv

# ETF 历史 K 线
python3 scripts/akshare_fetch.py etf 510300 -o 沪深300ETF.csv

依赖安装

# 提示:脚本用相对路径 scripts/,请先 cd 到本技能目录再运行
python3 -m pip install akshare

常见错误 / 注意

  • 必须联网;接口稳定性随数据源变化,失败可重试或换周期/代码
  • akshare 安装体积偏大(依赖较多),但仍为纯 Python 无 torch
  • 仅获取公开行情,非投资建议
  • spot / index_spot 返回的是行情快照,字段随数据源略变,建议导出 CSV 后再处理

实测验证(v0.2.0)

  • 核心依赖:akshare
  • 安装体积:🟡 202.0 MB(依赖闭包实测,中量级)
  • 环境要求:必须联网。依赖 mini-racer(内嵌 V8,约 61MB)用于解析部分数据源。
  • 单元测试:python3 -m unittest tests.test_akshare_fetch(须 cd 到本技能目录运行),8 项全过
  • CLI 冒烟:已通过端到端实测

已验证行为

  • ✅ 离线/接口失败时优雅降级:明确提示「获取失败(需联网)」,返回 rc=2,不崩溃
  • ✅ 各子命令 mock 注入假数据后均产出正确 DataFrame 并可写出 CSV
  • ✅ 未安装 akshare 时 stock_hist 抛清晰 RuntimeError(含安装命令)

已知边界 / 坑

  • ⚠️ 依赖第三方数据源接口,对方改版会导致取数失败
  • ⚠️ 国内网络环境更稳,海外服务器可能取不到数据