我正在尝试从 GDAX API 获取给定产品在一段时间内的历史定价数据。我理解以下注释:
单个请求的最大数据点数为 350 个蜡烛。如果您选择的开始/结束时间和粒度将导致超过 350 个数据点,您的请求将被拒绝。如果您希望在更大的时间范围内检索细粒度数据,则需要使用新的开始/结束范围发出多个请求。
但是,如果我想使用以下代码获取 1 年期间的每日值:
const Gdax = require('gdax');
const publicClient = new Gdax.PublicClient();
publicClient.getProductHistoricRates(
'BTC-USD',
{ granularity: 60,
start: '2017-01-01', end: '2018-01-01' }
).then((res) => {
console.log(res)
});
然后我收到以下错误消息:
{消息:'粒度对于请求的时间范围太小'}
这是有道理的,因为会有 365 个结果大于 350 个限制。我相信我可以查询1st Jan -> 16th Dec和第二个查询16th Dec -> 31st Dec。但是,以下注意事项:
历史汇率数据可能不完整。对于没有刻度的区间,不会发布任何数据。
建议特别是在较小的间隔内,该逻辑可能不合理。有没有更智能的方法来枚举超过 350 个数据点?