Afonso_DiazGrouping swappers
    Updated 5 days ago
    with

    main as (
    select
    tx_hash,
    block_timestamp,
    origin_from_address as user,
    symbol_in,
    symbol_out,
    split(platform, '-')[0] as platform,
    greatest(symbol_in, symbol_out) || ' - ' || least(symbol_in, symbol_out) as token_pair,
    iff(symbol_in in ('USDC', 'USDT', 'USDC.e', 'DAI'), 'StableCoin', 'Other') || ' -> ' || iff(symbol_out in ('USDC', 'USDT', 'USDC.e', 'DAI'), 'StableCoin', 'Other') as route,
    case
    when symbol_in in ('USDC', 'USDT', 'USDC.e', 'DAI') then amount_in
    when symbol_out in ('USDC', 'USDT', 'USDC.e', 'DAI') then amount_out
    else nvl(amount_in_usd, amount_out_usd)
    end as amount_usd
    from
    kaia.defi.ez_dex_swaps
    where
    amount_usd > 0
    and block_timestamp >= '2024-01-01'

    ),

    swap_counts as (
    select
    user as swapper,
    count(distinct tx_hash) as swap_count
    from main
    group by swapper
    ),

    categorized_swappers as (
    select
    swapper,
    Last run: 5 days ago
    CATEGORY
    RANGE
    NUM_SWAPPERS
    1
    one-time (1 swap)1 swap691358
    2
    occasional (2–5 swaps)2–5 swaps25865
    3
    frequent (6–20 swaps)6–20 swaps9441
    4
    power (21+ swaps)21+ swaps5117
    4
    175B
    4s