Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions dbt_subprojects/dex/models/_projects/kyberswap/_schema.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,12 @@ version: 2
models:
- name: kyberswap_aggregator_trades
meta:
blockchain: avalanche_c, optimism, ethereum, arbitrum, bnb, polygon, base
blockchain: arbitrum, avalanche_c, base, berachain, bnb, ethereum, linea, mantle, optimism, polygon, ronin, sonic, unichain
sector: dex_aggregator
project: kyberswap
contributors: nhd98z, Henrystats
contributors: nhd98z, Henrystats, phu_ngo
config:
tags: ['arbitrum', 'avalanche_c', 'optimism', 'ethereum', 'bnb', 'polygon', 'dex', 'aggregator', 'trades', 'kyberswap', 'nhd98z']
tags: ['arbitrum', 'avalanche_c', 'base', 'berachain', 'bnb', 'ethereum', 'linea', 'mantle', 'optimism', 'polygon', 'ronin', 'sonic', 'unichain', 'dex', 'aggregator', 'trades', 'kyberswap', 'nhd98z', 'Henrystats', 'phu_ngo']
description: >
Kyberswap Aggregator. This table will load dex_aggregator trades downstream.
columns:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,8 @@ WITH meta_router AS
FROM
{{ source('kyber_arbitrum', 'MetaAggregationRouterV2_evt_Swapped') }}
WHERE
dstToken not in (0x7d3eedb40fbecd9fba383504e066fdf67382a835 --bug with MTK token
,0x2C29c2Bbdcb8c5de36FA3dBe0e7797B5396B0E61) --bug with MyToken token
dstToken not in (0x7d3eedb40fbecd9fba383504e066fdf67382a835 -- bug with MTK token
,0x2C29c2Bbdcb8c5de36FA3dBe0e7797B5396B0E61) -- bug with MyToken token
{% if is_incremental() %}
AND {{incremental_predicate('evt_block_time')}}
{% endif %}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ WITH meta_router AS
{% endif %}
)
SELECT
'avalanche_c' AS blockchain
'avalanche_c' AS blockchain
,project AS project
,meta_router.version AS version
,CAST(date_trunc('day', meta_router.block_time) AS DATE) AS block_date
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ WITH meta_router AS
{% endif %}
)
SELECT
'base' AS blockchain
'base' AS blockchain
,project AS project
,meta_router.version AS version
,CAST(date_trunc('day', meta_router.block_time) AS DATE) AS block_date
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
version: 2

models:
- name: kyberswap_aggregator_berachain_trades
meta:
blockchain: berachain
sector: dex_aggregator
project: kyberswap
contributors: nhd98z, phu_ngo
config:
tags: ['berachain', 'kyberswap', 'aggregator', 'trades', 'dex']
description: >
Kyberswap Aggregator on berachain.
data_tests:
- dbt_utils.unique_combination_of_columns:
combination_of_columns:
- block_date
- blockchain
- project
- version
- tx_hash
- evt_index
- trace_address
- check_dex_aggregator_seed:
blockchain: berachain
project: kyberswap
version: meta_2
columns:
- name: blockchain
- name: project
- name: version
- name: block_date
- name: block_month
- name: block_time
- name: token_bought_symbol
- name: token_sold_symbol
- name: token_pair
- name: token_bought_amount
- name: token_sold_amount
- name: token_bought_amount_raw
- name: token_sold_amount_raw
- name: amount_usd
- name: token_bought_address
- name: token_sold_address
- name: taker
- name: maker
- name: project_contract_address
- name: tx_hash
- name: tx_from
- name: tx_to
- name: evt_index
- name: trace_address
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
{{ config
(

schema = 'kyberswap_aggregator_berachain',
alias = 'trades',
partition_by = ['block_month'],
materialized = 'incremental',
file_format = 'delta',
incremental_strategy = 'merge',
unique_key = ['block_date', 'blockchain', 'project', 'version', 'tx_hash', 'evt_index', 'trace_address'],
post_hook='{{ expose_spells(\'["berachain"]\',
"project",
"kyberswap",
\'["nhd98z", "phu_ngo"]\') }}'
)
}}

