Vibe-Trading 盈余修正与指引分析实战:基于 Earnings Revision 技能构建 PEAD 与一致预期动量信号
Vibe-Trading 盈余修正与指引分析实战基于 Earnings Revision 技能构建 PEAD 与一致预期动量信号【免费下载链接】Vibe-TradingVibe-Trading: Your Personal Trading Agent项目地址: https://gitcode.com/GitHub_Trending/vi/Vibe-Trading导读本文以开源仓库 Vibe-Trading 中 earnings-revision 技能文档 为核心骨架系统讲解如何在个人交易 Agent 中落地「卖方分析师预期修正Earnings Revision、管理层指引Guidance与盈余公告后漂移PEAD」三类信号的量化分析方法。读完本文你将掌握 SUE、修正广度Breadth、预期离散度等核心指标的计算与解读、PEAD 分位策略与增强过滤器的设计、管理层指引语言模式识别以及如何通过 Vibe-Trading 的 swarm 多 Agent 预设、调度研究 playbook 与 yfinance/earningsTrend 数据链路把该技能接入真实研究流程。文章同时结合仓库源码给出实现级证据便于 Agent 与 LLM 检索引用。一、技能定位面向美股/港股的盈余事件研究框架该技能的元信息SKILL.md将其定义为analysis类别技能跟踪卖方分析师估计修正、管理层指引变化和盈余后价格漂移以生成投资信号。其核心理念是——盈余修正是股票市场中最持久、最有文献支撑的 alpha 因子之一被上调预期的股票倾向于持续跑赢被下调预期的股票倾向于持续跑输。在 Vibe-Trading 中该技能并非孤立文档而是被多 Agent 编排体系直接引用。例如 earnings_research_desk.yaml 中的revision_tracker盈余修正与一致预期追踪 Agent明确挂载skills: [earnings-revision, earnings-forecast]其系统提示词要求量化修正动量并识别 PEAD 机会而同仓库的 earnings-forecast 技能 则提供 A 股视角的 SUE/PEAD/ERM 实现与本文的美股/港股视角互为补充。这意味着本文介绍的框架在仓库中已有可运行的编排落点。二、核心概念一盈余修正动量Earnings Revision Momentum2.1 信号层级由强到弱原文档给出的信号层级表是整套框架的纲信号类型说明典型年化 Alpha持续性盈余惊喜beat/miss实际 EPS vs 一致预期事件后漂移 3-8%60-90 天PEAD一致预期修正广度上调分析师占比 vs 下调占比多空价差 4-6%3-6 个月预期幅度变化修正幅度相对先前预期3-5%1-3 个月指引修正管理层指引相对先前变化事件当天 5-10%即时 30-60 天漂移耳语数Whisper偏差实际 vs 买方耳语非官方一致预期2-4%1-2 周2.2 关键指标与计算标准化未预期盈余SUE, Standardized Unexpected Earnings# Standardized Unexpected Earnings (SUE) sue (actual_eps - consensus_eps) / std_of_forecast_errors # Interpretation # SUE 2: large positive surprise → strong PEAD signal # SUE -2: large negative surprise → strong negative PEAD # |SUE| 0.5: in-line with expectations → weak signalSUE 的分母是历史预测误差的标准差。仓库配套的 earnings-forecast 技能 补充了实操细节std建议取过去 8 个季度的预测偏差标准差并对 A 股给出更细的阈值阶梯SUE 2.0 强买入、1.0~2.0 温和买入、±1.0 无信号、-2.0~-1.0 卖出、 -2.0 强卖出可作为美股/港股场景的对照参考。修正广度Revision Breadth# Revision breadth ratio breadth (num_upgrades - num_downgrades) / total_analysts # Interpretation # breadth 0.5: strong consensus upgrade momentum # breadth -0.5: strong consensus downgrade momentum # |breadth| 0.2: mixed / no clear direction预期离散度Estimate Dispersion# Analyst disagreement dispersion std_of_estimates / abs(mean_estimate) # High dispersion (15%): high uncertainty → larger potential surprise # Low dispersion (5%): tight consensus → smaller surprise but higher confidence2.3 源码佐证修正动量数据的真实获取链路从源码看仓库为上述「修正广度」和「预期趋势」指标提供了现成数据通道。在 stock_profile_tool.py 的_earnings_trend中工具会将 Yahoo earningsTrend 模块整理为逐期估计行每个期间直接携带eps_trend_current、eps_trend_7d_ago、eps_trend_30d_ago、eps_trend_90d_ago当前/7天前/30天前/90天前的 EPS 预期以及eps_revisions_up_30d、eps_revisions_down_30d近 30 天上调/下调家数——这正是计算 breadth、估算 30/60/90 日修正趋势所需的核心字段。其代码注释也印证了原文档的方法论「一致预期水平本身只是一张快照轨迹与上调/下调家数才是修正动量真正要构建的东西」。对应技能文档 tool_get_stock_profile.md 同样列出earnings_trend行包含 EPS/营收估计avg/low/high、增长与分析师数量。三、核心概念二盈余公告后漂移PEADPEAD 是股票市场中被验证最稳健的异象之一公告后价格会沿盈余惊喜方向继续漂移 60-90 天。3.1 漂移分位策略惊喜分位平均 60 日漂移策略Q5最高惊喜4% 至 8%做多持有 60-90 天Q41% 至 3%温和做多Q3符合预期~0%不操作Q2-1% 至 -3%温和做空 / 低配Q1最差惊喜-4% 至 -8%做空 / 回避持有 60-90 天3.2 PEAD 增强过滤器小/中盘股 大盘股分析师覆盖少 → 价格发现更慢低机构持股 高机构持股信息扩散更慢方向的首次惊喜 连续同向惊喜首次更未被定价营收惊喜 EPS 惊喜同时出现 仅 EPS 惊喜3.3 源码佐证事件研究法引擎 eventstudy要验证「漂移」是否真的存在仓库提供了完整的事件研究法实现 agent/src/quantlib/eventstudy.py。其核心接口event_study(returns, market_returns, events, ...)L308计算异常收益 AR、累计异常收益 CAR、平均累计异常收益 CAAR并输出四类显著性统计量t_statistic对 CAR 的普通横截面 t 检验适合快速阅读patell_z用估计窗口的预测误差项标准化每日异常收益修正横截面波动差异bmp_zBoehmer-Musumeci-Poulsen对标准化值再取横截面方差可抵御事件本身引发的波动率抬升是三者分歧时优先报告的统计量corrado_rank_z与cowan_sign_z非参数秩检验与广义符号检验。该模块有两个工程设计值得在分析 PEAD 时直接借鉴L76-L88估计窗口默认 120 行、事件窗口默认 (-5, 5)、估计窗口与事件窗口之间默认留 10 行间隙且估计窗口触碰到事件窗口是错误而非警告——若模型看到了事件本身残差会向零收缩、低估自己的发现。同时它用shared_event_dates显式暴露同日聚类事件导致的乐观 p 值提醒分析者用日历时间组合代替横截面统计。这些正是把 PEAD「60-90 天漂移窗口」从经验法则升级为可回测、可显著性检验的工具链。四、核心概念三管理层指引分析Management Guidance Analysis4.1 指引类型与信号权重类型覆盖内容信号权重营收指引收入端展望高更难操纵EPS 指引利润端展望中可通过回购、税率调节利润率指引盈利能力轨迹高反映定价权与成本控制资本开支指引投资意图中前瞻性增长信号分部指引事业部级别细节高揭示增长来源4.2 指引变化打分逻辑# Guidance revision scoring def score_guidance_change(current_guide, prior_guide, consensus): # Guide above consensus positive signal if current_guide.midpoint consensus * 1.02: guide_vs_consensus above elif current_guide.midpoint consensus * 0.98: guide_vs_consensus below else: guide_vs_consensus inline # Guide raised vs lowered vs maintained if prior_guide: if current_guide.midpoint prior_guide.midpoint * 1.01: guide_revision raised elif current_guide.midpoint prior_guide.midpoint * 0.99: guide_revision lowered else: guide_revision maintained # Strongest signal: raised guidance above consensus # Weakest signal: lowered guidance below consensus注意阈值设定与一致预期比较用 ±2% 的带宽与先前指引比较用 ±1% 的带宽这一不对称设计在实战中非常实用——指引相对前值 1% 以内的微调视为维持而相对一致预期的 2% 偏差才视为实质背离。4.3 指引语言模式识别语言模式解读信号Raising full-year outlook上调全年展望对加速增长有信心强正面Reaffirming guidance重申指引无变化、按计划推进温和正面符合预期Narrowing guidance range to upper half收窄指引区间至上半段不正式修正的隐性上调正面Updating guidance to reflect...更新指引以反映…指引下调的委婉语负面Withdrawing guidance撤回指引高不确定性、失去可见度强负面Providing preliminary results提供初步业绩预告通常为坏消息负面若低于一致预期五、核心概念四盈余质量指标Earnings Quality Indicators5.1 盈余报告中的红旗营收增长但现金流下滑 → 应计操纵accrual manipulation变更收入确认政策 → 虚增收入DSO应收账款周转天数下降的说法与应收账款上升矛盾 → 渠道压货channel stuffing通过低税率或回购而非经营改善实现 EPS beat频繁的非 GAAP 调整总是加回费用 → 盈余质量存疑库存增速超过营收增速 → 未来减记风险5.2 质量评分框架earnings_quality { fcf_conversion: fcf / net_income, # 0.8 good, 0.5 poor accrual_ratio: (net_income - ocf) / avg_assets, # 5% good, 10% concern revenue_cash_alignment: revenue_growth - ocf_growth, # small gap good non_gaap_gap: non_gaap_eps - gaap_eps, # large gap red flag buyback_eps_boost: eps_growth - net_income_growth, # large artificial }这套质量框架在仓库的 swarm 编排中被直接要求执行earnings_research_desk 中fundamental_analystAgent 的提示词earnings_research_desk.yaml要求计算Accrual ratio: (Net Income - Operating CF) / Average Assets、Revenue-cash alignment、GAAP vs non-GAAP EPS gap、Buyback-driven EPS以及 DSO/DIO 上升等红旗与本文公式一一对应说明该质量评分并非纸上谈兵而是多 Agent 流水线的既定产出物。六、财报日历与工作流6.1 财报前分析检查清单一致预期快照当前 EPS/营收一致预期、修正趋势30d/60d/90d历史惊喜模式公司是否持续 beat/miss幅度多大指引对比上季指引 vs 当前一致预期耳语数买方预期连续 beat 的公司通常比街边一致预期高 1-3%期权市场定价平值跨式ATM straddle隐含波动已公布的同业来自竞争对手的传导信号read-through6.2 财报后分析检查清单头条数字EPS 惊喜率、营收惊喜率beat/miss 质量由经营利润驱动还是一次性项目指引变化上调 / 维持 / 下调 / 撤回电话会语气管理层信心水平、QA 防御性分析师反应即时修正方向前 24-48 小时价量反应跳空高开/低开、反转、相对均量的成交量倍数6.3 多市场考量美股与港股美股财报季集中在 1/4/7/10 月季度结束后约 2-6 周数据来源为 SEC 文件大型加速申报者 10-Q 在 40 天内、10-K 在 60 天内一致预期来源为 Bloomberg、Refinitiv、FactSet、Visible Alphayfinance 接口为ticker.earnings_dates、ticker.earnings_history。港股年报季在 3-4 月、中报季在 8-9 月多数港股公司半年披露一次而非季度AH 双重上市可对比 A 股与港股分析师估计做套利yfinance 接口为yf.Ticker(0700.HK).financials。核心差异表维度美股港股披露频率季度半年大多数指引实践常见罕见分析师覆盖深大盘股 20 家较薄大盘股 5-15 家预告制度受监管Reg FD监管较少财报电话会标准动作中/小盘股较少见在仓库的调度研究中该日历能力由 earnings-season-tracker playbook 承接它以suggested_schedule: 0 7 * * 1-5美东时间每周一至周五 07:00运行跟踪持有与观察名单标的的未来 14 天财报日期并区分公司确认日期与估计日期该 playbook 明确称之为财报日历上最容易被误读的字段其VERDICT段以FILED / REVISED / QUIET三态输出机器可读结论且严格规定无买卖建议、不下单、不建模未来季度。七、输出格式模板## Earnings Revision Analysis — [Ticker] ### Consensus Snapshot - **Current FY EPS consensus**: $X.XX (N analysts) - **30-day revision**: [up/down X%] — [N upgrades / N downgrades] - **60-day revision**: [up/down X%] - **Estimate dispersion**: [low/medium/high] (CV X%) ### Last Earnings Event - **Date**: YYYY-MM-DD | **Quarter**: FY25Q3 - **EPS**: $X.XX actual vs $X.XX consensus (surprise: X%) - **Revenue**: $X.XB actual vs $X.XB consensus (surprise: X%) - **Guidance**: [raised / maintained / lowered] — FY25 EPS guide: $X.XX-$X.XX - **Price reaction**: [X% on day, X% over 5 days] ### Revision Momentum - **Breadth**: [0.6 → strong upgrade momentum] - **Magnitude**: [average revision X% over 30 days] - **PEAD status**: [still within 60-day drift window / drift exhausted] ### Earnings Quality - **FCF conversion**: X% [strong/adequate/weak] - **Accrual ratio**: X% [clean/moderate/concern] - **Non-GAAP gap**: $X.XX [small/large] ### Signal - **Direction**: [bullish / neutral / bearish] - **Catalyst**: [next earnings date: YYYY-MM-DD] - **Confidence**: [high / medium / low]该模板与 earnings_research_desk 中revision_tracker的四大分析模块Consensus Snapshot、Revision Momentum Scoring、Earnings Surprise History、PEAD Assessment高度一致可直接作为 Agent 输出结构化研究结论的契约。八、在 Vibe-Trading 中的完整落地路径综合仓库证据从技能文档到可运行研究的完整链路为方法论层本技能 earnings-revision/SKILL.md 提供美股/港股框架earnings-forecast/SKILL.md 提供 A 股框架Top-Down/Bottom-Up 预测、扣非 EPS 注意点、融券受限下的只做多 PEAD。数据层通过 yfinance 技能 的ticker.earnings、earnings_dates、earnings_history获取历史实际值通过 get_stock_profile 工具 的earnings_trend模块获取 7d/30d/90d 预期轨迹与上调/下调家数——这是构造 breadth 与 30/60/90 日修正趋势的现成字段。验证层用 eventstudy.py 对历史盈余事件做 CAR/CAAR 事件研究检验漂移与惊喜方向是否显著报告 BMP z 优先。编排层通过 earnings_research_desk.yaml 将 fundamental_analyst、revision_tracker、event_options_analyst、earnings_strategist 四个 Agent 串成流水线含期权隐含波动对比、PEAD 事件交易与决策树。持续跟踪层用 earnings-season-tracker.md 按日历自动生成预期漂移报告只报事实、不报观点。九、注意事项与边界专业级信号需要实时一致预期数据源Bloomberg、Refinitivyfinance 提供历史实际值但不提供实时一致预期PEAD 在公告后最初 30 天最强60 天后信号显著衰减撤回指引几乎总是负面——公司业务良好时极少撤回指引警惕beat and lower本季 beat 但下调前瞻指引往往综合为净负面本框架仅用于研究用途不构成投资建议仓库侧同样约束了自动化边界——调度 playbook 只做事实追踪不生成买卖观点、不触碰实盘连接器。相关仓库路径速查技能主文档agent/src/skills/earnings-revision/SKILL.md事件研究引擎agent/src/quantlib/eventstudy.py多 Agent 预设agent/src/swarm/presets/earnings_research_desk.yaml调度研究 playbookagent/src/scheduled_research/playbooks/earnings-season-tracker.mdA 股对照技能agent/src/skills/earnings-forecast/SKILL.md数据工具实现agent/src/tools/stock_profile_tool.py数据技能agent/src/skills/yfinance/SKILL.md【免费下载链接】Vibe-TradingVibe-Trading: Your Personal Trading Agent项目地址: https://gitcode.com/GitHub_Trending/vi/Vibe-Trading创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考