Afonso_DiazBy Platform Overtime
    Updated 2025-04-24
    with

    main as (
    select
    tx_id,
    block_timestamp,
    swapper,
    swap_from_symbol as symbol_in,
    swap_to_symbol as symbol_out,
    abs(nvl(swap_from_amount_usd, swap_to_amount_usd)) as amount_usd,
    case
    when platform ilike 'jupiter%' then 'Jupiter'
    when platform ilike 'raydium%' then 'Raydium'
    when platform ilike 'meteora%' then 'Meteora'
    when platform ilike 'saber%' then 'Saber'
    when platform ilike 'orca%' then 'Orca'
    else initcap(platform)
    end as platform
    from
    solana.marinade.ez_swaps
    where
    succeeded
    and 'MSOL' in (symbol_in, symbol_out)
    )

    select
    date_trunc('{{ period }}', block_timestamp) as date,
    platform,
    count(distinct tx_id) as swaps,
    count(distinct swapper) as swappers,
    sum(amount_usd) as volume_usd,
    avg(amount_usd) as average_amount_usd,
    sum(volume_usd) over (partition by platform order by date) as cumulative_volume_usd
    from
    main
    group by 1, 2