SuperAPI AI 工具集

tracking-crypto-prices

数据与分析

查看项目

更新于 10-15 12:12

技能介绍

用途

Tracking Crypto Prices 是一个基础技能,为加密插件生态提供实时与历史加密货币价格数据。它是该生态的数据层,有 10 多个其他技能依赖它获取价格信息,例如市场异动扫描器、加密投资组合追踪器、加密税务计算器、DeFi 收益优化器、流动性池分析器、质押奖励优化器、加密衍生品追踪器、DEX 聚合路由器、期权流分析器和套利机会发现器。

主要能力

  • 支持 10000+ 加密货币的实时价格查询。
  • 提供历史 OHLCV(开盘、最高、最低、收盘、成交量)数据,时间范围从 1 天到全部历史。
  • 多币种支持:USD、EUR、GBP 等 30+ 种货币。
  • 智能缓存以减少 API 调用。
  • 预定义观察列表(top10、defi、layer2、stablecoins、memecoins)和自定义观察列表。
  • 支持导出为 CSV/JSON 以便分析。

使用方式

前置条件

安装依赖:

pip install requests pandas yfinance

可选高级功能:

pip install python-dotenv  # 用于 API 密钥管理

API 设置(可选,用于提高速率限制):

  • 从 https://www.coingecko.com/en/api 获取免费 API 密钥。
  • 添加到 {baseDir}/config/settings.yaml 或设置环境变量 COINGECKO_API_KEY。

快速价格查询

查询单个加密货币当前价格:

python {baseDir}/scripts/price_tracker.py --symbol BTC

查询多个资产:

python {baseDir}/scripts/price_tracker.py --symbols BTC,ETH,SOL

使用观察列表

扫描预定义观察列表:

# 市值前 10
python {baseDir}/scripts/price_tracker.py --watchlist top10

# DeFi 代币
python {baseDir}/scripts/price_tracker.py --watchlist defi

# Layer 2 代币
python {baseDir}/scripts/price_tracker.py --watchlist layer2

可用观察列表:top10、defi、layer2、stablecoins、memecoins。

获取历史数据

获取 OHLCV 历史:

# 最近 30 天
python {baseDir}/scripts/price_tracker.py --symbol BTC --period 30d

# 最近 90 天并导出 CSV
python {baseDir}/scripts/price_tracker.py --symbol BTC --period 90d --output csv

# 自定义日期范围
python {baseDir}/scripts/price_tracker.py --symbol ETH --start 2024-01-01 --end 2024-12-31

配置设置

编辑 {baseDir}/config/settings.yaml 可自定义缓存 TTL、默认货币、自定义观察列表等。

输出格式

默认输出为价格表格,包含符号、价格、24 小时变化、24 小时成交量、市值等信息。使用 --format json 可输出 JSON 格式。历史数据可导出为 CSV,包含日期、开盘、最高、最低、收盘、成交量列。

错误处理

常见错误包括:未知符号(检查拼写,使用 --list 搜索)、速率限制超出(等待 60 秒或使用 API 密钥)、网络错误(检查连接,将使用缓存数据)、缓存过期(仍显示数据并警告,随后刷新)。技能会自动使用缓存、应用指数退避、在 CoinGecko 失败时回退到 yfinance,并作为最后手段显示带警告的过期缓存数据。

集成方式

其他技能可通过直接导入(推荐 Python 技能)、CLI 子进程或共享缓存文件 {baseDir}/data/cache.json 来使用本技能提供的价格数据。

文件结构

  • scripts/price_tracker.py:主 CLI 入口点
  • scripts/api_client.py:CoinGecko/yfinance 抽象
  • scripts/cache_manager.py:缓存读写与失效
  • scripts/formatters.py:输出格式化
  • config/settings.yaml:用户配置
  • data/cache.json:价格缓存(自动生成)

资源

  • CoinGecko API:主要数据源
  • yfinance:历史数据回退源
  • PRD.md:产品需求
  • ARD.md:架构文档

限制

资料中未提供关于收费、价格、平台支持范围、具体效果或使用步骤的更多细节。部分功能(如价格提醒设置)在示例中提及但未展开说明,具体实现暂未提供。