datavortexDaily New vs Returning Traders
Updated 2025-02-04
99
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
›
⌄
WITH UniqueBuyers AS (
SELECT DISTINCT buyer_address, DATE(block_timestamp) AS trade_date
FROM aptos.nft.ez_nft_sales
WHERE block_timestamp >= current_timestamp - INTERVAL '1 month'
),
UniqueSellers AS (
SELECT DISTINCT seller_address, DATE(block_timestamp) AS trade_date
FROM aptos.nft.ez_nft_sales
WHERE block_timestamp >= current_timestamp - INTERVAL '1 month'
),
AllTraders AS (
SELECT buyer_address AS trader_address, trade_date FROM UniqueBuyers
UNION
SELECT seller_address AS trader_address, trade_date FROM UniqueSellers
),
TraderFirstTrade AS (
SELECT trader_address, MIN(trade_date) AS first_trade_date
FROM AllTraders
GROUP BY trader_address
)
SELECT
trade_date,
COUNT(DISTINCT CASE WHEN trade_date = first_trade_date THEN trader_address END) AS NewTraders,
COUNT(DISTINCT CASE WHEN trade_date != first_trade_date THEN trader_address END) AS ReturningTraders
FROM AllTraders
JOIN TraderFirstTrade USING(trader_address)
GROUP BY trade_date
ORDER BY trade_date;
QueryRunArchived: QueryRun has been archived