You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CoinCap V2 API candles端点无OHLC数据返回问题排查求助

排查CoinCap API 2.0 candles端点返回空数据的非API故障原因

除了API自身故障外,以下是几个可能导致返回空数据的原因及排查方向:

  • 时间范围与K线周期不匹配
    你使用的示例中start和end时间仅相差2分钟左右,但interval设置为h8(8小时K线)——这个时间范围远小于单根K线的周期,自然不会有对应数据。需确保时间范围覆盖至少一个完整的K线周期,比如将时间跨度拉大到几天甚至几周。

  • 交易对/交易所无对应历史数据
    尽管ETH/BTC在Kraken有交易,但需确认CoinCap的数据源是否收录了该交易对的指定周期历史数据。可以先换用更主流的组合测试(比如Binance的BTC/USDT),验证是否能返回数据,排除交易对与交易所的匹配问题。

  • 时间戳超出交易对存在范围
    如果设置的start时间早于该交易对在目标交易所的上线时间,也会返回空数据。可先查询Kraken上ETH/BTC的上线时间,确保start时间晚于该节点。

  • API密钥请求头未正确配置
    虽然文档说明无需密钥即可请求,但使用密钥时需按要求放在Authorization头中(格式为Bearer YOUR_API_KEY)。若头信息缺失或格式错误,可能被限制访问历史数据,导致返回空。

  • 参数拼写或取值错误
    检查所有参数是否符合API要求:

    • exchange需用CoinCap支持的交易所ID,而非名称,可通过/v2/exchanges端点确认kraken是否为有效ID;
    • interval有效值为m1, m5, m15, m30, h1, h2, h4, h8, h12, d1, w1,确保h8拼写正确;
    • baseId和quoteId需用CoinCap的资产ID,可通过/v2/assets端点核对ethereum、bitcoin的有效性。
  • 请求限制导致数据返回异常
    部分端点可能有独立的频率限制,若短时间内频繁请求candles端点,可能被临时限制返回数据(通常会伴随错误码,但也存在无提示返回空的情况)。可降低请求频率或更换网络环境测试。

测试示例代码(调整时间范围+正确密钥头)

import requests
import time

# 设置时间范围为最近7天
end_timestamp = int(time.time() * 1000)
start_timestamp = end_timestamp - 7 * 24 * 60 * 60 * 1000

url = (
    f"https://api.coincap.io/v2/candles?exchange=kraken&interval=h8"
    f"&baseId=ethereum&quoteId=bitcoin&start={start_timestamp}&end={end_timestamp}"
)

headers = {
    "Authorization": "Bearer YOUR_API_KEY"  # 替换为你的API密钥
}

response = requests.get(url, headers=headers)
print(response.text)

内容的提问来源于stack exchange,提问作者Bais

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 19:22:14