Source profileQuality 85/100

HKUDS/Vibe-Trading/agent/src/skills/earnings-revision/SKILL.md

earnings-revision

Earnings estimate revisions, guidance analysis, and post-earnings drift (PEAD) — track analyst consensus changes, earnings surprise patterns, and management guidance shifts for US/HK equities.

Source repository stars
29,558
Declared platforms
0
Static risk flags
0
Last source update
2026-08-04
Source checked
2026-08-04

Decision brief

What it does—and where it fits

Earnings estimate revisions, guidance analysis, and post-earnings drift (PEAD) — track analyst consensus changes, earnings surprise patterns, and management guidance shifts for US/HK equities.

Best for

    Not for

    • Tasks that require unconfirmed production actions or broad system permissions.
    • Environments where the pinned source and install steps cannot be inspected.

    Compatibility matrix

    Platform support, with evidence labels

    PlatformStatusEvidenceWhat to check
    CodexNot declaredNo explicit evidencePortability before use
    Claude CodeNot declaredNo explicit evidencePortability before use
    CursorNot declaredNo explicit evidencePortability before use
    Gemini CLINot declaredNo explicit evidencePortability before use
    Open the compatibility checker

    Installation

    Inspect first. Install second.

    The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

    Source-detected install commandSource
    npx skills add https://github.com/HKUDS/Vibe-Trading --skill "agent/src/skills/earnings-revision"
    Safe inspection promptEditorial

    Inspect the Agent Skill "earnings-revision" from https://github.com/HKUDS/Vibe-Trading/blob/3a752d5a8ed088633040893de1cc9e6dc712596f/agent/src/skills/earnings-revision/SKILL.md at commit 3a752d5a8ed088633040893de1cc9e6dc712596f. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

    Workflow

    What the source asks the agent to do

    1. 01

      Earnings Calendar and Workflow

      1. Consensus snapshot: current EPS/revenue consensus, revision trend (30d/60d/90d) 2. Historical surprise pattern: has the company consistently beat/missed? By how much? 3. Guidance comparison: last quarter's guidance vs current consensus 4. Whisper number: buy-side expectations…

      Consensus snapshot: current EPS/revenue consensus, revision trend (30d/60d/90d)Historical surprise pattern: has the company consistently beat/missed? By how much?Guidance comparison: last quarter's guidance vs current consensus
    2. 02

      Core Concepts

      The revision signal hierarchy (strongest to weakest):

      The revision signal hierarchy (strongest to weakest):Earnings Surprise: python
    3. 03

      1. Earnings Revision Momentum

      The revision signal hierarchy (strongest to weakest):

      The revision signal hierarchy (strongest to weakest):
    4. 04

      2. Key Metrics

      Earnings Surprise: python

      Earnings Surprise: python
    5. 05

      Standardized Unexpected Earnings (SUE)

      sue = (actualeps - consensuseps) / stdofforecasterrors

      sue = (actualeps - consensuseps) / stdofforecasterrors

    Permission review

    Static risk signals and limitations

    No configured static risk pattern was detected

    This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.

    Evidence record

    Why each signal appears

    EvidenceSourceComputedTestedEditorial
    SignalValueEvidence typeMeaning
    Quality score85/100ComputedDocumentation, specificity, maintenance, and trust rules
    Repository stars29,558SourceRepository attention, not individual Skill quality
    Compatibility0 platformsSourceDeclared in the catalog source record
    Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

    Pinned source

    Provenance and original SKILL.md

    Repository
    HKUDS/Vibe-Trading
    Skill path
    agent/src/skills/earnings-revision/SKILL.md
    Commit
    3a752d5a8ed088633040893de1cc9e6dc712596f
    License
    MIT
    Collected
    2026-08-04
    Default branch
    main
    View the original SKILL.md

    Earnings Revision & Guidance Analysis

    Overview

    Track sell-side analyst estimate revisions, management guidance changes, and post-earnings price drift to generate investment signals. Earnings revisions are among the most persistent and well-documented alpha factors in equity markets — stocks with upward revisions tend to continue outperforming, and vice versa.

    Core Concepts

    1. Earnings Revision Momentum

    The revision signal hierarchy (strongest to weakest):

    Signal TypeDescriptionTypical Alpha (annualized)Persistence
    Earnings surprise (beat/miss)Actual EPS vs consensus3-8% post-event drift60-90 days (PEAD)
    Consensus revision breadth% of analysts revising up vs down4-6% long-short spread3-6 months
    Estimate magnitude changeSize of revision relative to prior estimate3-5%1-3 months
    Guidance revisionManagement guidance change vs prior5-10% on eventImmediate + 30-60 day drift
    Whisper number miss/beatActual vs buy-side whisper (not official consensus)2-4%1-2 weeks

    2. Key Metrics

    Earnings Surprise:

    # 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 signal
    

    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 confidence
    

    3. Post-Earnings Announcement Drift (PEAD)

    The most robust anomaly in equity markets: prices continue to drift in the direction of the earnings surprise for 60-90 days after the announcement.

    PEAD trading rules:

    Surprise QuintileAverage 60-day DriftStrategy
    Q5 (top surprise)+4 to +8%Go long, hold 60-90 days
    Q4+1 to +3%Mild long
    Q3 (in-line)~0%No action
    Q2-1 to -3%Mild short / underweight
    Q1 (worst surprise)-4 to -8%Go short / avoid, hold 60-90 days

    PEAD enhancement filters:

    • Small/mid cap > large cap (less analyst coverage = slower price discovery)
    • Low institutional ownership > high ownership (slower information diffusion)
    • First surprise in a direction > consecutive same-direction surprises
    • Revenue surprise + EPS surprise together > EPS surprise alone

    4. Management Guidance Analysis

    Guidance types:

    TypeWhat It CoversSignal Weight
    Revenue guidanceTop-line outlookHigh (harder to manipulate)
    EPS guidanceBottom-line outlookMedium (can be managed via buybacks, tax rate)
    Margin guidanceProfitability trajectoryHigh (reflects pricing power and cost control)
    CapEx guidanceInvestment intentionsMedium (forward-looking growth signal)
    Segment guidanceDivision-level detailHigh (reveals where growth is coming from)

    Guidance change signals:

    # 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
    

    Guidance language analysis:

    Language PatternInterpretationSignal
    "Raising full-year outlook"Confidence in accelerationStrong positive
    "Reaffirming guidance"No change, on-trackMild positive (met expectations)
    "Narrowing guidance range to upper half"Soft raise without formal revisionPositive
    "Updating guidance to reflect..."Euphemism for guidance cutNegative
    "Withdrawing guidance"High uncertainty, loss of visibilityStrong negative
    "Providing preliminary results"Pre-announcement, usually bad newsNegative (if below consensus)

    5. Earnings Quality Indicators

    Red flags in earnings reports:

    1. Revenue growing but cash flow declining → accrual manipulation
    2. Changing revenue recognition policy → inflating top line
    3. Declining DSO (Days Sales Outstanding) story contradicted by rising AR → channel stuffing
    4. Beating EPS via lower tax rate or share buyback, not operating improvement
    5. Frequent "non-GAAP adjustments" that always add back expenses → questionable earnings quality
    6. Inventory build outpacing revenue growth → future write-down risk

    Quality scoring:

    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
    }
    

    Earnings Calendar and Workflow

    Pre-Earnings Analysis Checklist

    1. Consensus snapshot: current EPS/revenue consensus, revision trend (30d/60d/90d)
    2. Historical surprise pattern: has the company consistently beat/missed? By how much?
    3. Guidance comparison: last quarter's guidance vs current consensus
    4. Whisper number: buy-side expectations (often 1-3% above street consensus for serial beaters)
    5. Options market pricing: implied move from at-the-money straddle
    6. Sector peers already reported: read-through signals from competitors

    Post-Earnings Analysis Checklist

    1. Headline numbers: EPS surprise %, revenue surprise %
    2. Quality of beat/miss: operating income-driven or one-time items?
    3. Guidance change: raised / maintained / lowered / withdrawn
    4. Call tone: management confidence level, Q&A defensiveness
    5. Analyst reaction: immediate revision direction (first 24-48 hours)
    6. Price/volume reaction: gap up/down, reversal, volume multiple vs average

    Multi-Market Considerations

    US Equities

    • Earnings season: Jan/Apr/Jul/Oct (roughly 2-6 weeks after quarter-end)
    • Data: SEC filings (10-Q within 40 days, 10-K within 60 days for large accelerated filers)
    • Consensus: Bloomberg, Refinitiv, FactSet, Visible Alpha
    • Via yfinance: ticker.earnings_dates, ticker.earnings_history

    Hong Kong Equities

    • Earnings season: Mar-Apr (annual), Aug-Sep (interim)
    • Many HK-listed companies report semi-annually, not quarterly
    • Dual-listed (A+H): compare A-share analyst estimates vs HK analyst estimates for arbitrage
    • Via yfinance: yf.Ticker("0700.HK").financials

    Key Differences

    DimensionUSHK
    Reporting frequencyQuarterlySemi-annual (most)
    Guidance practiceCommonRare
    Analyst coverageDeep (>20 for large caps)Thinner (5-15 for large caps)
    Pre-announcementRegulated (Reg FD)Less regulated
    Earnings callStandardLess common for mid/small caps

    Output Format

    ## 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]
    

    Notes

    • Earnings revision data requires real-time consensus feeds (Bloomberg, Refinitiv) for professional-grade signals; yfinance provides historical actuals but not real-time consensus
    • PEAD is strongest in the first 30 days post-announcement; signal decays significantly after 60 days
    • Guidance withdrawals are almost always negative — companies rarely withdraw guidance when business is going well
    • Beware of "beat and lower" — beating current quarter but lowering forward guidance is often net negative
    • This framework is for research purposes only and does not constitute investment advice

    Alternatives

    Compare before choosing

    Computed 10023,781

    alirezarezvani/claude-skills

    app-store-optimization

    App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store. Use when the user asks about ASO, app store rankings, app metadata, app titles and descriptions, app store listings, app visibility, or mobile app marketing on iOS or Android. Supports keyword research and scoring, competitor keyword analysis, metadata optimization, A/B test planning, launch checklist

    Computed 10014,225

    wanshuiyin/Auto-claude-code-research-in-sleep

    citation-audit

    Use it for operations and research tasks; the detail page covers purpose, installation, and practical steps.

    Computed 9832,606

    K-Dense-AI/scientific-agent-skills

    dask

    Distributed computing for larger-than-RAM pandas/NumPy workflows. Use when you need to scale existing pandas/NumPy code beyond memory or across clusters. Best for parallel file processing, distributed ML, integration with existing pandas code. For out-of-core analytics on single machine use vaex; for in-memory speed use polars.

    Computed 9832,606

    K-Dense-AI/scientific-agent-skills

    neurokit2

    Use NeuroKit2 to build or audit reproducible research workflows for physiological time-series preprocessing, event/interval analysis, multimodal alignment, variability, and complexity. Trigger when code imports neurokit2 or needs its current APIs, schemas, and method-aware validation—not for diagnosis or device validation.