From 6def7d7e46dc77797e60a9476ad9460360de7367 Mon Sep 17 00:00:00 2001 From: alexshchur Date: Fri, 2 May 2025 15:21:57 +0300 Subject: [PATCH 1/6] feat: draft: start adjusting delta v2 master template for dex integration --- .../_project/paraswap/delta/v2/master.sql | 51 +++++++++++++++---- 1 file changed, 41 insertions(+), 10 deletions(-) diff --git a/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql b/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql index dfe25019bf8..1d9a3ca3338 100644 --- a/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql +++ b/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql @@ -1,14 +1,45 @@ {% macro delta_v2_master(blockchain) %} with {{ delta_v2_swap_settle(blockchain) }}, - {{ delta_v2_swap_settle_batch(blockchain) }} -select - date_trunc('month', call_block_time) AS block_month, - * -from delta_v2_swapSettle - union all -select - date_trunc('month', call_block_time) AS block_month, - * -from delta_v2_swapSettleBatch + {{ delta_v2_swap_settle_batch(blockchain) }}, + delta_v2_master as ( + select + date_trunc('month', call_block_time) AS block_month, + * + from delta_v2_swapSettle + union all + select + date_trunc('month', call_block_time) AS block_month, + * + from delta_v2_swapSettleBatch + ) + select + +-- SELECT + blockchain, + 'velora_delta' as project, + 'v2' as version, + block_month, + block_date, + block_time, + token_bought_symbol, + token_sold_symbol, + token_pair, + token_bought_amount, + token_sold_amount, + token_bought_amount_raw, + token_sold_amount_raw, + amount_usd, + token_bought_address, + token_sold_address, + taker, + maker, + project_contract_address, + tx_hash, + tx_from, + tx_to, + trace_address, + evt_index +-- FROM {{ dex_model }} + from delta_v2_master {% endmacro %} \ No newline at end of file From cf91b6413dfef3d8f3aa7c6a75186a2ad092804d Mon Sep 17 00:00:00 2001 From: alexshchur Date: Fri, 2 May 2025 15:29:38 +0300 Subject: [PATCH 2/6] feat: draft: add couple timestamp columns --- .../dex/macros/models/_project/paraswap/delta/v2/master.sql | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql b/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql index 1d9a3ca3338..4ea2ea276e5 100644 --- a/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql +++ b/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql @@ -20,10 +20,8 @@ with 'velora_delta' as project, 'v2' as version, block_month, - block_date, - block_time, - token_bought_symbol, - token_sold_symbol, + DATE_TRUNC('day', call_block_time) as block_date, + call_block_time as block_time, token_pair, token_bought_amount, token_sold_amount, From 6587c0e581040f8f96b818a999df469d9566fbc4 Mon Sep 17 00:00:00 2001 From: alexshchur Date: Mon, 5 May 2025 07:36:41 +0300 Subject: [PATCH 3/6] feat: delta v2 - more columns to conform DEX trades shape --- .../_project/paraswap/delta/v2/master.sql | 53 ++++++++++++------- 1 file changed, 34 insertions(+), 19 deletions(-) diff --git a/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql b/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql index 4ea2ea276e5..7db0dcdd417 100644 --- a/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql +++ b/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql @@ -16,28 +16,43 @@ with select -- SELECT - blockchain, + delta_v2_master.blockchain, 'velora_delta' as project, 'v2' as version, block_month, DATE_TRUNC('day', call_block_time) as block_date, - call_block_time as block_time, - token_pair, - token_bought_amount, - token_sold_amount, - token_bought_amount_raw, - token_sold_amount_raw, - amount_usd, - token_bought_address, - token_sold_address, - taker, - maker, - project_contract_address, - tx_hash, - tx_from, - tx_to, - trace_address, - evt_index + call_block_time as block_time, + CASE + WHEN lower(t_dest_token.symbol) > lower(t_src_token.symbol) + THEN concat(t_src_token.symbol, '-', t_dest_token.symbol) + ELSE concat(t_dest_token.symbol, '-', t_src_token.symbol) + END as token_pair + -- token_bought_amount, + -- token_sold_amount, + -- token_bought_amount_raw, + -- token_sold_amount_raw, + -- amount_usd, + -- token_bought_address, + -- token_sold_address, + -- taker, + -- maker, + -- project_contract_address, + -- tx_hash, + -- tx_from, + -- tx_to, + -- trace_address, + -- evt_index -- FROM {{ dex_model }} - from delta_v2_master + from delta_v2_master + LEFT JOIN + {{ source('tokens', 'erc20') }} t_src_token + ON t_src_token.blockchain = '{{blockchain}}' + AND t_src_token.contract_address = src_token + LEFT JOIN + {{ source('tokens', 'erc20') }} t_dest_token + ON t_dest_token.blockchain = '{{blockchain}}' + AND t_dest_token.contract_address = dest_token + + order by block_time desc + limit 1 {% endmacro %} \ No newline at end of file From c14db1d9097a54fbf483adc621a24cd486656b0e Mon Sep 17 00:00:00 2001 From: alexshchur Date: Mon, 5 May 2025 07:56:39 +0300 Subject: [PATCH 4/6] feat: delta: add token_bought_amount, token_sold_amount --- .../dex/macros/models/_project/paraswap/delta/v2/master.sql | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql b/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql index 7db0dcdd417..8a5d3ce1749 100644 --- a/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql +++ b/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql @@ -26,9 +26,9 @@ with WHEN lower(t_dest_token.symbol) > lower(t_src_token.symbol) THEN concat(t_src_token.symbol, '-', t_dest_token.symbol) ELSE concat(t_dest_token.symbol, '-', t_src_token.symbol) - END as token_pair - -- token_bought_amount, - -- token_sold_amount, + END as token_pair, + dest_amount / power(10, t_dest_token.decimals) as token_bought_amount, + src_amount / power(10, t_src_token.decimals) as token_sold_amount -- token_bought_amount_raw, -- token_sold_amount_raw, -- amount_usd, From 9956fa46d5108be02133c1da0fb2fa092491e748 Mon Sep 17 00:00:00 2001 From: alexshchur Date: Mon, 5 May 2025 08:01:07 +0300 Subject: [PATCH 5/6] feat: delta: more columns: token_bought_amount_raw, token_sold_amount_raw, amount_usd, token_bought_address, token_sold_address --- .../models/_project/paraswap/delta/v2/master.sql | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql b/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql index 8a5d3ce1749..ac9b44c9b6d 100644 --- a/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql +++ b/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql @@ -7,11 +7,13 @@ with date_trunc('month', call_block_time) AS block_month, * from delta_v2_swapSettle + limit 1 union all select date_trunc('month', call_block_time) AS block_month, * from delta_v2_swapSettleBatch + limit 1 ) select @@ -28,12 +30,12 @@ with ELSE concat(t_dest_token.symbol, '-', t_src_token.symbol) END as token_pair, dest_amount / power(10, t_dest_token.decimals) as token_bought_amount, - src_amount / power(10, t_src_token.decimals) as token_sold_amount - -- token_bought_amount_raw, - -- token_sold_amount_raw, - -- amount_usd, - -- token_bought_address, - -- token_sold_address, + src_amount / power(10, t_src_token.decimals) as token_sold_amount, + dest_amount as token_bought_amount_raw, + src_amount as token_sold_amount_raw, + COALESCE(dest_token_order_usd, src_token_order_usd) as amount_usd, + dest_token as token_bought_address, + src_token as token_sold_address -- taker, -- maker, -- project_contract_address, From bcffd794509b24a050f08c3c4fefa0066d60f849 Mon Sep 17 00:00:00 2001 From: alexshchur Date: Mon, 5 May 2025 08:27:42 +0300 Subject: [PATCH 6/6] feat: delta: add more columns: taker, maker, project_contract_address, tx_hash, tx_from --- .../_project/paraswap/delta/v2/master.sql | 17 +++++++++-------- .../paraswap/delta/v2/methods/swap_settle.sql | 6 +++++- .../delta/v2/methods/swap_settle_batch.sql | 6 ++++-- 3 files changed, 18 insertions(+), 11 deletions(-) diff --git a/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql b/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql index ac9b44c9b6d..0df9c5d12f1 100644 --- a/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql +++ b/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/master.sql @@ -3,11 +3,11 @@ with {{ delta_v2_swap_settle(blockchain) }}, {{ delta_v2_swap_settle_batch(blockchain) }}, delta_v2_master as ( - select + (select date_trunc('month', call_block_time) AS block_month, * from delta_v2_swapSettle - limit 1 + limit 1) union all select date_trunc('month', call_block_time) AS block_month, @@ -35,12 +35,13 @@ with src_amount as token_sold_amount_raw, COALESCE(dest_token_order_usd, src_token_order_usd) as amount_usd, dest_token as token_bought_address, - src_token as token_sold_address - -- taker, - -- maker, - -- project_contract_address, - -- tx_hash, - -- tx_from, + src_token as token_sold_address, + owner as taker, + CAST(NULL AS VARBINARY) AS maker, -- TODO: consider `executor as maker`, + delta_v2_master.contract_address as project_contract_address, + call_tx_hash as tx_hash, + call_tx_from as tx_from, + call_tx_to as tx_to -- tx_to, -- trace_address, -- evt_index diff --git a/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/methods/swap_settle.sql b/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/methods/swap_settle.sql index 907f15eba6f..e19210dfa36 100644 --- a/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/methods/swap_settle.sql +++ b/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/methods/swap_settle.sql @@ -5,7 +5,9 @@ v2_swap_settle_withParsedOrderData AS ( call_trace_address, call_block_time, call_block_number, - call_tx_hash, + call_tx_hash, + call_tx_from, + call_tx_to, orderWithSig, executor, executorData, @@ -89,6 +91,8 @@ SELECT call_block_number, call_block_time, call_tx_hash, + call_tx_from, + call_tx_to, executorFeeAmount as fee_amount, -- orderWithSig as order_with_sig, executor, diff --git a/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/methods/swap_settle_batch.sql b/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/methods/swap_settle_batch.sql index fc1e149555b..5145a2327a0 100644 --- a/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/methods/swap_settle_batch.sql +++ b/dbt_subprojects/dex/macros/models/_project/paraswap/delta/v2/methods/swap_settle_batch.sql @@ -9,8 +9,8 @@ delta_v2_swap_settle_batch_ExpandedOrders as ( contract_address, -- varbinary -- call_success, -- boolean call_tx_hash, -- varbinary - -- call_tx_from, -- varbinary - -- call_tx_to, -- varbinary + call_tx_from, -- varbinary + call_tx_to, -- varbinary call_trace_address, -- array(bigint) call_block_time, -- timestamp call_block_number, -- bigint @@ -149,6 +149,8 @@ SELECT call_block_number, call_block_time, call_tx_hash, + call_tx_from, + call_tx_to, executorFeeAmount as fee_amount, -- orderWithSig as order_with_sig, executor,