【Python 量化取数指南 #11】Python 拉 ETF 数据:宽基行业一把抓

发布时间:2026/9/26 7:14:28
【Python 量化取数指南 #11】Python 拉 ETF 数据:宽基行业一把抓 【Python 量化取数指南 #11】Python 拉 ETF 数据宽基行业一把抓系列《Python 量化取数指南》连载项目 · 纯 GET 取数 · 仅依赖 requests适用想用 Python 拉 ETF 行情与清单、做宽基/行业组合取数的人。1. 你将得到什么ETF 2 类端点的完整代码ETF 实时列表、LOF 列表一个把「宽基/行业/主题」按名称过滤的小示例一个离线run_check()不填 token 也能验证逻辑2. 本篇取数约定ETF 实时列表/jh/hq/etflistLOF 列表/jh/hq/loflist指数代码列表配 ETF 跟踪标的/hz/list/hszs请求GET https://api.zhituapi.compath?token你的token返回多为 list盘中才有实时价休市为收盘快照3. 核心模板全系列复用importtime,json,requests BASEhttps://api.zhituapi.comTOKEN你的tokendef_get(path,paramsNone,timeout15,retry3,backoff1.5):paramsdict(paramsor{})params[token]TOKEN urlBASEpath lastNoneforiinrange(retry):try:rrequests.get(url,paramsparams,timeouttimeout)ifr.status_code!200:lastfHTTP{r.status_code}{r.text[:120]}time.sleep(backoff*(i1));continuetry:returnr.json(),NoneexceptValueError:lastf非JSON响应:{r.text[:120]}returnNone,lastexceptrequests.RequestExceptionase:laststr(e);time.sleep(backoff*(i1))returnNone,lastdef_hit_key(d,*keys,defaultNone):ifnotisinstance(d,dict):returndefaultforkinkeys:ifkindandd[k]notin(None,,[]):returnd[k]returndefaultdef_to_float(x,defaultfloat(nan)):try:returnfloat(x)except(TypeError,ValueError):returndefault4. 跑通示例拉 ETF 按关键词过滤defdemo_etf(keyword沪深300):data,err_get(/jh/hq/etflist)iferr:print(ETF列表失败:,err);returnitemsdataifisinstance(data,list)else(data.get(data)or[])print(f ETF总数{len(items)}含「{keyword}」的:)n0foritin(itemsor[]):name_hit_key(it,name,mc,基金简称)ifnameandkeywordinstr(name):code_hit_key(it,code,dm)price_to_float(_hit_key(it,price,zxj,收盘价,nav))print(f{code}{name}价{price})n1ifn5:breakdefrun_check():synth[{code:510300.SH,name:沪深300ETF,price:3.9}]hit[xforxinsynthif沪深300inx[name]]print(f [run_check] 合成命中{len(hit)}条:{hit[0][name]})if__name____main__:demo_etf(沪深300)run_check()返回字段说明ETF list 每项含code/dm代码、name/mc简称、price/zxj/nav价/净值、amount/cje成交额等。字段名三套并存统一_hit_key。5. 坑与注意事项ETF vs LOF/jh/hq/etflist是 ETF/jh/hq/loflist是 LOF别混。价 vs 净值实时给「价」盘后给「净值/IOPV」字段可能不同先print核对。成交额看流动性选 ETF 重点看amount/cje太小流动性差。跟踪标的ETF 跟踪某指数指数代码走/hz/list/hszs第 2 篇。休市为快照非交易时段价是上一交易日别当实时。字段名三套price/zxj/收盘价用_hit_key。6. 常见报错速查报错 / 现象原因处理429轮询太频降频 缓存返回空无数据换交易日价/净值不符字段混print(data)看真实 keyKeyError字段名不符print(data)看真实 key7. 小结与下一篇预告小结ETF 用/jh/hq/etflist、LOF 用/jh/hq/loflist核心是按name过滤宽基/行业 看amount判流动性跟踪标的查/hz/list/hszs。下一篇计划写 #12《Python 取北交所与指数小众市场接口实测》用北交所与指数端点补齐小众市场的取数。8. 免责声明本文仅演示公开数据接口的用法所有代码示例均为演示数据不构成任何投资建议实际返回字段以接口文档与你的证书权限为准。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询