GDAX api - 获取返回不一致结果的历史汇率

Posted

技术标签:

【中文标题】GDAX api - 获取返回不一致结果的历史汇率【英文标题】:GDAX api - Get Historic Rates returning inconsistent results 【发布时间】:2017-12-06 18:35:03 【问题描述】:

在使用 GDAX api 调用历史价格时,使用以下方法:

https://api.gdax.com/products/ETH-EUR/candles?start=2017-07-02T15:25:00.00000Z&end=2017-07-02T16:12:00.00000Z&granularity=30

我总是收到 200 个代码响应,但有时它会返回:

[]

和其他时间:

[1499011,235,234.98,235,7.58286807999999] [149901235,234.4,235,17.72481] [1499011,233.71,11233.71,239011650,233.71,2351680,233.71,2351650,233.71,2351650,23335201990 ,233.71,0.85362734],[1499011350,233.71,233.71,233.71,233.71,1.5],[1499011320,233.48,233.67,233.48,233.67,5.22588745],[1499011290,233.48,233.48,233.48,233.48,1.11358574],[1499011200 ,233.48,233.48,233.48,233.48,1.70893649],[1499010990,233.44,233.47,233.44,233.47,8.34642375],[1499010270,230.11,233,231,233,9.30791793],[1499010240,231,231,231,231,10],[1499009850,233.02,233.02 ,233.02,233.02,0.0000428],[1499009640,230.26,231.64,231.64,230.26,10.81225691],[1499009250,231,231.55,231.55,231,15], [1499009100,231,231.92,231.92,231,20]]

谁能解释这种行为?

如果是达到限制的情况,我期待“429 太多请求”,但我很确定情况并非如此。

【问题讨论】:

您的问题已经 4 个月了。您仍然获得状态代码 200 吗?在他们的 Sandbox API 上,我现在不时收到 503 - 服务器过载。也许他们在过载的情况下返回了错误的 http 代码,现在已经修复了。 【参考方案1】:

根据您的网址,粒度似乎无效。如here 所述,有效粒度为 60, 300, 900, 3600, 21600, 86400,您的粒度为 30。

此查询https://api.gdax.com/products/ETH-EUR/candles?start=2017-07-02T15:25:00.00000Z&end=2017-07-02T16:12:00.00000Z&granularity=3600 为我返回一致的数据。

[[1499011200,232.16,239.58,233.48,235.25,334.9886663100001]]

我创建了一个工具,您可以在其中检查 url 参数、进行更改并尝试不同的方式。我发现如果请求正确,返回的数据是非常一致的。

https://gdaxurl.surge.sh/

【讨论】:

嘿,感谢您的评论!我很确定在撰写本文时文档中没有说明,但不能完全确定。【参考方案2】:

我认为这是您可以从任何 Rest API 中获得的。您应该始终验证从 API 返回的数据。

【讨论】:

以上是关于GDAX api - 获取返回不一致结果的历史汇率的主要内容,如果未能解决你的问题,请参考以下文章

如何从 GDAX websocket feed 获取实时出价/要价/价格

前端如何获取实时美元汇率

使用带有webpack的socket.io连接到GDAX websocket api

调用百度汇率api 获取各国的汇率值

GDAX沙盒的状态?

从 GDAX web socket feed 获取数据