十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

yfinance快速上手指南:3行Python获取股价与财报数据

yfinance快速上手指南:3行Python获取股价与财报数据 yfinance快速上手指南3行Python获取股价与财报数据【免费下载链接】yfinanceDownload market data from Yahoo! Finances API项目地址: https://gitcode.com/GitHub_Trending/yf/yfinanceyfinance 是一个 Python 开源库通过 Yahoo Finance 的公开接口获取市场行情与财务数据。一行Ticker(MSFT)就能拿到公司基本信息、股价历史、财报、期权链还可以批量下载多只股票、按行业筛选股票。适合做量化回测、投资研究或数据分析的 Python 新手也适合需要把行情数据接入自己脚本的开发者。它解决什么问题自己抓 Yahoo Finance 网页或接口要处理反爬、字段解析、跨时区时间戳、复权价格这些琐事而且不同市场的数据质量问题各不相同。yfinance 把这些封装成了 Python 对象返回的是可以直接交给 pandas 处理的 DataFrame历史价格自动做复权还支持自动修复上游数据错误。对新手来说最直观的价值是不写任何 HTTP 请求代码几行脚本就能把数据落盘。核心功能速览入口用途典型场景Ticker单只标的的全部数据看个股信息、财报、期权链Tickers多只标的批量封装同时处理一篮子股票download批量下载行情表回测前准备数据Search搜索报价和新闻找代码、看资讯Sector/Industry行业与板块信息按行业挑股票Screener条件选股按市盈率等条件筛选WebSocket实时行情流盯盘、监控告警以上入口均在 yfinance/init.py 中导出import yfinance as yf后直接可用。三步跑通最小可用流程 安装、创建对象、取数据总共三步。建议先建一个虚拟环境避免依赖冲突。pip install yfinance然后在 Python 里获取单只股票的数据import yfinance as yf t yf.Ticker(MSFT) t.info # 公司基本信息 t.history(period1mo) # 近一个月日线返回 pandas DataFrame t.quarterly_income_stmt # 季度利润表再批量下载多只股票data yf.download([MSFT, AAPL, GOOG], period1mo)download支持空格分隔的字符串写法如yf.download(SPY AAPL, period1mo)参考示例 reference/examples/download.py。返回的 DataFrame 可直接.to_csv()落盘供后续分析使用。进阶用法搜索、行业与实时数据关键词搜索比直接猜代码更稳。搜代码、看新闻各取一个属性即可quotes yf.Search(AAPL, max_results10).quotes news yf.Search(Google, news_count10).news按行业筛选适合做横向比较tech yf.Sector(technology) tech.top_companies # 该行业头部公司实时数据用WebSocket和AsyncWebSocket同步/异步两套适合写监控脚本而不是循环拉取。网络不稳或需要代理时用全局配置控制重试和代理yf.config.network.retries 2 # 指数退避重试1s、2s、4s... yf.config.network.proxy PROXY完整配置项见 advanced/config.rst。技术亮点自动修复价格数据Yahoo 返回的数据并不总是干净的。非美股尤其常见几类问题分红后Adj Close没复权、拆股后价格没调整、缺失整行或成交量、个别市场价格被放大 100 倍。yfinance 在history()和download()中提供了repairTrue参数开启后会尝试自动修复这些问题并在结果表里新增一列Repaired?标记哪些行被修过。修复范围包括缺失分红复权有分红记录但Adj Close等于Close时手动补上分红调整缺失拆股复权检测到拆股事件但前一日价格未调整时应用拆股比例数据缺失日线数据损坏时用 1 小时等更细粒度的数据重建货币错乱修复后以Ticker.history_metadata[currency]为准而不是Ticker.infoyfinance价格修复自动修正100倍放大错误做跨市场、长周期回测时这个功能能省掉大量人工核对价格的功夫。细节见 advanced/price_repair.rst。使用边界数据合规要注意两点需要说在前面README 里反复强调过yfinance 与 Yahoo 公司无关没有官方背书只是使用其公开接口的开源工具定位是研究与教育用途。数据用途受 Yahoo 服务条款约束接口声明仅供个人使用。商业分发数据前建议自行确认权利边界。隐私方面无需担心库本身不采集本地任何信息请求走的是公开行情接口如果你用代理数据流向由你配置的yf.config.network.proxy决定。参与社区与后续学习项目靠社区排查 bug 和贡献代码流程写在 CONTRIBUTING.md。分支模型如下图参与前可以先对照理解入门后建议按这个顺序深入先看 reference 目录 的 API 文档和示例脚本reference/examples/ 下按功能分文件再按需阅读 advanced 章节 里的缓存、日志、多层级列等主题。遇到问题时用enable_debug_mode()打开调试输出配合yf.config.debug.hide_exceptions False查看原始异常定位效率会高很多。 下一步装好库选一只你熟悉的股票把history(period1y)的结果存成 CSV再从Ticker属性里挑一个你还没用过的字段读出来。数据到手后yfinance 能做什么就取决于你的问题了。【免费下载链接】yfinanceDownload market data from Yahoo! Finances API项目地址: https://gitcode.com/GitHub_Trending/yf/yfinance创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表