CoinGecko
CoinGecko 是全球最大的加密货币数据聚合平台,覆盖 15000+ 加密货币、700+ 交易所的市场数据。它提供价格、市值、交易量、交易所排名、衍生品数据等全方位市场信息。
核心价值:最全面的加密货币市场数据源,免费 API 可满足大多数分析需求,信任评分机制帮助识别数据质量。
CoinGecko 是什么
CoinGecko 成立于 2014 年,是最早的加密货币数据聚合平台之一。与 CoinMarketCap 相比,CoinGecko 的核心差异在于:
- 信任评分(Trust Score):对交易所和交易对进行可信度评级,帮助识别刷量
- 更广的覆盖范围:覆盖更多小市值代币和去中心化交易所
- 免费 API 更慷慨:免费版提供更多端点和更高频率
- 社区驱动:数据提交和验证对社区开放
核心功能
市场概览
- 全球加密市场总市值:所有加密货币的市值总和及变化趋势
- BTC 主导率:BTC 市值占总市值的比例,反映市场风险偏好
- 恐惧贪婪指数:市场情绪指标,0 = 极度恐惧,100 = 极度贪婪
- DeFi 市值:DeFi 代币的总市值及占比
币种详情
每个币种页面包含:
- 价格与涨跌幅:1h / 24h / 7d / 30d / 1y 多时间维度
- 市值与排名:全球排名、市值规模
- 交易量:24h 交易量及变化趋势
- 历史数据:可下载 CSV 格式的价格历史数据
- 社区数据:Twitter 关注者、Reddit 订阅者、GitHub 开发活跃度
- 相关新闻:最新相关新闻和公告
交易所排名
CoinGecko 的交易所排名基于信任评分,而非单纯的交易量:
- 信任评分:综合流动性、交易量真实性、API 可靠性、团队背景等维度
- 交易量调整:去除刷量后的真实交易量估算
- 分类排名:CEX / DEX / 衍生品交易所分别排名
衍生品数据
- 永续合约:各交易所的永续合约持仓量(Open Interest)、资金费率
- 期权数据:BTC / ETH 期权持仓量和到期分布
- 清算数据:多空清算统计
API 使用
CoinGecko 提供 RESTful API,免费版无需 API Key(但有速率限制)。
基础配置
| 项目 | 免费版 | 付费版(Analyst $29/月) |
|---|---|---|
| 速率限制 | 10-30 次/分钟 | 500 次/分钟 |
| 数据延迟 | 实时(部分端点有延迟) | 实时 |
| 历史数据 | 有限 | 完整 |
| 端点数量 | 基础端点 | 全部端点 |
API 基础地址:
https://api.coingecko.com/api/v3/1. 全局市场数据
bash
# 获取全球加密市场概览
curl -s "https://api.coingecko.com/api/v3/global" | python3 -m json.tool返回示例(关键字段):
json
{
"data": {
"active_cryptocurrencies": 13000,
"total_market_cap": { "usd": 2500000000000 },
"total_volume": { "usd": 80000000000 },
"market_cap_percentage": { "btc": 52.3, "eth": 17.1 },
"market_cap_change_percentage_24h_usd": -1.2
}
}关键字段解读:
market_cap_percentage.btc:BTC 主导率,>50% 表示市场偏向 BTC,资金从 Altcoin 流出market_cap_change_percentage_24h_usd:24h 总市值变化,快速下跌可能预示恐慌total_volume / total_market_cap:交易量/市值比,>5% 表示市场活跃
2. 交易所列表(含信任评分)
bash
# 获取交易所排名(按信任评分排序)
curl -s "https://api.coingecko.com/api/v3/exchanges?order=trust_score_desc&per_page=10" | \
python3 -c "
import json, sys
data = json.load(sys.stdin)
for ex in data:
print(f\"{ex['name']}: Trust={ex.get('trust_score', 'N/A')}, 24h_Vol={ex.get('trade_volume_24h_btc', 0):.0f} BTC\")
"关键字段:
trust_score:1-10 分,<5 的交易所数据可信度低trust_score_rank:基于信任评分的排名trade_volume_24h_btc:24h 交易量(BTC 计价)has_trading_incentive:是否有交易激励(有激励 = 可能刷量)
3. 衍生品数据
bash
# 获取衍生品交易所数据(含持仓量)
curl -s "https://api.coingecko.com/api/v3/derivatives/exchanges" | \
python3 -c "
import json, sys
data = json.load(sys.stdin)
for ex in data[:10]:
print(f\"{ex['name']}: OI={ex.get('open_interest_btc', 'N/A')} BTC, 24h_Vol={ex.get('trade_volume_24h', 'N/A')}\")
"
# 获取 BTC 永续合约数据
curl -s "https://api.coingecko.com/api/v3/derivatives?include_tickers='unexpired'&asset_id=bitcoin" | \
python3 -m json.tool | head -40关键字段:
open_interest_btc:持仓量(OI),OI 上升 + 价格上涨 = 多头信心强funding_rate:资金费率,正值 = 多头付费给空头(多头拥挤)basis:期货与现货价差,高基差 = 市场杠杆高
4. 币种市场数据
bash
# 获取 BTC 详细市场数据
curl -s "https://api.coingecko.com/api/v3/coins/bitcoin?localization=false&tickers=true&market_data=true" | \
python3 -c "
import json, sys
data = json.load(sys.stdin)
md = data['market_data']
print(f\"Price: \${md['current_price']['usd']:,.0f}\")
print(f\"Market Cap: \${md['market_cap']['usd']/1e9:,.1f}B\")
print(f\"24h Volume: \${md['total_volume']['usd']/1e9:,.1f}B\")
print(f\"24h Change: {md['price_change_percentage_24h']:+.1f}%\")
print(f\"7d Change: {md['price_change_percentage_7d']:+.1f}%\")
print(f\"ATH: \${md['ath']['usd']:,.0f} ({md['ath_date']['usd'][:10]})\")
print(f\"From ATH: {md['ath_change_percentage']['usd']:+.1f}%\")
"
# 获取多个币种的市场数据(精简版)
curl -s "https://api.coingecko.com/api/v3/coins/markets?vs_currency=usd&ids=bitcoin,ethereum,solana&order=market_cap_desc" | \
python3 -c "
import json, sys
data = json.load(sys.stdin)
for coin in data:
print(f\"{coin['name']}: \${coin['current_price']:,.2f} MC={coin['market_cap']/1e9:.1f}B Vol={coin['total_volume']/1e6:.0f}M\")
"5. 历史价格数据
bash
# 获取 BTC 最近 30 天的历史价格
curl -s "https://api.coingecko.com/api/v3/coins/bitcoin/market_chart?vs_currency=usd&days=30" | \
python3 -c "
import json, sys
from datetime import datetime
data = json.load(sys.stdin)
prices = data['prices']
for ts, price in prices[-5:]:
date = datetime.fromtimestamp(ts/1000).strftime('%Y-%m-%d')
print(f'{date}: \${price:,.0f}')
"端点参数:
days:1/7/14/30/90/180/365/max- 返回数据包含
prices(价格)、market_caps(市值)、total_volumes(交易量)
与本平台的关系
CoinGecko 是本平台以下数据页的核心或辅助数据源:
| 数据页 | 使用 CoinGecko 数据 | 说明 |
|---|---|---|
| 市场概览页 | 全局市值、BTC 主导率 | 核心数据源 |
| 币种排行页 | 价格、市值、涨跌幅 | 核心数据源 |
| 交易所排名页 | 信任评分、交易量 | 核心数据源 |
| 衍生品数据页 | OI、资金费率 | 辅助数据源 |
| DeFi 分析页 | DeFi 市值占比 | 辅助数据源 |
数据解读
信任评分
CoinGecko 的信任评分(Trust Score)是评估交易所数据质量的核心工具:
| 评分 | 含义 | 数据可信度 |
|---|---|---|
| 8-10 | 顶级交易所,流动性好,数据真实 | 高 |
| 5-7 | 合规交易所,偶有刷量 | 中 |
| 1-4 | 小交易所,刷量严重 | 低 |
| 无评分 | 新上线或数据不足 | 极低 |
使用原则:做交易量分析时,应只使用信任评分 >= 7 的交易所数据,否则分析结果会被刷量数据严重扭曲。
交易量真实性
加密市场交易量刷量问题严重,CoinGecko 提供几个识别方法:
- 交易量/市值比:正常范围 0.5%-10%,>20% 可能刷量
- 信任评分:<5 的交易所交易量数据不可信
- 交易激励标记:
has_trading_incentive=true的交易所需额外审查 - 流动性深度:对比订单簿深度和报告的交易量,深度浅但交易量高 = 刷量
市值解读注意事项
- 流通市值 vs 完全稀释市值(FDV):关注流通市值,FDV 包含未解锁代币
- 市值排名变化:排名下降但价格持平 = 其他代币涨得更快
- 小市值币种数据:流动性差,报价可能不准确,CoinGecko 标记为 "Stale" 的数据不要使用
限制
API 限制
- 速率限制:免费版约 10-30 次/分钟,高频请求会被临时封禁
- 数据覆盖:部分小币种和 DEX 交易对数据不全
- 历史数据:免费版部分端点的历史数据有限制
- 实时性:部分端点有 1-5 分钟延迟
数据质量限制
- 价格来源:依赖交易所 API,交易所下线或 API 故障会导致数据缺失
- DeFi 数据:LP 代币和复杂 DeFi 头寸的估值可能不准确
- 链上数据:CoinGecko 不提供链上交易数据,需配合 Etherscan / Dune 使用
- 衍生品数据:部分小交易所的衍生品数据可能延迟
替代数据源
| 需求 | CoinGecko | 更好的替代 |
|---|---|---|
| DeFi TVL | 不覆盖 | DefiLlama |
| 链上交易 | 不覆盖 | Etherscan / Dune |
| 精准实时价格 | 有延迟 | DEX 链上价格 |
| 深度订单簿 | 不提供 | 交易所原生 API |
| 链上分析 | 不覆盖 | Dune / Nansen |
推荐使用流程
- 市场概览:从 CoinGecko 获取全局市场数据(市值、BTC 主导率、恐惧贪婪指数)
- 币种筛选:用 CoinGecko 的排名和过滤功能缩小关注范围
- 交易所验证:检查信任评分,过滤低质量交易所
- 深度分析:切换到 Dune / DefiLlama / Etherscan 做链上和协议级分析
- 交叉验证:关键数据用多个数据源交叉验证