tetherV0
Divvi Protocol - KPI calculation functions
Divvi Protocol - KPI calculation functions / tetherV0
tetherV0
Functions
calculateKpi()
function calculateKpi(params): Promise<KpiResults>
Defined in: tetherV0/index.ts:178
Calculates eligible transaction count for Tether (USDT) activity across multiple networks.
KPI Unit: Transaction count (number of eligible transactions) where the net transfer value is >= 1 USDT or USDT0
Business Purpose: Measures the volume of significant Tether (USDT) transactions to or from a specific user across multiple blockchain networks. This metric quantifies user engagement with the Tether ecosystem and supports analysis of stablecoin usage patterns and cross-chain activity.
Protocol Context: Tether V0 tracks transaction volume to measure user participation in the stablecoin ecosystem across various networks. Transaction counts serve as a proxy for user engagement and economic activity, supporting stablecoin adoption analysis and cross-chain usage patterns.
Networks: Ethereum Mainnet, Avalanche Mainnet, Celo Mainnet, Unichain Mainnet, Ink Mainnet, Optimism Mainnet, Arbitrum One, Berachain Mainnet
Data Sources:
- HyperSync: Transfer event data from USDT and USDT0 token contracts on multiple networks via HyperSync client
- Block Data: Timestamps via
getBlockRange
utility for temporal filtering
Business Assumptions:
- Transactions with net value >= 1 USDT or USDT0 (1,000,000 smallest units) are considered significant
- User's economic impact is proportional to the number of eligible transactions across all networks
- Both incoming and outgoing transfers contribute to user activity measurement
Eligibility Criteria:
- Transactions must have a net transfer value (incoming - outgoing) >= 1 USDT or USDT0
- Transactions must fall within the specified time window
Calculation Method:
- Queries all transactions initiated by user wallet across all supported networks
- Retrieves Transfer events from official Tether token contracts for each network
- Calculates net transfer value per transaction (incoming - outgoing transfers)
- Filters transactions by minimum value threshold (1 USDT)
- Aggregates eligible transaction counts across all networks
- Returns total count representing user's significant Tether activity
Parameters
params
Calculation parameters
address
string
User wallet address to calculate transaction count for
endTimestampExclusive
Date
End of time window for calculation (exclusive)
getReferrerIdFromTx?
(transactionHash
, networkId
) => Promise
<null
| string
>
redis?
RedisClientType
Optional Redis client for caching block ranges
startTimestamp
Date
Start of time window for calculation (inclusive)
Returns
Promise
<KpiResults
>
Promise resolving to KPI results grouped by referrer ID with per-network breakdown