Все публикации
ИНЖЕНЕРИЯ

Почему Stratum использует данные книги учёта Bitfinex

ST
Stratum Engineering
·12 мая 2026·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 — и есть ключевое. Сохранение исходных данных упрощает отладку и объяснение отчётов в дальнейшем.

Что это вам даёт

Вопросы или отзывы по этой публикации? Присоединяйтесь к списку ожидания сообщества, и мы откроем обсуждение при запуске.