CtrlK
BlogDocsLog inGet started
Tessl Logo

alpha-vantage

Access real-time and historical stock market data, forex rates, cryptocurrency prices, commodities, economic indicators, and 50+ technical indicators via the Alpha Vantage API. Use when fetching stock prices (OHLCV), company fundamentals (income statement, balance sheet, cash flow), earnings, options data, market news/sentiment, insider transactions, GDP, CPI, treasury yields, gold/silver/oil prices, Bitcoin/crypto prices, forex exchange rates, or calculating technical indicators (SMA, EMA, MACD, RSI, Bollinger Bands). Requires a free API key from alphavantage.co.

79

Quality

100%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Alpha Vantage — Financial Market Data

Access 20+ years of global financial data: equities, options, forex, crypto, commodities, economic indicators, and 50+ technical indicators.

API Key Setup (Required)

  1. Get a free key at https://www.alphavantage.co/support/#api-key (premium plans available for higher rate limits)
  2. Set as environment variable:
export ALPHAVANTAGE_API_KEY="your_key_here"

Installation

uv pip install requests pandas

Base URL & Request Pattern

All requests go to:

https://www.alphavantage.co/query?function=FUNCTION_NAME&apikey=YOUR_KEY&...params
import requests
import os

API_KEY = os.environ.get("ALPHAVANTAGE_API_KEY")
BASE_URL = "https://www.alphavantage.co/query"

def av_get(function, **params):
    response = requests.get(BASE_URL, params={"function": function, "apikey": API_KEY, **params})
    return response.json()

Quick Start Examples

# Stock quote (latest price)
quote = av_get("GLOBAL_QUOTE", symbol="AAPL")
price = quote["Global Quote"]["05. price"]

# Daily OHLCV
daily = av_get("TIME_SERIES_DAILY", symbol="AAPL", outputsize="compact")
ts = daily["Time Series (Daily)"]

# Company fundamentals
overview = av_get("OVERVIEW", symbol="AAPL")
print(overview["MarketCapitalization"], overview["PERatio"])

# Income statement
income = av_get("INCOME_STATEMENT", symbol="AAPL")
annual = income["annualReports"][0]  # Most recent annual

# Crypto price
crypto = av_get("DIGITAL_CURRENCY_DAILY", symbol="BTC", market="USD")

# Economic indicator
gdp = av_get("REAL_GDP", interval="annual")

# Technical indicator
rsi = av_get("RSI", symbol="AAPL", interval="daily", time_period=14, series_type="close")

API Categories

CategoryKey Functions
Time Series (Stocks)GLOBAL_QUOTE, TIME_SERIES_INTRADAY, TIME_SERIES_DAILY, TIME_SERIES_WEEKLY, TIME_SERIES_MONTHLY
OptionsREALTIME_OPTIONS, HISTORICAL_OPTIONS
Alpha IntelligenceNEWS_SENTIMENT, EARNINGS_CALL_TRANSCRIPT, TOP_GAINERS_LOSERS, INSIDER_TRANSACTIONS, ANALYTICS_FIXED_WINDOW
FundamentalsOVERVIEW, ETF_PROFILE, INCOME_STATEMENT, BALANCE_SHEET, CASH_FLOW, EARNINGS, DIVIDENDS, SPLITS
Forex (FX)CURRENCY_EXCHANGE_RATE, FX_INTRADAY, FX_DAILY, FX_WEEKLY, FX_MONTHLY
CryptoCURRENCY_EXCHANGE_RATE, CRYPTO_INTRADAY, DIGITAL_CURRENCY_DAILY
CommoditiesGOLD (WTI spot), BRENT, NATURAL_GAS, COPPER, WHEAT, CORN, COFFEE, ALL_COMMODITIES
Economic IndicatorsREAL_GDP, TREASURY_YIELD, FEDERAL_FUNDS_RATE, CPI, INFLATION, UNEMPLOYMENT, NONFARM_PAYROLL
Technical IndicatorsSMA, EMA, MACD, RSI, BBANDS, STOCH, ADX, ATR, OBV, VWAP, and 40+ more

Common Parameters

ParameterValuesNotes
outputsizecompact / fullcompact = last 100 points; full = 20+ years
datatypejson / csvDefault: json
interval1min, 5min, 15min, 30min, 60min, daily, weekly, monthlyDepends on endpoint
adjustedtrue / falseAdjust for splits/dividends

Rate Limits

  • Free tier: 25 requests/day (as of 2026)
  • Premium plans: higher limits, real-time data, intraday access
  • HTTP 429 = rate limit exceeded
  • Add delays between requests when processing multiple symbols
import time
# Add delay to avoid rate limits
time.sleep(0.5)  # 0.5s between requests on free tier

Error Handling

data = av_get("GLOBAL_QUOTE", symbol="AAPL")

# Check for API errors
if "Error Message" in data:
    raise ValueError(f"API Error: {data['Error Message']}")
if "Note" in data:
    print(f"Rate limit warning: {data['Note']}")
if "Information" in data:
    print(f"API info: {data['Information']}")

Reference Files

Load these for detailed endpoint documentation:

  • time-series.md — Stock OHLCV data, quotes, bulk quotes, market status
  • fundamentals.md — Company overview, financial statements, earnings, dividends, splits
  • options.md — Realtime and historical options chain data
  • intelligence.md — News/sentiment, earnings transcripts, insider transactions, analytics
  • forex-crypto.md — Forex exchange rates and cryptocurrency prices
  • commodities.md — Gold, silver, oil, natural gas, agricultural commodities
  • economic-indicators.md — GDP, CPI, interest rates, employment data
  • technical-indicators.md — 50+ technical analysis indicators (SMA, EMA, MACD, RSI, etc.)
Repository
foryourhealth111-pixel/Vibe-Skills
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.