twelvedata

twelvedata

股票、外汇和商品价格:实时报价和历史K线。 用于查询传统市场价格(例如AAPL报价、EUR/USD图表、黄金价格、SPY历史数据)。不适用于加密货币。

18Star
9Fork
更新于 2026/7/14
SKILL.md
readonly只读
name
twelvedata
description

股票、外汇和商品价格:实时报价和历史K线。 用于查询传统市场价格(例如AAPL报价、EUR/USD图表、黄金价格、SPY历史数据)。不适用于加密货币。

version
2.0.4

Twelve Data

股票、外汇和商品价格数据。仅限传统市场——不适用于加密货币。

脚本用法

本技能提供一个包含所有函数的 exports.py 文件。通过 bash 块调用:

python3 - <<'EOF'
import sys, json
sys.path.insert(0, "/data/workspace/skills/twelvedata")
from exports import twelvedata_price, twelvedata_quote, twelvedata_time_series

# 单个报价
print(twelvedata_quote(symbol="AAPL"))

# 时间序列(最近30根日K线)
series = twelvedata_time_series(symbol="AAPL", interval="1day", outputsize=30)
print(json.dumps(series.get("values", [])[:3], indent=2))
EOF

exports.py 中的可用函数:twelvedata_price, twelvedata_quote,
twelvedata_time_series, twelvedata_eod, twelvedata_quote_batch,
twelvedata_price_batch, twelvedata_search, twelvedata_stocks,
twelvedata_forex_pairs, twelvedata_exchanges。需要精确签名时直接阅读 exports.py

函数参考(签名)

所有函数位于 exports.py 中。符号使用 TwelveData 格式(例如 AAPL
EUR/USDXAU/USD)。使用 prepost=True 获取美股盘前/盘后数据。

函数 描述
twelvedata_price(symbol, prepost=False) 单个符号的当前价格。
twelvedata_price_batch(symbols, prepost=False) 多个符号的价格(symbols 为逗号分隔字符串)。
twelvedata_quote(symbol, prepost=False) 详细报价:价格、成交量、52周高低、涨跌幅。
twelvedata_quote_batch(symbols, prepost=False) 多个符号的详细报价。
twelvedata_time_series(symbol, interval='1day', outputsize=30, start_date=None, end_date=None, prepost=False) OHLCV K线。interval 可选 1min/5min/15min/30min/1h/2h/4h/1day/1week/1month
twelvedata_eod(symbol, date=None, prepost=False) 指定日期的收盘价(默认最新)。
twelvedata_search(query) 按名称或代码搜索符号。
twelvedata_stocks(exchange=None, country=None) 列出支持的股票(可筛选)。
twelvedata_forex_pairs() 列出所有支持的外汇对。
twelvedata_exchanges() 列出支持的交易所。

关键词 → 工具查找

用户询问 工具 不要用这个
"AAPL 股价", "current price" (单个) twelvedata_quote 不要用 twelvedata_price(信息较少)
"只要价格数字" twelvedata_price
"多只股票对比" (2个以上) twelvedata_quote_batch 不要多次调用 twelvedata_quote
"K线", "历史数据", "time series" twelvedata_time_series
"收盘价" twelvedata_eod
"找股票代码" twelvedata_search
"NASDAQ 有哪些股票" twelvedata_stocks
"汇率", "EUR/USD" twelvedata_quote(symbol="EUR/USD")
"外汇对列表" twelvedata_forex_pairs
"金价", "oil price" twelvedata_quote(symbol="XAU/USD") 不要用 CoinGecko
"BTC price", 任何加密货币 CoinGecko coin_price ❌ 加密货币绝不用 twelvedata

TwelveData vs CoinGecko — 边界

资产类别 使用 原因
股票 (AAPL, TSLA) TwelveData CoinGecko 没有股票
外汇 (EUR/USD) TwelveData CoinGecko 没有外汇
商品 (黄金、原油) TwelveData CoinGecko 没有商品
加密货币 (BTC, ETH, SOL) CoinGecko TwelveData 加密货币数据有限/不可靠

