earnings-preview

>

INSTALLATION
npx skills add https://github.com/himself65/finance-skills --skill earnings-preview
Run in your project or agent environment. Adjust flags if your CLI version differs.

SKILL.md

Earnings Preview Skill

Generates a pre-earnings briefing using Yahoo Finance data via yfinance. Pulls together upcoming earnings date, consensus estimates, historical accuracy, analyst sentiment, and key financial context — everything you need before an earnings call.

Important: Data is for research and educational purposes only. Not financial advice. yfinance is not affiliated with Yahoo, Inc.

Step 1: Ensure yfinance Is Available

Current environment status:

!`python3 -c "import yfinance; print('yfinance ' + yfinance.__version__ + ' installed')" 2>/dev/null || echo "YFINANCE_NOT_INSTALLED"`

If YFINANCE_NOT_INSTALLED, install it:

import subprocess, sys

subprocess.check_call([sys.executable, "-m", "pip", "install", "-q", "yfinance"])

If already installed, skip to the next step.

Step 2: Identify the Ticker and Gather All Data

Extract the ticker symbol from the user's request. If they mention a company name without a ticker, look it up. Then fetch all relevant data in one script to minimize API calls.

import yfinance as yf

import pandas as pd

from datetime import datetime

ticker = yf.Ticker("AAPL")  # replace with actual ticker

# --- Core data ---

info = ticker.info

calendar = ticker.calendar

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

What to extract from each source

Data Source

Key Fields

Purpose

calendar

Earnings Date, Ex-Dividend Date

When earnings are and key dates

earnings_estimate

avg, low, high, numberOfAnalysts, yearAgoEps, growth (for 0q, +1q, 0y, +1y)

Consensus EPS expectations

revenue_estimate

avg, low, high, numberOfAnalysts, yearAgoRevenue, growth

Revenue expectations

earnings_history

epsEstimate, epsActual, epsDifference, surprisePercent

Beat/miss track record

analyst_price_targets

current, low, high, mean, median

Street price targets

recommendations

Buy/Hold/Sell counts

Sentiment distribution

quarterly_income_stmt

TotalRevenue, NetIncome, BasicEPS

Recent trajectory

Step 3: Build the Earnings Preview

Assemble the data into a structured briefing. The goal is to give the user everything they need in one glance.

Section 1: Earnings Date & Key Info

Report the upcoming earnings date from calendar. Include:

  • Company name, ticker, sector, industry
  • Upcoming earnings date (and whether it's before/after market)
  • Current stock price and recent performance (1-week, 1-month)
  • Market cap

Section 2: Consensus Estimates

Present the current quarter estimates from earnings_estimate and revenue_estimate:

Metric

Consensus

Low

High

Analysts

Year Ago

Growth

EPS

$1.42

$1.35

$1.50

28

$1.26

+12.7%

Revenue

$94.3B

$92.1B

$96.8B

25

$89.5B

+5.4%

If the estimate range is unusually wide (high/low spread > 20% of consensus), note that as a sign of high uncertainty.

Section 3: Historical Beat/Miss Track Record

From earnings_history, show the last 4 quarters:

Quarter

EPS Est

EPS Actual

Surprise

Beat/Miss

Q3 2024

$1.35

$1.40

+3.7%

Beat

Q2 2024

$1.30

$1.33

+2.3%

Beat

Q1 2024

$1.52

$1.53

+0.7%

Beat

Q4 2023

$2.10

$2.18

+3.8%

Beat

Summarize: "AAPL has beaten EPS estimates in 4 of the last 4 quarters by an average of 2.6%."

Section 4: Analyst Sentiment

From recommendations and analyst_price_targets:

  • Current recommendation distribution (Strong Buy / Buy / Hold / Sell / Strong Sell)
  • Price target range: low, mean, median, high vs. current price
  • Implied upside/downside from mean target

Section 5: Key Metrics to Watch

Based on the quarterly financials, highlight 3-5 things the market will focus on:

  • Revenue growth trend (accelerating or decelerating?)
  • Margin trajectory (expanding or compressing?)
  • Any notable line items that changed significantly quarter-over-quarter
  • Segment breakdowns if available in the data

This section requires judgment — think about what matters for this specific company/sector.

Step 4: Respond to the User

Present the preview as a clean, structured briefing:

  • Lead with the headline: "AAPL reports earnings on [date]. Here's what to expect."
  • Show all 5 sections with clear headers and tables
  • End with a brief summary: 2-3 sentences capturing the overall setup (bullish/bearish lean based on estimates, track record, and sentiment — frame as "the street expects" not personal recommendation)

Caveats to include

  • Estimates can change up until the report date
  • Historical beats don't guarantee future beats
  • Yahoo Finance data may lag real-time consensus by a few hours
  • This is not financial advice

Reference Files

  • references/api_reference.md — Detailed yfinance API reference for earnings and estimate methods

Read the reference file when you need exact method signatures or edge case handling.

BrowserAct

Let your agent run on any real-world website

Bypass CAPTCHA & anti-bot for free. Start local, scale to cloud.

Explore BrowserAct Skills →

Stop writing automation&scrapers

Install the CLI. Run your first Skill in 30 seconds. Scale when you're ready.

Start free
free · no credit card