mcpField
E
earnings-preview

earnings-preview

github.com/himself65数据与数据库3.5k3.4k 次安装3 天前更新
代码仓库

关于 earnings-preview

面向金融研究者和投资者的财报前分析 Skill,使用 yfinance 汇总即将发布的财报日期、市场预期、过往 EPS 准确度、分析师情绪和公司背景,并提示关注事项及数据局限,不提供投资建议。

主要功能

  1. 01财报日期与发布时间
  2. 02EPS 和营收市场预期
  3. 03历史 EPS 超预期或不及预期记录
  4. 04分析师评级与目标价
  5. 05财务背景与观察要点

适用场景

  1. 01准备财报电话会议
  2. 02对照预期与过往 EPS 惊喜幅度
  3. 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
从各数据源提取的内容
数据源关键字段用途
calendarEarnings Date, Ex-Dividend Date财报日期和重要日期
get_earnings_dates()Earnings Date (tz-aware timestamp), EPS Estimate, Reported EPS财报时间:即将公布的那一行没有 Reported EPS;时间为美国东部时间 16:00 或之后表示盘后发布,时间更早则表示盘前发布
earnings_estimateavg, low, high, numberOfAnalysts, yearAgoEps, growth (for 0q, +1q, 0y, +1y)EPS 共识预期
revenue_estimateavg, low, high, numberOfAnalysts, yearAgoRevenue, growth营收预期
earnings_historyepsEstimate, epsActual, epsDifference, surprisePercent超预期/不及预期记录(按财季末日期索引,时间从早到晚)
analyst_price_targetscurrent, low, high, mean, median华尔街目标价
recommendationsBuy/Hold/Sell counts情绪分布
quarterly_income_stmtTotalRevenue, NetIncome, BasicEPS最近的变化趋势

第 3 步:撰写财报预览

这份简报应让用户一目了然地了解情况。涵盖以下五个方面;如果缺少某项数据,请用一句话说明,不要直接略过。

  1. 日期和背景 — 公司、股票代码、行业板块和行业;财报日期,以及是在盘前还是盘后发布;当前股价及过去 1 周和 1 个月的表现;市值。
  2. 共识预期 — 用表格列出本季度 EPS 和营收共识预期,包含低值、高值、分析师人数、去年同期数值和预期增长率。若高低值区间超过共识值的约 20%,说明存在异常不确定性。
  3. 超预期/不及预期记录 — 列出最近四个季度的 EPS 预期值与实际值及超预期幅度百分比,并汇总超预期的季度数和平均超预期幅度。
  4. 分析师情绪 — 列出评级分布(从强烈买入到强烈卖出)和目标价区间(低值、均值、中位数、高值),并说明按均值目标价计算的潜在上涨或下跌空间。
  5. 关注重点 — 结合公司和行业,列出本次财报市场重点关注的少数事项:营收增长是加速还是减速、利润率是扩大还是收窄、环比大幅变动的项目,以及有数据支持的业务板块趋势。这部分需要作出判断。

第 4 步:回复用户

开头先写标题——报告日期和对当前情况的一句话解读——然后呈现上述五个方面,适合时使用表格。最后根据预估数据、过往业绩记录和市场情绪,简要解读整体情况,并以市场普遍预期的口吻表述,而非给出投资建议。

请注明适用的免责声明:预估数据可能会在报告日期前发生变化;过去业绩超出预期不代表未来也会如此;Yahoo Finance 的共识数据可能比实时数据提供商滞后数小时;本文不构成财务建议。


参考文件

  • references/api_reference.md — earnings 和 estimate 方法的详细 yfinance API 参考

需要准确的方法签名或边界情况处理信息时,请阅读参考文件。

评论

支持 Markdown