{% set project_start_date = '2025-02-09' %}

WITH meta_router AS
(
SELECT
evt_block_time AS block_time
,'kyberswap' AS project
,'meta_2' AS version
,sender AS taker
,dstReceiver AS maker
,returnAmount AS token_bought_amount_raw
,spentAmount AS token_sold_amount_raw
,CAST(NULL AS DOUBLE) AS amount_usd
,dstToken AS token_bought_address
,srcToken AS token_sold_address
,contract_address AS project_contract_address
,evt_tx_hash AS tx_hash
,evt_index AS evt_index
,ARRAY[-1] AS trace_address
FROM
{{ source('kyber_berachain', 'MetaAggregationRouterV2_evt_Swapped') }}
{% if is_incremental() %}
WHERE {{incremental_predicate('evt_block_time')}}
{% endif %}
)
SELECT
'berachain' AS blockchain
,project AS project
,meta_router.version AS version
,CAST(date_trunc('day', meta_router.block_time) AS DATE) AS block_date
,CAST(date_trunc('month', meta_router.block_time) AS DATE) AS block_month
,meta_router.block_time AS block_time
,erc20a.symbol AS token_bought_symbol
,erc20b.symbol AS token_sold_symbol
,CASE
WHEN lower(erc20a.symbol) > lower(erc20b.symbol)
THEN concat(erc20b.symbol, '-', erc20a.symbol)
ELSE concat(erc20a.symbol, '-', erc20b.symbol)
END AS token_pair
,meta_router.token_bought_amount_raw / power(10, erc20a.decimals) AS token_bought_amount
,meta_router.token_sold_amount_raw / power(10, erc20b.decimals) AS token_sold_amount
,CAST(meta_router.token_bought_amount_raw AS UINT256) AS token_bought_amount_raw
,CAST(meta_router.token_sold_amount_raw AS UINT256) AS token_sold_amount_raw
,COALESCE(
meta_router.amount_usd
,(meta_router.token_bought_amount_raw / power(10, (CASE meta_router.token_bought_address WHEN 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee THEN 18 ELSE p_bought.decimals END))) * (CASE meta_router.token_bought_address WHEN 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee THEN p_bera.price ELSE p_bought.price END)
,(meta_router.token_sold_amount_raw / power(10, (CASE meta_router.token_sold_address WHEN 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee THEN 18 ELSE p_sold.decimals END))) * (CASE meta_router.token_sold_address WHEN 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee THEN p_bera.price ELSE p_sold.price END)
) AS amount_usd
,meta_router.token_bought_address AS token_bought_address
,meta_router.token_sold_address AS token_sold_address
,COALESCE(meta_router.taker, tx."from") AS taker
,meta_router.maker AS maker
,meta_router.project_contract_address AS project_contract_address
,meta_router.tx_hash AS tx_hash
,tx."from" AS tx_from
,tx."to" AS tx_to
,meta_router.evt_index AS evt_index
,meta_router.trace_address AS trace_address
FROM meta_router
INNER JOIN {{ source('berachain', 'transactions')}} tx
ON meta_router.tx_hash = tx.hash
{% if is_incremental() %}
AND {{incremental_predicate('tx.block_time')}}
{% else %}
AND tx.block_time >= TIMESTAMP '{{ project_start_date }}'
{% endif %}
LEFT JOIN {{ source('tokens', 'erc20') }} erc20a
ON erc20a.contract_address = meta_router.token_bought_address
AND erc20a.blockchain = 'berachain'
LEFT JOIN {{ source('tokens', 'erc20') }} erc20b
ON erc20b.contract_address = meta_router.token_sold_address
AND erc20b.blockchain = 'berachain'
LEFT JOIN {{ source('prices', 'usd') }} p_bought
ON p_bought.minute = date_trunc('minute', meta_router.block_time)
AND p_bought.contract_address = meta_router.token_bought_address
AND p_bought.blockchain = 'berachain'
{% if is_incremental() %}
AND {{incremental_predicate('p_bought.minute')}}
{% else %}
AND p_bought.minute >= TIMESTAMP '{{ project_start_date }}'
{% endif %}
LEFT JOIN {{ source('prices', 'usd') }} p_sold
ON p_sold.minute = date_trunc('minute', meta_router.block_time)
AND p_sold.contract_address = meta_router.token_sold_address
AND p_sold.blockchain = 'berachain'
{% if is_incremental() %}
AND {{incremental_predicate('p_sold.minute')}}
{% else %}
AND p_sold.minute >= TIMESTAMP '{{ project_start_date }}'
{% endif %}
LEFT JOIN {{ source('prices', 'usd') }} p_bera
ON p_bera.minute = date_trunc('minute', meta_router.block_time)
AND p_bera.blockchain IS NULL
AND p_bera.symbol = 'BERA'
{% if is_incremental() %}
AND {{incremental_predicate('p_bera.minute')}}
{% else %}
AND p_bera.minute >= TIMESTAMP '{{ project_start_date }}'
{% endif %}
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ WITH meta_router AS
{% endif %}
)
SELECT
'bnb' AS blockchain
'bnb' AS blockchain
,project AS project
,meta_router.version AS version
,CAST(date_trunc('day', meta_router.block_time) AS DATE) AS block_date
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,21 +4,27 @@
schema = 'kyberswap_aggregator',
alias = 'trades',
incremental_predicates = [incremental_predicate('DBT_INTERNAL_DEST.block_time')],
post_hook='{{ expose_spells(\'["arbitrum", "base"]\',
post_hook='{{ expose_spells(\'["arbitrum", "avalanche_c", "base", "berachain", "bnb", "ethereum", "linea", "mantle", "optimism", "polygon", "ronin", "sonic", "unichain"]\',
"project",
"kyberswap",
\'["nhd98z", "Henrystats"]\') }}'
\'["nhd98z", "Henrystats", "phu_ngo"]\') }}'
)
}}

