关于 earnings-preview
面向金融研究者和投资者的财报前分析 Skill,使用 yfinance 汇总即将发布的财报日期、市场预期、过往 EPS 准确度、分析师情绪和公司背景,并提示关注事项及数据局限,不提供投资建议。
主要功能
- 01财报日期与发布时间
- 02EPS 和营收市场预期
- 03历史 EPS 超预期或不及预期记录
- 04分析师评级与目标价
- 05财务背景与观察要点
适用场景
- 01准备财报电话会议
- 02对照预期与过往 EPS 惊喜幅度
- 03财报发布前了解分析师情绪
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ himself65/ finance-skills --skill earnings-preview安装后在 Claude Code 中输入/earnings-preview确认已加载。
附带文件README.mdreferences/api_reference.md
详细介绍
财报预览技能
如果你的宿主尚未执行以下 shell 探测(例如,在 Codex 中),请在选择配置路径前,使用其 shell 工具运行 ! 包裹的命令。请使用实际输出;如果无法访问 shell,请说明这一限制。
使用 yfinance 通过 Yahoo Finance 数据生成财报前简报。汇总即将到来的财报日期、共识预期、历史准确性、分析师情绪和关键财务背景——为参加财报电话会议做好准备所需的信息一应俱全。
重要提示:数据仅用于研究和教育目的,不构成财务建议。yfinance 与 Yahoo, Inc. 无关联。
第 1 步:确保 yfinance 可用
当前环境状态:
!`python3 -c "exec('try:\n import yfinance\n print(\'yfinance \' + yfinance.__version__ + \' installed\')\nexcept Exception:\n print(\'YFINANCE_NOT_INSTALLED\')')"`
如果 YFINANCE_NOT_INSTALLED,请安装:
import subprocess, sys
subprocess.check_call([sys.executable, "-m", "pip", "install", "-q", "yfinance"])
如果已安装,请跳到下一步。
第 2 步:识别股票代码并收集所有数据
从用户的请求中提取股票代码。如果用户只提到公司名称而未提供股票代码,请查询其代码。然后在一个脚本中获取所有相关数据,以尽量减少 API 调用。
import yfinance as yf
ticker = yf.Ticker("AAPL") # replace with actual ticker
# --- Core data ---
info = ticker.info
calendar = ticker.calendar
earnings_dates = ticker.get_earnings_dates(limit=8) # report timestamps; the upcoming one has no Reported EPS yet
hist = ticker.history(period="1mo") # recent price performance
# --- Estimates ---
earnings_est = ticker.earnings_estimate
revenue_est = ticker.revenue_estimate
# --- Historical track record ---
earnings_hist = ticker.earnings_history
# --- Analyst sentiment ---
price_targets = ticker.analyst_price_targets
recommendations = ticker.recommendations
# --- Recent financials for context ---
quarterly_income = ticker.quarterly_income_stmt
quarterly_cashflow = ticker.quarterly_cashflow
从各数据源提取的内容
| 数据源 | 关键字段 | 用途 |
|---|---|---|
calendar | Earnings Date, Ex-Dividend Date | 财报日期和重要日期 |
get_earnings_dates() | Earnings Date (tz-aware timestamp), EPS Estimate, Reported EPS | 财报时间:即将公布的那一行没有 Reported EPS;时间为美国东部时间 16:00 或之后表示盘后发布,时间更早则表示盘前发布 |
earnings_estimate | avg, low, high, numberOfAnalysts, yearAgoEps, growth (for 0q, +1q, 0y, +1y) | EPS 共识预期 |
revenue_estimate | avg, low, high, numberOfAnalysts, yearAgoRevenue, growth | 营收预期 |
earnings_history | epsEstimate, epsActual, epsDifference, surprisePercent | 超预期/不及预期记录(按财季末日期索引,时间从早到晚) |
analyst_price_targets | current, low, high, mean, median | 华尔街目标价 |
recommendations | Buy/Hold/Sell counts | 情绪分布 |
quarterly_income_stmt | TotalRevenue, NetIncome, BasicEPS | 最近的变化趋势 |
第 3 步:撰写财报预览
这份简报应让用户一目了然地了解情况。涵盖以下五个方面;如果缺少某项数据,请用一句话说明,不要直接略过。
- 日期和背景 — 公司、股票代码、行业板块和行业;财报日期,以及是在盘前还是盘后发布;当前股价及过去 1 周和 1 个月的表现;市值。
- 共识预期 — 用表格列出本季度 EPS 和营收共识预期,包含低值、高值、分析师人数、去年同期数值和预期增长率。若高低值区间超过共识值的约 20%,说明存在异常不确定性。
- 超预期/不及预期记录 — 列出最近四个季度的 EPS 预期值与实际值及超预期幅度百分比,并汇总超预期的季度数和平均超预期幅度。
- 分析师情绪 — 列出评级分布(从强烈买入到强烈卖出)和目标价区间(低值、均值、中位数、高值),并说明按均值目标价计算的潜在上涨或下跌空间。
- 关注重点 — 结合公司和行业,列出本次财报市场重点关注的少数事项:营收增长是加速还是减速、利润率是扩大还是收窄、环比大幅变动的项目,以及有数据支持的业务板块趋势。这部分需要作出判断。
第 4 步:回复用户
开头先写标题——报告日期和对当前情况的一句话解读——然后呈现上述五个方面,适合时使用表格。最后根据预估数据、过往业绩记录和市场情绪,简要解读整体情况,并以市场普遍预期的口吻表述,而非给出投资建议。
请注明适用的免责声明:预估数据可能会在报告日期前发生变化;过去业绩超出预期不代表未来也会如此;Yahoo Finance 的共识数据可能比实时数据提供商滞后数小时;本文不构成财务建议。
参考文件
references/api_reference.md— earnings 和 estimate 方法的详细 yfinance API 参考
需要准确的方法签名或边界情况处理信息时,请阅读参考文件。