【问题标题】:OHLC data for bitcoin using bitfinex's API - issue with API使用 bitfinex 的 API 的比特币 OHLC 数据 - API 问题
【发布时间】:2017-06-20 03:07:20
【问题描述】:

使用this API 调用我想获得一个完整的 BTCUSD 数据集,用于 5 分钟 OHLC 数据。

我在 python 中尝试了以下代码,但 API 没有返回正确的数据:

import requests
import pandas as pd

r = requests.post('https://api.bitfinex.com/v2/candles/trade:5m:tBTCUSD/hist', data={'start': 1434764470000, 'end': 1497922870000})
data = r.json()

任何人都可以提供任何帮助吗?

【问题讨论】:

    标签: python api bitcoin trading


    【解决方案1】:

    大卫!

    Bitfinex v2 端点实际上是通过 HTTP GET 而不是 POST 访问的。

    参数应该像这样附加到 URL 查询中:

    https://api.bitfinex.com/v2/candles/trade:5m:tBTCUSD/hist?start=1434764470000&end=1497922870000

    此外,您应该更具体地说明正确的数据 的含义。如果您根本没有得到答案 - 这可能是由于请求格式不正确。如果价格与您对所请求历史时期的预期不符 - 您可能需要确保您的时间戳是 UTC 时间。

    如果您没有在 HTTP GET URL 查询字符串中传递开始和结束过滤器,您总是会得到最后 100 根蜡烛,就好像根本没有开始/结束过滤一样。

    import requests
    url = 'https://api.bitfinex.com/v2/candles/trade:5m:tBTCUSD/hist'
    params = { 'start': 1434764470000, 'end': 1497922870000 }
    r = requests.get(url, params = params)
    data = r.json()
    print(data)
    

    【讨论】:

    • 当我运行这个完全相同的代码时,我得到一个空列表返回给我。
    • @abcla,当我用 python 执行它时,我得到了这个:>>> print(data) [[1497922800000, 2607.4, 2607.5, 2609.9, 2607.2, 14.19067283], ...
    • 嗨,对不起,我写的东西有误。该代码确实返回了一个结果,但它最多只返回 1000 个 ochl 柱,有没有办法让它在给定的时间段内返回所有柱?
    • @abcla,使用ccxt,您可以像此示例中所示那样执行此操作:github.com/ccxt/ccxt/blob/master/examples/py/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-18
    • 2014-04-22
    • 1970-01-01
    • 1970-01-01
    • 2017-12-19
    相关资源
    最近更新 更多