{% set models = [
ref('kyberswap_aggregator_arbitrum_trades')
,ref('kyberswap_aggregator_avalanche_c_trades')
,ref('kyberswap_aggregator_base_trades')
,ref('kyberswap_aggregator_berachain_trades')
,ref('kyberswap_aggregator_bnb_trades')
,ref('kyberswap_aggregator_ethereum_trades')
,ref('kyberswap_aggregator_linea_trades')
,ref('kyberswap_aggregator_mantle_trades')
,ref('kyberswap_aggregator_optimism_trades')
,ref('kyberswap_aggregator_bnb_trades')
,ref('kyberswap_aggregator_polygon_trades')
,ref('kyberswap_aggregator_base_trades')
,ref('kyberswap_aggregator_ronin_trades')
,ref('kyberswap_aggregator_sonic_trades')
,ref('kyberswap_aggregator_unichain_trades')
] %}


Expand Down
52 changes: 52 additions & 0 deletions dbt_subprojects/dex/models/_projects/kyberswap/linea/_schema.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
version: 2

models:
- name: kyberswap_aggregator_linea_trades
meta:
blockchain: linea
sector: dex_aggregator
project: kyberswap
contributors: nhd98z, phu_ngo
config:
tags: ['linea', 'kyberswap', 'aggregator', 'trades', 'dex']
description: >
Kyberswap Aggregator on linea.
data_tests:
- dbt_utils.unique_combination_of_columns:
combination_of_columns:
- block_date
- blockchain
- project
- version
- tx_hash
- evt_index
- trace_address
- check_dex_aggregator_seed:
blockchain: linea
project: kyberswap
version: meta_2
columns:
- name: blockchain
- name: project
- name: version
- name: block_date
- name: block_month
- name: block_time
- name: token_bought_symbol
- name: token_sold_symbol
- name: token_pair
- name: token_bought_amount
- name: token_sold_amount
- name: token_bought_amount_raw
- name: token_sold_amount_raw
- name: amount_usd
- name: token_bought_address
- name: token_sold_address
- name: taker
- name: maker
- name: project_contract_address
- name: tx_hash
- name: tx_from
- name: tx_to
- name: evt_index
- name: trace_address
Loading
Loading