Alpha vantage
Skill foryourhealth111-pixel/Vibe-Skills/bundled/skills/alpha-vantage
VibeSkills is a general-purpose Skill that automatically routes local Skills and intelligently orchestrates harness workflows.
npx -y skills add foryourhealth111-pixel/Vibe-Skills --skill alpha-vantageAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
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.
The file declares its own license as Unknown. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
5.3 KB, as published. Nobody here has run it
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)
- Get a free key at https://www.alphavantage.co/support/#api-key (premium plans available for higher rate limits)
- 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
| Category | Key Functions |
|---|---|
| Time Series (Stocks) | GLOBAL_QUOTE, TIME_SERIES_INTRADAY, TIME_SERIES_DAILY, TIME_SERIES_WEEKLY, TIME_SERIES_MONTHLY |
| Options | REALTIME_OPTIONS, HISTORICAL_OPTIONS |
| Alpha Intelligence | NEWS_SENTIMENT, EARNINGS_CALL_TRANSCRIPT, TOP_GAINERS_LOSERS, INSIDER_TRANSACTIONS, ANALYTICS_FIXED_WINDOW |
| Fundamentals | OVERVIEW, ETF_PROFILE, INCOME_STATEMENT, BALANCE_SHEET, CASH_FLOW, EARNINGS, DIVIDENDS, SPLITS |
| Forex (FX) | CURRENCY_EXCHANGE_RATE, FX_INTRADAY, FX_DAILY, FX_WEEKLY, FX_MONTHLY |
| Crypto | CURRENCY_EXCHANGE_RATE, CRYPTO_INTRADAY, DIGITAL_CURRENCY_DAILY |
| Commodities | GOLD (WTI spot), BRENT, NATURAL_GAS, COPPER, WHEAT, CORN, COFFEE, ALL_COMMODITIES |
| Economic Indicators | REAL_GDP, TREASURY_YIELD, FEDERAL_FUNDS_RATE, CPI, INFLATION, UNEMPLOYMENT, NONFARM_PAYROLL |
| Technical Indicators | SMA, EMA, MACD, RSI, BBANDS, STOCH, ADX, ATR, OBV, VWAP, and 40+ more |
Common Parameters
| Parameter | Values | Notes |
|---|---|---|
outputsize | compact / full | compact = last 100 points; full = 20+ years |
datatype | json / csv | Default: json |
interval | 1min, 5min, 15min, 30min, 60min, daily, weekly, monthly | Depends on endpoint |
adjusted | true / false | Adjust 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.)