常见错误 — 调用前请阅读

❌ 错误1:用 TwelveData 查询加密货币

用户: "BTC 价格"
❌ 错误: twelvedata_quote(symbol="BTC/USD")
✅ 正确: coin_price(ids="bitcoin")  ← CoinGecko

❌ 错误2:对多只股票分别调用 quote

用户: "AAPL MSFT GOOGL 现在什么价"
❌ 错误: twelvedata_quote("AAPL"), twelvedata_quote("MSFT"), twelvedata_quote("GOOGL")  ← 3次调用
✅ 正确: twelvedata_quote_batch(symbols=["AAPL", "MSFT", "GOOGL"])  ← 1次调用,最多120个符号

❌ 错误3:外汇缺少斜杠

❌ 错误: twelvedata_quote(symbol="EURUSD")
✅ 正确: twelvedata_quote(symbol="EUR/USD")  ← 始终使用斜杠格式

同样:USD/CNH 而非 USDCNHGBP/JPY 而非 GBPJPY

❌ 错误4:期望 quote 返回买卖价

❌ 错误: "EUR/USD 买入价: 1.0850, 卖出价: 1.0852"  ← quote 只返回收盘价
✅ 正确: "EUR/USD 当前价格: 1.0851(收盘价/最新价 — 买卖价差不可用)"

❌ 错误5:错误的间隔格式

❌ 错误: twelvedata_time_series(interval="1D")  ← 大写
✅ 正确: twelvedata_time_series(interval="1day")

有效值:1min, 5min, 15min, 30min, 1h, 2h, 4h, 8h, 1day, 1week, 1month

❌ 错误6:当 compact 足够时使用 full

用户: "AAPL 最近走势"
❌ 错误: twelvedata_time_series(symbol="AAPL", interval="1day", outputsize="full")  ← 5000根K线
✅ 正确: twelvedata_time_series(symbol="AAPL", interval="1day", outputsize="compact")  ← 30根K线

仅当用户明确需要深度历史时才使用 full

符号参考

商品(已验证)

资产 符号
黄金 XAU/USD
白银 XAG/USD
铂金 XPT/USD
钯金 XPD/USD
原油 (WTI) WTI/USD
天然气 NG/USD

热门外汇对

货币对 符号
欧元/美元 EUR/USD
英镑/美元 GBP/USD
美元/日元 USD/JPY
美元/离岸人民币 USD/CNH

使用 twelvedata_search 发现其他符号。

盘前/盘后数据

twelvedata_quote(symbol="AAPL", prepost=true)
twelvedata_time_series(symbol="AAPL", interval="1min", prepost=true)

可用时返回 premarket_change, premarket_change_percent, postmarket_change, postmarket_change_percent

输出大小

  • compact — 最近30个数据点(默认,更快)。用于“最近走势”。
  • full — 最多5000个数据点。用于深度分析/绘图。

代理安全使用

  1. Agent 工具调用:始终优先使用 twelvedata_* 工具(本技能)。
  2. 平台代码 (skills/, tools/):使用 core.http_client
  3. 工作区脚本 (bash):不要直接调用 TwelveData。使用技能工具。

复合查询

股票比较

1. twelvedata_quote_batch(symbols=["AAPL", "MSFT", "GOOGL", "TSLA"])
2. twelvedata_time_series(symbol="AAPL", interval="1day", outputsize="compact")  ← 仅对用户最关心的那只股票

宏观仪表盘(股票 + 外汇 + 商品)

1. twelvedata_quote_batch(symbols=["SPY", "QQQ"])          → 美国指数
2. twelvedata_quote_batch(symbols=["EUR/USD", "USD/JPY"])   → 外汇
3. twelvedata_quote(symbol="XAU/USD")                       → 黄金