0

我正在通过他们的 Node.JS 包使用 Bitfinex 的 WebSockets API v2 。我能够连接并获取我的钱包的快照。我还想获得一份关于我的交易历史的报告(可在网站上通过Reports > Trade History访问),但我无法通过 API 获得。

例如,通过如下方式进行身份验证后...

const BFX = require('bitfinex-api-node')

const bitfinexClient = new BFX(API_KEY, API_SECRET, {
  version: 2,
  transform: true
}).ws

bitfinexClient.on('open', () => {
  bws .auth()
})

...以下代码为我提供了我钱包的快照:

bitfinexClient.on('auth', () => {
  bitfinexClient.on('ws', (data) => {
    console.log(data)
  })
})

// Result:
// [ [ 'funding', 'ETH', 123456789, 0, null ],
//   [ 'funding', 'IOT', 123456789, 0, null ],
//   [ 'exchange', 'LTC', 123456789, 0, null ],
// etc.

...虽然以下内容没有提供任何帮助:

bitfinexClient.on('auth', () => {
  bitfinexClient.on('te', (data) => {
    console.log(data)
  })
})

我已经尝试订阅'trade', 'te', 'tu', 'os', 和'hos'事件,但我似乎没有得到其中任何一个。

我也尝试过使用ccxt。ccxt 有fetchMyTrades()fetchMyOrders()功能,它应该给我我需要的数据。但是,对于 API 的 v1 和 v2,它们都会返回一个错误,指出fetchMyTrades/fetchMyOrdersnot supported yet

目前真的没有办法从 Bitfinex API 获取交易历史报告吗?如果有,它是如何完成的?

4

1 回答 1

1

您仍然可以使用 CCXT 从 Bitfinex v1 获取您的私人交易,如下所示:

"use strict";

const ccxt = require ('ccxt')

const exchange = new ccxt.bitfinex ({
    'apiKey': 'YOUR_API_KEY', // ←---- change your credentials
    'secret': 'YOUR_SECRET',
});

(async () => {
    await exchange.loadMarkets ()
    const myTrades = await exchange.private_post_mytrades ({
        'symbol': exchange.markets['BTC/USD'].id, // ←-- choose your pair
        'timestamp': exchange.seconds () - 86400 * 365, // ← last 365 days
    })
    console.log (myTrades)
}) ()

更多关于它的信息:

于 2017-11-28T17:45:50.913 回答