with new_users as
(
SELECT
trader,
min(block_timestamp) as date_joined
from osmosis.core.fact_swaps
group by 1
)
SELECT
date_trunc('day', date_joined) as date,
count(trader) as no_of_new_users
from new_users
where date_joined >= CURRENT_DATE - interval '30 days'
group by 1
order by 1 desc