Kraken-API OHLC 请求不支持 'since' 参数
Kraken-API OHLC request doesn't honor the 'since' parameter
我正在尝试使用 REST API 从 Kraken 检索 3 个月的 30 分钟蜡烛历史记录:
https://www.kraken.com/help/api
根据文档,我向 URL 提出了这个 POST 请求:
https://api.kraken.com/0/public/OHLC
以JSON格式传递以下参数:
{
"pair":"EOSETH",
"interval":30,
"since":1514404800
}
其中 1514404800 对应于日期的时间戳(以秒为单位):
2017 年 10 月 27 日 20 点半协调世界时
这在 API 文档中并不清楚,他们称之为 'ID',但我通过查看返回值得出了这个结论。
所以我期待返回的响应包含从该日期开始的条目。然后我将使用返回的最后一个 ID 获取后续条目。
然而,我得到的第一个条目恰好对应于 15 天前。实际上,如果我根本不传递参数 'since',我会得到完全相同的结果,因此似乎完全忽略了参数。
也许 Kraken 改变了 API 而这个参数 'since' 被其他的代替了?
或者我误解了这个参数的语法,我做错了什么?
他们称之为 'ID' 但你是对的,这是 UNIX 时间戳。
我同意 API 文档中并不清楚。
返回的结果数量有限制,参见https://support.kraken.com/hc/en-us/articles/218198197-How-to-pull-all-trade-data-using-the-Kraken-REST-API
间隔 30 分钟,您将获得 15 天前的所有数据:https://api.kraken.com/0/public/OHLC?pair=EOSETH&since=0&interval=30
如果将间隔更改为 60 分钟,您将获得 1 个月前的数据:https://api.kraken.com/0/public/OHLC?pair=EOSETH&since=0&interval=60
以 1 分钟的间隔,您获得不到 1 天的数据(如上文所述):https://api.kraken.com/0/public/OHLC?pair=EOSETH&since=0&interval=30
我试过了,确实你无法获得 2017 年 10 月 27 日的所有 30 分钟数据。
似乎since
参数一旦达到限制就没用了。
如果没有,它会很好用(即昨天 https://api.kraken.com/0/public/OHLC?pair=EOSETH&since=1517774700&interval=30 的数据)。
一旦达到限制,就会从今天开始计数到过去,您只会获得最近 15 天的数据...
也许解决方案是,如文章所述,从交易数据构建您自己的 OHLC...
尝试联系支持人员澄清这一点(我已经联系他们解决另一个问题,他们回复得很快)。
(我写这个作为回答,因为评论的文字太多,如果它不能回答你的问题,抱歉)
这绕过了问题的 API 部分,但您可以从他们的网站下载历史数据:
https://support.kraken.com/hc/en-us/articles/360047124832-Downloadable-historical-OHLCVT-Open-High-Low-Close-Volume-Trades-data
我正在尝试使用 REST API 从 Kraken 检索 3 个月的 30 分钟蜡烛历史记录: https://www.kraken.com/help/api
根据文档,我向 URL 提出了这个 POST 请求: https://api.kraken.com/0/public/OHLC
以JSON格式传递以下参数:
{
"pair":"EOSETH",
"interval":30,
"since":1514404800
}
其中 1514404800 对应于日期的时间戳(以秒为单位):
2017 年 10 月 27 日 20 点半协调世界时
这在 API 文档中并不清楚,他们称之为 'ID',但我通过查看返回值得出了这个结论。
所以我期待返回的响应包含从该日期开始的条目。然后我将使用返回的最后一个 ID 获取后续条目。
然而,我得到的第一个条目恰好对应于 15 天前。实际上,如果我根本不传递参数 'since',我会得到完全相同的结果,因此似乎完全忽略了参数。
也许 Kraken 改变了 API 而这个参数 'since' 被其他的代替了?
或者我误解了这个参数的语法,我做错了什么?
他们称之为 'ID' 但你是对的,这是 UNIX 时间戳。
我同意 API 文档中并不清楚。
返回的结果数量有限制,参见https://support.kraken.com/hc/en-us/articles/218198197-How-to-pull-all-trade-data-using-the-Kraken-REST-API
间隔 30 分钟,您将获得 15 天前的所有数据:https://api.kraken.com/0/public/OHLC?pair=EOSETH&since=0&interval=30
如果将间隔更改为 60 分钟,您将获得 1 个月前的数据:https://api.kraken.com/0/public/OHLC?pair=EOSETH&since=0&interval=60
以 1 分钟的间隔,您获得不到 1 天的数据(如上文所述):https://api.kraken.com/0/public/OHLC?pair=EOSETH&since=0&interval=30
我试过了,确实你无法获得 2017 年 10 月 27 日的所有 30 分钟数据。
似乎since
参数一旦达到限制就没用了。
如果没有,它会很好用(即昨天 https://api.kraken.com/0/public/OHLC?pair=EOSETH&since=1517774700&interval=30 的数据)。
一旦达到限制,就会从今天开始计数到过去,您只会获得最近 15 天的数据...
也许解决方案是,如文章所述,从交易数据构建您自己的 OHLC...
尝试联系支持人员澄清这一点(我已经联系他们解决另一个问题,他们回复得很快)。
(我写这个作为回答,因为评论的文字太多,如果它不能回答你的问题,抱歉)
这绕过了问题的 API 部分,但您可以从他们的网站下载历史数据: https://support.kraken.com/hc/en-us/articles/360047124832-Downloadable-historical-OHLCVT-Open-High-Low-Close-Volume-Trades-data