mcpField
A
alpha-vantage

alpha-vantage

github.com/sickn33数据与数据库48.9k128 次安装1 天前更新
代码仓库

关于 alpha-vantage

alpha-vantage 技能通过 Alpha Vantage API 获取全球金融市场数据,面向需要查询行情、基本面或经济指标的开发者和分析者。数据范围包括股票、外汇、加密货币、大宗商品及技术指标,使用时需要 API 密钥。

主要功能

  1. 01查询股票行情与历史序列
  2. 02获取期权及公司基本面数据
  3. 03查询外汇和加密货币数据
  4. 04获取大宗商品与经济指标
  5. 05计算 50 多种技术指标

适用场景

  1. 01获取股票最新报价和日线数据
  2. 02分析公司财务报表与分红
  3. 03查询汇率或加密货币历史数据
  4. 04查看经济指标和技术指标

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill alpha-vantage

安装后在 Claude Code 中输入/alpha-vantage确认已加载。

详细介绍

Alpha Vantage — 金融市场数据

访问 20 多年的全球金融数据:股票、期权、外汇、加密货币、大宗商品、经济指标和 50 多种技术指标。

API 密钥设置(必需)

  1. 在 https://www.alphavantage.co/support/#api-key 获取免费密钥(可购买高级套餐以提高速率限制)
  2. 设置为环境变量:
read -rsp "Alpha Vantage API key: " ALPHAVANTAGE_API_KEY
echo
export ALPHAVANTAGE_API_KEY

安装

uv pip install requests pandas

基础 URL 和请求模式

所有请求都发送至:

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()

快速入门示例

# 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 类别

类别主要功能
时间序列(股票)GLOBAL_QUOTE、TIME_SERIES_INTRADAY、TIME_SERIES_DAILY、TIME_SERIES_WEEKLY、TIME_SERIES_MONTHLY
期权REALTIME_OPTIONS、HISTORICAL_OPTIONS
Alpha IntelligenceNEWS_SENTIMENT、EARNINGS_CALL_TRANSCRIPT、TOP_GAINERS_LOSERS、INSIDER_TRANSACTIONS、ANALYTICS_FIXED_WINDOW
基本面OVERVIEW、ETF_PROFILE、INCOME_STATEMENT、BALANCE_SHEET、CASH_FLOW、EARNINGS、DIVIDENDS、SPLITS
外汇(FX)CURRENCY_EXCHANGE_RATE、FX_INTRADAY、FX_DAILY、FX_WEEKLY、FX_MONTHLY
加密货币CURRENCY_EXCHANGE_RATE、CRYPTO_INTRADAY、DIGITAL_CURRENCY_DAILY
大宗商品GOLD(WTI 现货)、BRENT、NATURAL_GAS、COPPER、WHEAT、CORN、COFFEE、ALL_COMMODITIES
经济指标REAL_GDP、TREASURY_YIELD、FEDERAL_FUNDS_RATE、CPI、INFLATION、UNEMPLOYMENT、NONFARM_PAYROLL
技术指标SMA、EMA、MACD、RSI、BBANDS、STOCH、ADX、ATR、OBV、VWAP,以及 40 多种其他指标

常用参数

参数值说明
outputsizecompact / fullcompact = 最近 100 个数据点;full = 20 多年数据
datatypejson / csv默认值:json
interval1min、5min、15min、30min、60min、daily、weekly、monthly取决于端点
adjustedtrue / false根据拆股和股息进行调整

速率限制

  • 免费套餐:每天 25 次请求(截至 2026 年)
  • 高级套餐:更高的限制、实时数据和日内访问权限
  • HTTP 429 = 超出速率限制
  • 处理多个股票代码时,请在请求之间添加延迟
import time
# Add delay to avoid rate limits
time.sleep(0.5)  # 0.5s between requests on free tier

错误处理

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']}")

适用场景

当任务涉及上述主要领域或功能时,使用此技能。

限制

  • 仅当任务明确符合上述范围时,才使用此技能。
  • 不要将输出视为针对特定环境进行验证、测试或专家审查的替代品。
  • 如果缺少必要的输入、权限、安全边界或成功标准,请停止并请求澄清。

评论

支持 Markdown