Skip to content

Commit

Permalink
add jubot (duneanalytics#6835)
Browse files Browse the repository at this point in the history
* add jubot

add jupbot sql and add to schema

* update schema.yml

* add seed

* moved seedfile

* fixed typo

* seed from test query

---------

Co-authored-by: whale_hunter <[email protected]>
  • Loading branch information
clizzard7 and whalehunting committed Sep 27, 2024
1 parent 92c3fd3 commit f99d346
Show file tree
Hide file tree
Showing 3 changed files with 195 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -533,5 +533,26 @@ models:
tags: ["solana", "dex", "bot_trades"]
columns:
- name: user
tests: unique

tests: unique

- name: jupbot_solana_bot_trades
meta:
blockchain: solana
sector: dex
project: jupbot
contributors: whale_hunter
config:
tags: ["solana", "dex", "jupbot", "trades"]
description: >
Jupbot trades on Solana
tests:
- dbt_utils.unique_combination_of_columns:
combination_of_columns:
- blockchain
- tx_id
- tx_index
- outer_instruction_index
- inner_instruction_index
- check_bot_trades_seed:
seed_file: ref('jupbot_solana_trades_seed')
blockchain: solana
Original file line number Diff line number Diff line change
@@ -0,0 +1,151 @@
{{ config(
alias = 'bot_trades',
schema = 'jupbot_solana',
partition_by = ['block_month'],
materialized = 'incremental',
file_format = 'delta',
incremental_strategy = 'merge',
incremental_predicates = [incremental_predicate('DBT_INTERNAL_DEST.block_time')],
unique_key = ['blockchain', 'tx_id', 'tx_index', 'outer_instruction_index', 'inner_instruction_index']
)
}}

{% set project_start_date = '2024-09-12' %}
{% set buy_fee_receiver_1 = 'H2mM9cXi42efgwkSzTRKMVaWHrqJJx1nzNdV1NxWaHjC' %}
{% set wsol_token = 'So11111111111111111111111111111111111111112' %}

WITH
allFeePayments AS (
SELECT
tx_id,
'SOL' AS feeTokenType,
balance_change / 1e9 AS fee_token_amount,
'{{wsol_token}}' AS fee_token_mint_address
FROM
{{ source('solana','account_activity') }}
WHERE
{% if is_incremental() %}
{{ incremental_predicate('block_time') }}
{% else %}
block_time >= TIMESTAMP '{{project_start_date}}'
{% endif %}
AND tx_success
AND balance_change > 0
AND address = '{{buy_fee_receiver_1}}'

),
botTrades AS (
SELECT
trades.block_time,
CAST(date_trunc('day', trades.block_time) AS date) AS block_date,
CAST(date_trunc('month', trades.block_time) AS date) AS block_month,
'solana' AS blockchain,
amount_usd,
IF(
token_sold_mint_address = '{{wsol_token}}',
'Buy',
'Sell'
) AS type,
token_bought_amount,
token_bought_symbol,
token_bought_mint_address AS token_bought_address,
token_sold_amount,
token_sold_symbol,
token_sold_mint_address AS token_sold_address,
fee_token_amount * price AS fee_usd,
fee_token_amount,
IF(feeTokenType = 'SOL', 'SOL', symbol) AS fee_token_symbol,
fee_token_mint_address AS fee_token_address,
project,
version,
token_pair,
project_program_id AS project_contract_address,
trader_id AS user,
trades.tx_id,
tx_index,
outer_instruction_index,
inner_instruction_index
FROM
{{ ref('dex_solana_trades') }} AS trades
JOIN allFeePayments AS feePayments ON trades.tx_id = feePayments.tx_id
LEFT JOIN {{ source('prices', 'usd') }} AS feeTokenPrices ON (
feeTokenPrices.blockchain = 'solana'
AND fee_token_mint_address = toBase58 (feeTokenPrices.contract_address)
AND date_trunc('minute', block_time) = minute
{% if is_incremental() %}
AND {{ incremental_predicate('minute') }}
{% else %}
AND minute >= TIMESTAMP '{{project_start_date}}'
{% endif %}
)
JOIN {{ source('solana','transactions') }} AS transactions ON (
trades.tx_id = id
{% if is_incremental() %}
AND {{ incremental_predicate('transactions.block_time') }}
{% else %}
AND transactions.block_time >= TIMESTAMP '{{project_start_date}}'
{% endif %}
)
WHERE
trades.trader_id != '{{buy_fee_receiver_1}}' -- Exclude trades signed by FeeWallet
AND transactions.signer != '{{buy_fee_receiver_1}}' -- Exclude trades signed by FeeWallet
{% if is_incremental() %}
AND {{ incremental_predicate('trades.block_time') }}
{% else %}
AND trades.block_time >= TIMESTAMP '{{project_start_date}}'
{% endif %}
),
highestInnerInstructionIndexForEachTrade AS (
SELECT
tx_id,
outer_instruction_index,
MAX(inner_instruction_index) AS highestInnerInstructionIndex
FROM
botTrades
GROUP BY
tx_id,
outer_instruction_index
)
SELECT
block_time,
block_date,
block_month,
'Jupbot' as bot,
blockchain,
amount_usd,
type,
token_bought_amount,
token_bought_symbol,
token_bought_address,
token_sold_amount,
token_sold_symbol,
token_sold_address,
fee_usd,
fee_token_amount,
fee_token_symbol,
fee_token_address,
project,
version,
token_pair,
project_contract_address,
user,
botTrades.tx_id,
tx_index,
botTrades.outer_instruction_index,
COALESCE(inner_instruction_index, 0) AS inner_instruction_index,
IF(
inner_instruction_index = highestInnerInstructionIndex,
true,
false
) AS is_last_trade_in_transaction
FROM
botTrades
JOIN highestInnerInstructionIndexForEachTrade ON (
botTrades.tx_id = highestInnerInstructionIndexForEachTrade.tx_id
AND botTrades.outer_instruction_index = highestInnerInstructionIndexForEachTrade.outer_instruction_index
)
ORDER BY
block_time DESC,
tx_index DESC,
outer_instruction_index DESC,
inner_instruction_index DESC
21 changes: 21 additions & 0 deletions dbt_subprojects/solana/seeds/jupbot/jupbot_solana_trades_seed.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
block_time,block_date,block_month,bot,blockchain,amount_usd,type,token_bought_amount,token_bought_symbol,token_bought_address,token_sold_amount,token_sold_symbol,token_sold_address,fee_usd,fee_token_amount,fee_token_symbol,fee_token_address,project,version,token_pair,project_contract_address,user,tx_id,tx_index,outer_instruction_index,inner_instruction_index,is_last_trade_in_transaction
2024-09-22 22:05:57.000 UTC,2024-09-22,2024-09-01,Jupbot,solana,9.485474414359999,Sell,0.066883898,SOL,So11111111111111111111111111111111111111112,8541662.403881,RIZ0,rizo34MUwbCBqpSTSfnEktdWB4CTByqqYh8zBxL3WAR,0.18970935213999998,0.001337677,SOL,So11111111111111111111111111111111111111112,raydium,4,SOL-RIZ0,6nmiCc4QSXqjsNYWgPRBVtij7GdHfDTud71eEGqApqav,5MrieS7fwgyXxXyAAves9Fe3z76iG9c5xb6y7TJyg9jm,WB2eBeutgCmo3FTwQChLWM5wtjtA7VejtcVDUAtGRNvAQXoNqVKVUPpdPDdDqrMDMtjLe8o2B89kWuaTWV4455i,1207,3,1,true
2024-09-24 14:32:27.000 UTC,2024-09-24,2024-09-01,Jupbot,solana,140.53687770696,Buy,19.29906357,HNT,hntyVP6YFm1Hg25TN9WGLqM12b8TQmcknKrdu1oxWux,0.968952549,SOL,So11111111111111111111111111111111111111112,31.230417171519996,0.215322788,SOL,So11111111111111111111111111111111111111112,raydium,4,SOL-HNT,91axdGmMoqQQg2MPUXKxT3bdqX4p2RMLXqZSQgXn2JpM,DvfLpvgbuPSBi4CWw6o6vEPMBxfYcwv9f9yBCqSybqJZ,59vpKFmYzC4vo8KVK3m9CC3Adwv9AvH7j5vvw1EdBR3BZ2wqkMa6AeY599eh9ALtLiSdp4ueHnrVL5hXQiuffvv8,878,7,2,false
2024-09-24 14:32:27.000 UTC,2024-09-24,2024-09-01,Jupbot,solana,1420.9839871057598,Buy,195.14349727,HNT,hntyVP6YFm1Hg25TN9WGLqM12b8TQmcknKrdu1oxWux,9.797186894,SOL,So11111111111111111111111111111111111111112,31.230417171519996,0.215322788,SOL,So11111111111111111111111111111111111111112,whirlpool,1,SOL-HNT,CSP4RmB6kBHkKGkyTnzt9zYYXDA8SbZ5Do5WfZcjqjE4,DvfLpvgbuPSBi4CWw6o6vEPMBxfYcwv9f9yBCqSybqJZ,59vpKFmYzC4vo8KVK3m9CC3Adwv9AvH7j5vvw1EdBR3BZ2wqkMa6AeY599eh9ALtLiSdp4ueHnrVL5hXQiuffvv8,878,7,6,true
2024-09-19 17:55:09.000 UTC,2024-09-19,2024-09-01,Jupbot,solana,0.1403458,Buy,365.905989774,$PCORN,Ee4n93iv9vtY8cYcUEqFCpBtmCq1ZMKR3pLzPQsmDMY5,0.00098,SOL,So11111111111111111111111111111111111111112,0.002806916,0.0000196,SOL,So11111111111111111111111111111111111111112,raydium,4,SOL-$PCORN,FUJFiFpsZKkPhYpDviN2XN2S2vKbrvYKDEVPVZ8N6CPK,Ci1ar7awYyQYjTaFCoMtNNj3asw9mD59nBf5tMffTru7,2ZppJkVmStWbCWbBMcaX2NFPR6Fsm6pSe8ozFVQuQGAfdc5X6eR5DNeh23HA955AJAdtfMMP4ffb5RDYAsfeCSHX,33,5,1,true
2024-09-23 20:57:52.000 UTC,2024-09-23,2024-09-01,Jupbot,solana,893.2176223468562,Sell,0.001683402,,2e6NAJy1qaKMq8PaswP2uzimMDvbr71Tbw38G6q9SNZ2,893.042586,USDT,Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB,17.870368238759998,0.124384828,SOL,So11111111111111111111111111111111111111112,lifinity,2,,EiEAydLqSKFqRPpuwYoVxEJ6h9UZh9tsTaHgs4f8b8Z5,Cv8yQZhb2p4hLaWPF9RPwGSuVeBnQMM2X2Y7UjPmUwzB,57trXhPHMbPfDtaWoq9FV2UMnx4qBZF3pbCT9Nh4eVc8UBGkA7tZZWCKPfCaCd9Qibfr9hTgq1eJTjPbqgcMKxex,300,3,1,true
2024-09-24 17:48:21.000 UTC,2024-09-24,2024-09-01,Jupbot,solana,557.300951807754,Buy,557.500537,USDT,Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB,3.76316083,SOL,So11111111111111111111111111111111111111112,11.15701913984,0.075263216,SOL,So11111111111111111111111111111111111111112,whirlpool,1,USDT-SOL,FwewVm8u6tFPGewAyHmWAqad9hmF7mvqxK4mJ7iNqqGC,Dup31RWDS3MTTGMiHZwuWMVchpyihtz12uX53BpzDXUT,2VixUV9nXftBMHtF2NVWgEQ8YpumsCMGtZPTwoP9Tfahvo9yoMndiKtJwRsmfLXUReXmuL78obmw2M8EfifB9nXB,134,7,2,true
2024-09-24 09:12:00.000 UTC,2024-09-24,2024-09-01,Jupbot,solana,124.31130723228,Buy,19229.630419948,USEDCAR,9gwTegFJJErDpWJKjPfLr2g2zrE3nL1v5zpwbtsk3c6P,0.840054786,SOL,So11111111111111111111111111111111111111112,2.4862260380999994,0.016801095,SOL,So11111111111111111111111111111111111111112,raydium,4,USEDCAR-SOL,Cf628kRZSmUb5VZf6KGpRDRRxWRT8b4vLuYPEtLs73WD,HZB1puYqXJsj4XpPMHaEpWCQcxUFWmjNTufFCUosDPnd,PC3Ji6S7ZKAkZ3V1k4gcgp91AdVUKT5c9hstM1ZVUr5BS9fXNd79atNK3WiY9Q75zzz8sBvNvsaB7FLcDJZ4bow,194,6,1,true
2024-09-24 09:49:31.000 UTC,2024-09-24,2024-09-01,Jupbot,solana,1724.495158701,Buy,19116.709495,MOTHER,3S8qX1MsMqRbiwKg2cQyx7nis1oHMgaCuc9c4VfvVdPN,11.731259583,SOL,So11111111111111111111111111111111111111112,34.489903077,0.234625191,SOL,So11111111111111111111111111111111111111112,raydium,4,SOL-MOTHER,HcPgh6B2yHNvT6JsEmkrHYT8pVHu9Xiaoxm4Mmn2ibWw,9fvVi6TDjMgRcPJ8y6GmyWuFwueReyCyoStToUFkM4So,5VyevQMA2wDQDcEEXiCGHKrWS5VeLmFV6RRPF4v9fcrmmbW5pJgeLD3Xhw2nAYGNMUL1ZcaJqZqSQoExRrrgWQJR,1430,7,1,true
2024-09-24 11:10:40.000 UTC,2024-09-24,2024-09-01,Jupbot,solana,634.2138995739999,Sell,4.343930819,SOL,So11111111111111111111111111111111111111112,40983.562948,BRAINLET,8NNXWrWVctNw1UFeaBypffimTdcLCcD8XJzHvYsmgwpF,12.684277936,0.086878616,SOL,So11111111111111111111111111111111111111112,raydium,4,SOL-BRAINLET,CW9DFoTWEUiwxyxVGnQFYhbrYEfGkvaqXEgxKZG7d7X1,27JwZFWWeHwPKM9Ua7ag8indKfE8zKXjBe91jj9AWZbN,3Vahc42snvcQwezC1t843LLmtqbgtLR2iufdfUA3kAUCFGJhpG6EKv3Nq95aCuySsENfBd97mgoLCsCCutFyWc7x,289,3,1,true
2024-09-22 05:52:18.000 UTC,2024-09-22,2024-09-01,Jupbot,solana,7.2299500000000005,Buy,328188.720296788,XP,HDdBA7kHSMpSyCJMcr3CWh7a6HU5cgVUpKADKWG71j8w,0.049,SOL,So11111111111111111111111111111111111111112,0.144599,0.00098,SOL,So11111111111111111111111111111111111111112,raydium,4,XP-SOL,2WpYE3efcuXCffkwzKz4BCH5Tm42sWFGHtVQGzgf6ZdS,5MrieS7fwgyXxXyAAves9Fe3z76iG9c5xb6y7TJyg9jm,45CxudRR76PyBM1Xar3YeSiEPLxTkpJJLkVp5YHUidzHJinRoo4kxYK7MEPDwbMRHGkCbhABZtQH7hq6T4pPvqVe,128,6,1,true
2024-09-19 18:19:58.000 UTC,2024-09-19,2024-09-01,Jupbot,solana,0.1405418,Buy,365.904209342,$PCORN,Ee4n93iv9vtY8cYcUEqFCpBtmCq1ZMKR3pLzPQsmDMY5,0.00098,SOL,So11111111111111111111111111111111111111112,0.0028108359999999997,0.0000196,SOL,So11111111111111111111111111111111111111112,raydium,4,SOL-$PCORN,FUJFiFpsZKkPhYpDviN2XN2S2vKbrvYKDEVPVZ8N6CPK,Ci1ar7awYyQYjTaFCoMtNNj3asw9mD59nBf5tMffTru7,3rBabEtvxHgxX5YJrW1uzAWXgzfTfhtoSWFuwUwoNkCvqnj9pGVLV22MaT88pbnWmspybbDVzxAHHpLAWmQcytqp,918,5,1,true
2024-09-23 15:44:42.000 UTC,2024-09-23,2024-09-01,Jupbot,solana,1080.6260739674499,Sell,7.486152227,SOL,So11111111111111111111111111111111111111112,29795.437741,hehe,BreuhVohXX5fv6q41uyb3sojtAuGoGaiAhKBMtcrpump,21.6125214014,0.149723044,SOL,So11111111111111111111111111111111111111112,raydium,4,SOL-hehe,23KJaRate7XthAQ7C5XbJJYK5cyG1sNA2ikCPsiAcbVP,5hT6rWEUyULoWux1h66CTjtNYxXBdxk5FiTfbKPKiEXG,4x4a4BA5R6oyqW65KjQrL4aXUT8ATDMQqp8MNaAUUZBKy4qE3SvhQzN8V1pUNZr7Hz9RD3yU2oBZ7dMokciuEq5z,145,3,1,true
2024-09-24 07:52:24.000 UTC,2024-09-24,2024-09-01,Jupbot,solana,296.32371093252,Sell,2.018828934,SOL,So11111111111111111111111111111111111111112,1.655689816,mSOL,mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So,5.926474118840001,0.040376578,SOL,So11111111111111111111111111111111111111112,meteora,1,SOL-mSOL,HcjZvfeSNJbNkfLD4eEcRBr96AD3w1GpmMppaeRZf7ur,6ozPcBDF7opwtmg8EkQwiYRC2FwGnbeGHu5w8aQBN1PE,3y2Y7RYmwwtGjzWZX4AWYidcf7cAHnEhQB6oedWAHHBMFNHD84c328Q8BM2fykKfMQBffao6PuGXTEYHumsgRjS3,1447,4,1,true
2024-09-21 15:55:21.000 UTC,2024-09-21,2024-09-01,Jupbot,solana,5.7929759999999995,Buy,5616.738498,BONKEY,6y4rgKVoPUc8HMcnWfca8siuBa3gAjxNaRrHxVmMpump,0.0392,SOL,So11111111111111111111111111111111111111112,0.11585952,0.000784,SOL,So11111111111111111111111111111111111111112,raydium,4,SOL-BONKEY,BecDGSmGxdiiQV6pMCf1evuNjmgNB4mJhCseNSshrhcD,7DtLV4eguy7Eg9Wf6AehfjfjSZNFwYE4TGqk4Fob6vHE,5zkRQybxM2XigDy5UyFQZ7ZQuMZMB5pb27xepke5G8Nz8xt9PtPdrgjX5uKBAv49bubf7q5tKpayoewnduUuA92d,1382,6,1,true
2024-09-25 01:13:05.000 UTC,2024-09-25,2024-09-01,Jupbot,solana,494.92799795428,Sell,0.070543,,DriFtupJYLTosbwoN8koMbEYSx54aFAVLddWsbksjwg7,494.89484,USDC,EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v,9.888836797799998,0.06499827,SOL,So11111111111111111111111111111111111111112,phoenix,1,,8BV6rrWsUabnTDA3dE6A69oUDJAj3hMhtBHTJyXB7czp,ET71c3wQF92i4EGn5aztAMYPszmZrE8AJFLvyLTBAqqw,2ajcuXNQQcKo7Uy4VjHF4MhitmV1PrnhJbx8DNHVa3e1DVwxsS9oMXkoMLhoqPyyRKH5v4sAtjmP9kC5AWTpEKsv,115,7,7,true
2024-09-24 19:08:59.000 UTC,2024-09-24,2024-09-01,Jupbot,solana,383.36847314116005,Sell,2.606530277,SOL,So11111111111111111111111111111111111111112,2.287962514,JitoSOL,J1toso1uCk3RLmjorhTtrVwY9HJ7X8V9yYac6Y7kGCPn,7.667377325720001,0.052130659,SOL,So11111111111111111111111111111111111111112,raydium,3,SOL-JitoSOL,2uoKbPEidR7KAMYtY4x7xdkHXWqYib5k4CutJauSL3Mc,3PtzA1bgtFY6rN7rsoRfZsryC5qSmuvuAYVqXPZKfvEG,2vrF2VneYFA7gdAwGzUbtKXQVvTEzhDzhfPnVn22jV8uvvWgKxbPCtidmo9h2CF8RX83eCKaaGBWr7S7zr1sAtML,367,3,1,true
2024-09-24 15:45:57.000 UTC,2024-09-24,2024-09-01,Jupbot,solana,954.11638561901,Buy,1059086.353385,ball,HPfY3VCj1twecf556rDFWLJpDfh1vPoTtBjPehzKpump,6.574218877,SOL,So11111111111111111111111111111111111111112,19.082327634010003,0.131484377,SOL,So11111111111111111111111111111111111111112,raydium,4,SOL-ball,7jaj84BxnuwWc9a2VEFEudvPQ5AxkrUKFCmTZRM1cbdE,8i5QapkUnbnb6vEaEFcJFpsR1x3XF5N4FyL6HEAb1gpf,2iSBpMcxmjob6f1amwUC7M5bV9ZNAQ9kDsu8Z2s7J8aTTow9in7k5asjVqFcz8EtvyZUx3RQVjWEMdNdtyw7zuKV,1200,6,1,true
2024-09-23 20:52:52.000 UTC,2024-09-23,2024-09-01,Jupbot,solana,930.15180360432,Sell,6.474674952,SOL,So11111111111111111111111111111111111111112,6.334130789,sSOL,sSo14endRuUbvQaJS3dq36Q829a3A6BEfoeeRGJywEh,18.60303606634,0.129493499,SOL,So11111111111111111111111111111111111111112,whirlpool,1,sSOL-SOL,8X5tAh7EcafARDGhmLHxkiG5CousuB1yLtYsbuM9tD1T,EkN4oxatCq7RRndbzw8bZRV4uA7YvW2wDbKcQKZPBgpw,5QiDGEUH6FL2eZrUS1usQ9YuX41ZgguNxdQSGXeuc5TdqzU4yeSn2wB2VwbS2bMDuNDbcDthzgBtBHfTYghry7rC,265,3,1,true
2024-09-24 13:20:12.000 UTC,2024-09-24,2024-09-01,Jupbot,solana,0.0011863542,Sell,0.000008054,SOL,So11111111111111111111111111111111111111112,1186.791951,USDC,EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v,23.731174815600003,0.161107772,SOL,So11111111111111111111111111111111111111112,phoenix,1,USDC-SOL,HUaSnNPwGZv18W7XynTfrgTAUWSMMHsdGXXLaEQbnKJz,CY7trDMTcg8KVBJWXbAdUX9uQCtEffAfKHLzuRmeSKzW,3tkxMBas8SPQZBWE5SW7acxZZYLTzEiphjsqziTVUfBxFmrtRoVk7ai4D5Tahy4XXHQGK3kr1iugjVvnz7eRKP7Z,942,4,6,true
2024-09-24 15:27:40.000 UTC,2024-09-24,2024-09-01,Jupbot,solana,1101.81663929152,Sell,7.554968728,SOL,So11111111111111111111111111111111111111112,1264106.88068,ball,HPfY3VCj1twecf556rDFWLJpDfh1vPoTtBjPehzKpump,22.026021962,0.151028675,SOL,So11111111111111111111111111111111111111112,raydium,4,SOL-ball,7jaj84BxnuwWc9a2VEFEudvPQ5AxkrUKFCmTZRM1cbdE,GKN8EJjLhtBeKwzcA9CQCdiKEHPGso2KtFCMFTJwCkgD,66npQKbqogUKyrpPJCNcUNeuFp5nhicJhFLaRKGRDyXvnPC1Du2nYNxz88Qnh5Gn5zbpK6tvbNvSWJEq7pgSvMrf,1053,3,1,true

0 comments on commit f99d346

Please sign in to comment.