financial data fetcher

Gets real-time stock prices, news, and company data to help make trading decisions.

Installation
Run `npx skills add "https://github.com/gracefullight/stock-checker" --skill "financial-data-fetcher"` to install this skill, then follow its SKILL.md instructions for my next request.

Paste this into Claude Code, Cursor, or any agent that can run commands.

SKILL.mdShow the author's original SKILL.md
---
skill_id: financial_data_fetcher
name: Financial Data Fetcher
version: 1.0.0
description: Fetches real-time and historical market data, financial news, and fundamental data for trading decisions
author: Trading System CTO
tags: [market-data, trading, finance, real-time]
tools:
  - get_price_data
  - get_latest_news
  - get_fundamentals
  - get_market_snapshot
dependencies:
  - alpaca-trade-api
  - yfinance
  - requests
  - python-dotenv
---

# Financial Data Fetcher Skill

Provides comprehensive market data access for AI trading agents.

## Overview

This skill fetches:
- Real-time and historical OHLCV price data
- Financial news from multiple sources
- Fundamental data (P/E ratios, earnings, market cap)
- Market snapshots and quotes

## Tools

### 1. get_price_data

Fetches historical or real-time price data for symbols.

**Parameters:**
- `symbols` (required): List of ticker symbols (e.g., ["AAPL", "MSFT"])
- `timeframe` (optional): "1Min", "5Min", "1Hour", "1Day" (default: "1Day")
- `start_date` (optional): Start date in YYYY-MM-DD format
- `end_date` (optional): End date in YYYY-MM-DD format
- `limit` (optional): Number of bars to fetch (default: 100)

**Returns:**
```json
{
  "success": true,
  "data": {
    "AAPL": [
      {
        "timestamp": "2025-10-30T09:30:00Z",
        "open": 150.25,
        "high": 151.50,
        "low": 149.80,
        "close": 151.00,
        "volume": 5000000
      }
    ]
  }
}
```

**Usage:**
```bash
python scripts/fetch_data.py get_price_data --symbols AAPL MSFT --timeframe 1Day --limit 30
```

### 2. get_latest_news

Fetches recent financial news for symbols.

**Parameters:**
- `symbols` (required): List of ticker symbols
- `limit` (optional): Number of news items (default: 10)
- `sources` (optional): News sources to query (default: all)

**Returns:**
```json
{
  "success": true,
  "data": [
    {
      "symbol": "AAPL",
      "headline": "Apple announces new product line",
      "summary": "...",
      "source": "Bloomberg",
      "url": "https://...",
      "published_at": "2025-10-30T08:00:00Z",
      "sentiment": "positive"
    }
  ]
}
```

### 3. get_fundamentals

Fetches fundamental data for symbols.

**Parameters:**
- `symbols` (required): List of ticker symbols
- `metrics` (optional): Specific metrics to fetch (default: all)

**Returns:**
```json
{
  "success": true,
  "data": {
    "AAPL": {
      "market_cap": 3000000000000,
      "pe_ratio": 28.5,
      "eps": 6.42,
      "dividend_yield": 0.52,
      "beta": 1.2,
      "52_week_high": 200.00,
      "52_week_low": 120.00
    }
  }
}
```

### 4. get_market_snapshot

Gets current market snapshot with real-time quotes.

**Parameters:**
- `symbols` (required): List of ticker symbols

**Returns:**
```json
{
  "success": true,
  "data": {
    "AAPL": {
      "price": 151.00,
      "bid": 150.98,
      "ask": 151.02,
      "bid_size": 100,
      "ask_size": 200,
      "last_trade_time": "2025-10-30T15:59:59Z",
      "volume": 50000000,
      "vwap": 150.75
    }
  }
}
```

## Implementation

See `scripts/fetch_data.py` for full implementation using Alpaca API and yfinance.

## Rate Limiting

- Alpaca API: 200 requests/minute
- News API: 25 requests/day (free tier)
- Caching: 5-minute cache for real-time data

## Error Handling

All tools return consistent error format:
```json
{
  "success": false,
  "error": "Error message",
  "error_code": "INVALID_SYMBOL"
}
```

## Integration Example

```python
from claude_skills import load_skill

skill = load_skill("financial_data_fetcher")

# Get price data
result = skill.get_price_data(
    symbols=["AAPL", "MSFT"],
    timeframe="1Day",
    limit=30
)

if result["success"]:
    prices = result["data"]
    # Use in trading strategy
```

Ships with 1 supporting file:

  • metadata.json

Mirrored from the author's public source. Install counts from the open skills registry.

The systems behind these skills get built for partners every week.

Partner with us