Bitfinex数据api

时间:2017-11-04 03:35:00

标签: python rest api python-requests

我正在尝试使用bitfinex REST api获取历史OHLC数据,文档在这里:https://bitfinex.readme.io/v2/reference#rest-public-candles

我有以下代码:

try: 
     url = 'https://api.bitfinex.com/v2/candles/trade:1m:tBTCUSD/hist'
     params = { 'start': 1506816000, 'end': 1509674567 }
     r = requests.get(url, params = params)
     data = r.json()
     print(json.dumps(data, indent=2))

 except Exception, e:
     print e

当我运行代码时,我得到一个只包含100个元素的列表而不是给定时间段内的所有条形码,我尝试更改“限制”#39;参数但是它最大值为1000,这比1分钟的条件少一天。

我还尝试使用以下网址使用来自cryptowatch的市场数据API:https://api.cryptowat.ch/markets/gdax/btcusd/ohlc 但是无论我在开始和结束时间传递什么参数,它都会返回最后500个柱。 (但我希望能够指定时间范围并获得多个月的数据,就像大多数其他API一样)

有没有办法从Bitfinex获取历史数据?在大多数情况下,他们的API都有详细记录,所以我很惊讶只是获取历史数据非常困难。

1 个答案:

答案 0 :(得分:4)

Bitfinex API占用unix时间* 1000,意思是:

 params = { 'start': 1506816000000, 'end': 1509674567000 }

您还可以添加" sort ="参数按升序或降序对响应进行排序,也使您只能提供一个“开始”按钮。 param或' end' PARAM 例如:

https://api.bitfinex.com/v2/trades/tBTCUSD/hist?end=1509674567000&limit=1000&sort=-1

将返回一个回复,其中第一行是最接近的交易,发生在' 1509674567000'时间戳(' 1509674567'在常规的unix时间内)和最后一行只是999交易之前' 1509674567000' (应该在' 1509673162000')。