Get the FREE Ultimate OpenClaw Setup Guide →

earnings-calendar

npx machina-cli add skill staskh/trading_skills/earnings-calendar --openclaw
Files (1)
SKILL.md
1.4 KB

Earnings Calendar

Retrieve upcoming earnings dates for stocks.

Instructions

Note: If uv is not installed or pyproject.toml is not found, replace uv run python with python in all commands below.

uv run python scripts/earnings.py SYMBOLS

Arguments

  • SYMBOLS - Ticker symbol or comma-separated list (e.g., AAPL or AAPL,MSFT,GOOGL,NVDA)

Output

Single symbol returns:

  • symbol - Ticker symbol
  • earnings_date - Next earnings date (YYYY-MM-DD)
  • timing - "BMO" (Before Market Open), "AMC" (After Market Close), or null
  • eps_estimate - Consensus EPS estimate, or null if unavailable

Multiple symbols returns:

  • results - Array of earnings info, sorted by date (soonest first)

Examples

# Single symbol
uv run python scripts/earnings.py NVDA

# Multiple symbols (sorted by date)
uv run python scripts/earnings.py AAPL,MSFT,GOOGL,NVDA,META

# Portfolio earnings calendar
uv run python scripts/earnings.py CAT,GOOG,HOOD,IWM,NVDA,PLTR,QQQ,UNH

Use Cases

  • Check when positions have upcoming earnings risk
  • Plan trades around earnings announcements
  • Build an earnings calendar for watchlist

Dependencies

  • pandas
  • yfinance

Source

git clone https://github.com/staskh/trading_skills/blob/main/.claude/skills/earnings-calendar/SKILL.mdView on GitHub

Overview

This skill retrieves upcoming stock earnings dates and returns per-symbol data including the next earnings date, market timing (BMO/AMC) if available, and the consensus EPS estimate. It supports single or multiple symbols and sorts results by the soonest date, helping you anticipate earnings-related moves.

How This Skill Works

A Python script (scripts/earnings.py) is invoked with one or more ticker symbols using uv (or plain python if uv is unavailable). It uses pandas and yfinance to fetch the next earnings date, timing, and EPS estimate for each symbol, then outputs either a single symbol object or a results array sorted by earnings_date.

When to Use It

  • When a user asks for upcoming earnings dates or an earnings calendar
  • When planning trades around a company's earnings announcement
  • To monitor earnings risk for current positions
  • To build and maintain a watchlist's earnings calendar
  • When you need the next report date for multiple symbols

Quick Start

  1. Step 1: Ensure Python environment is ready with uv installed (or use python directly).
  2. Step 2: Run the earnings script with your symbols, e.g., uv run python scripts/earnings.py AAPL,MSFT.
  3. Step 3: Review the output JSON showing symbol, earnings_date, timing, and eps_estimate.

Best Practices

  • Verify that SYMBOLS are correctly formatted as a single symbol or a comma-separated list (e.g., AAPL or AAPL,MSFT,GOOGL).
  • Note the timing field and handle null values when timing is not available (BMO/AMC may be missing).
  • Treat null eps_estimate as unavailable and avoid assuming a value.
  • Ensure results are sorted by earnings_date to highlight the soonest events first.
  • Keep dependencies (pandas, yfinance) up to date and test with a single symbol before running large lists.

Example Use Cases

  • uv run python scripts/earnings.py NVDA
  • uv run python scripts/earnings.py AAPL,MSFT,GOOGL,NVDA,META
  • Portfolio earnings calendar: CAT,GOOG,HOOD,IWM,NVDA,PLTR,QQQ,UNH
  • Check upcoming earnings risk for a current NVDA position
  • Build an earnings calendar for a watchlist of 10 symbols

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers