全部文章
工程

为什么 Stratum 使用 Bitfinex 账本数据

ST
Stratum Engineering
·2026年5月12日·8 分钟阅读

当你询问一个借贷机器人上个月赚了多少钱时,这份报告应该能够轻松地与 Bitfinex 自有的资金数据对账。这一切要从账本事件开始,而不是从醒目的 APR 开始。

一份简单的余额快照可能有用,但对于便于审计的报告来说还不够。存款、转账、手续费、利息入账、货币兑换的时点以及冲正,都会随着时间推移影响出借人所看到的数字。

正因如此,Stratum 将 Bitfinex 账本事件作为报告的数据来源。每一笔入账或手续费都可以连同原始负载一起存储,并在你后续导出、复核或对账时回溯查证。

“真正有用的承诺不是魔法般的精确,而是可追溯性:报告中的每一行都应能追溯回交易所数据。”

基于账本的方法

Stratum 会同步 Bitfinex 资金账本数据,按事件标识去重,并在可行的情况下保留原始的交易所负载。这为报告提供了一条稳定的追溯路径,可以回溯到 Bitfinex 当时返回的内容。

typescript · ledger-replay.ts
const events = await bitfinex.ledger.list({
  category: 'funding-credit',
  start: lastSyncCursor,
});

for (const e of events) {
  await db.ledger.upsert({
    id: e.id,                          // dedupe key
    timestamp: e.mts,                  // ms since epoch
    currency: e.currency,
    amount: e.amount,                  // signed, native units
    usdAt: await fxAt(e.currency, e.mts),
    raw: e,                            // archive original
  });
}

最后那个字段 —— raw —— 才是关键所在。保留原始负载能让报告在日后更易于调试和解释。

这能给你带来什么

对这篇文章有疑问或反馈?加入社区候补名单,待社区上线时我们会开放讨论。