AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
The yfinance-data skill provides a structured interface for retrieving financial and market data from Yahoo Finance. It enables users to access a wide range of information, including historical price data, financial statements, corporate actions, options chains, and analyst estimates. The skill is designed to integrate with Python environments, allowing for programmatic data extraction and analysis of stock market information.
What it does
- Retrieves current stock quotes and historical price data.
- Fetches financial statements including income statements, balance sheets, and cash flow.
- Accesses corporate actions such as dividends and stock splits.
- Provides options chain data, including calls and puts.
- Retrieves analyst estimates, price targets, and institutional holdings.
- Supports bulk data downloads for multi-ticker comparisons.
When to use it
- When you need to perform research on stock market data.
- When you require financial statement data for company analysis.
- When you need to compare historical price performance across multiple tickers.
- When you are building financial models that require external market data.
Advantages
- Provides a standardized way to access diverse financial data points.
- Supports both single-ticker lookups and bulk data downloads.
- Integrates directly into Python workflows for automated data processing.
- Includes methods for both annual and quarterly financial reporting data.
Usage examples
- “Get the latest income statement for AAPL.”
- The agent will use the yfinance library to fetch and display the annual income statement data for Apple Inc.
- “Compare the historical price data for MSFT and TSLA over the last year.”
- The agent will use yf.download to retrieve and present the historical price performance for both tickers for the requested period.
Install
Download the skill as a ZIP:
https://mp-staging.autogineer.com/agent-skills/himself65/yfinance-data/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip yfinance-data.zip -d .agents/skills
Documentation by Alex Yang
yfinance Data Skill
If your host has not already executed the shell probes below (for example, in Codex), run the commands inside the ! wrappers with its shell tool before choosing a setup path. Use the actual output; if shell access is unavailable, report that limitation.
Fetches financial and market data from Yahoo Finance using the yfinance Python library.
Important: yfinance is not affiliated with Yahoo, Inc. Data is for research and educational purposes.
Step 1: Ensure yfinance Is Available
Current environment status:
!`python3 -c "exec('try:\n import yfinance\n print(\'yfinance \' + yfinance.__version__ + \' installed\')\nexcept Exception:\n print(\'YFINANCE_NOT_INSTALLED\')')"`If YFINANCE_NOT_INSTALLED, install it before running any code:
import subprocess, sys
subprocess.check_call([sys.executable, "-m", "pip", "install", "-q", "yfinance"])If yfinance is already installed, skip the install step and proceed directly.
Step 2: Identify What the User Needs
Match the user's request to one or more data categories below, then use the corresponding code from references/api_reference.md.
| User Request | Data Category | Primary Method |
|---|---|---|
| Stock price, quote | Current price | ticker.info or ticker.fast_info |
| Price history, chart data | Historical OHLCV | ticker.history() or yf.download() |
| Balance sheet | Financial statements | ticker.balance_sheet |
| Income statement, revenue | Financial statements | ticker.income_stmt |
| Cash flow | Financial statements | ticker.cashflow |
| Dividends | Corporate actions | ticker.dividends |
| Stock splits | Corporate actions | ticker.splits |
| Options chain, calls, puts | Options data | ticker.option_chain() |
| Earnings, EPS | Analysis | ticker.earnings_history |
| Analyst price targets | Analysis | ticker.analyst_price_targets |
| Recommendations, ratings | Analysis | ticker.recommendations |
| Upgrades/downgrades | Analysis | ticker.upgrades_downgrades |
| Institutional holders | Ownership | ticker.institutional_holders |
| Insider transactions | Ownership | ticker.insider_transactions |
| Company overview, sector | General info | ticker.info |
| Compare multiple stocks | Bulk download | yf.download() |
| Screen/filter stocks | Screener | yf.screen() + yf.EquityQuery |
| Sector/industry data | Market data | yf.Sector / yf.Industry |
| News | News | ticker.news |
Step 3: Write and Execute the Code
General pattern
import yfinance as yf
ticker = yf.Ticker("AAPL")
# ... use the appropriate method from the referenceKey rules
Always wrap in try/except — Yahoo Finance may rate-limit or return empty data
Use
yf.download()for multi-ticker comparisons — it's faster with multi-threadingFor options, list expiration dates first with
ticker.optionsbefore callingticker.option_chain(date)For quarterly data, use
quarterly_prefix:ticker.quarterly_income_stmt,ticker.quarterly_balance_sheet,ticker.quarterly_cashflowFor large date ranges, be mindful of intraday limits — 1m data only goes back ~7 days, 1h data ~730 days
Print DataFrames clearly — use
.to_string()or.to_markdown()for readability, or select key columnsTimezone handling — yfinance returns tz-aware datetime indices (e.g.,
America/New_York). When comparing dates, always usepd.Timestamp(..., tz=...)or strip timezones with.tz_localize(None). See the reference file for details.
Valid periods and intervals
| Periods | 1d, 5d, 1mo, 3mo, 6mo, 1y, 2y, 5y, 10y, ytd, max |
|---|---|
| Intervals | 1m, 2m, 5m, 15m, 30m, 60m, 90m, 1h, 1d, 5d, 1wk, 1mo, 3mo |
Step 4: Present the Data
Answer with the numbers the user asked for first, then the supporting table (markdown, or a trimmed DataFrame with the key columns). Call out anything notable in the data — an earnings beat or miss, unusual volume, a dividend change — and add context such as sector averages, historical ranges, or analyst consensus where it changes how the numbers read. If the user wants a chart, pair the data with a visualization.
Reference Files
references/api_reference.md— Complete yfinance API reference with code examples for every data category
Read the reference file when you need exact method signatures or edge case handling.
Files
- ATTRIBUTION.mdAdded by AutoGineer887 B
- LICENSELicence file added by AutoGineer1.0 KiB
- README.md1.7 KiB
- SKILL.md5.2 KiB
- references/api_reference.md9.2 KiB
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Needs: Needs Python
Security
What our scanner noticed· Low risk
- Instructions that use the network
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- Alex Yang
- Publisher
- Alex Yang (Community)
- Source
- himself65/finance-skills · plugins/market-analysis/skills/yfinance-data · commit a085078
- Licence
- MIT License (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by Alex Yang.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download yfinance-data.zip