Jupiter DCA historical data as Parquet
Every Jupiter DCA instruction and event in Solana history, decoded with an Anchor IDL that we checked against real transactions. Trawl gives you 6 event tables and 12 instruction tables, with a column for each account, argument and field. Calls from other programs (CPI) are in the result too.
Updated
The preset
- Program
- DCA265Vj8a9CEuX1eb1LWRnDT7uK6q1xMipnNyatn23M
- Preset
jupiter-dca- Tables
- 6 event tables and 12 instruction tables, and
part-*with the raw bytes of each match - Price
- $4 for one recent epoch, $8.68 for one week of chain
The price is the same for every program: you pay for the archive the scan reads, not for the rows. Pricing.
# ask for a price: a 402 with the quote, no payment yet curl -X POST https://trawl.run/scan \ -H 'Content-Type: application/json' \ -d '{"preset":"jupiter-dca","start_epoch":1058,"end_epoch":1058}' -- then, in DuckDB, on the files of the job SELECT slot, signature, userKey, dcaKey, mint FROM 'ev-collected_fee-*.parquet' ORDER BY slot LIMIT 10;
Add "filter": {"accounts": ["<wallet>"]} to keep only the transactions
that touch one wallet. How a filter changes a preset.
Event tables
One table for each event in the IDL. Each row also has log_index and the context columns. An event
that the program writes two ways gives one row.
ev-collected_feeuserKey base58 string, dcaKey base58 string, mint base58 string, amount u64ev-filleduserKey base58 string, dcaKey base58 string, inputMint base58 string, outputMint base58 string, inAmount u64, outAmount u64, feeMint base58 string, field_fee u64ev-openeduserKey base58 string, dcaKey base58 string, inDeposited u64, inputMint base58 string, outputMint base58 string, cycleFrequency i64, inAmountPerCycle u64, createdAt i64ev-closeduserKey base58 string, dcaKey base58 string, inDeposited u64, inputMint base58 string, outputMint base58 string, cycleFrequency i64, inAmountPerCycle u64, createdAt i64, totalInWithdrawn u64, totalOutWithdrawn u64, unfilledAmount u64, userClosed boolev-withdrawdcaKey base58 string, inAmount u64, outAmount u64, userWithdraw boolev-depositdcaKey base58 string, amount u64Instruction tables
One table for each instruction in the IDL: the named accounts, then the arguments. Each row also has the context
columns: slot, tx_index, signature, success, fee, program_id, ix_index, is_inner, inner_index, stack_height, accounts. What each one
holds.
ix-open_dcadca, user, inputMint, outputMint, userAta, inAta, outAta, systemProgram, tokenProgram, associatedTokenProgram, eventAuthority, programargs:
applicationIdx u64, inAmount u64, inAmountPerCycle u64, cycleFrequency i64, minOutAmount u64, maxOutAmount u64, startAt i64, closeWsolInAta boolix-open_dca_v2dca, user, payer, inputMint, outputMint, userAta, inAta, outAta, systemProgram, tokenProgram, associatedTokenProgram, eventAuthority, programargs:
applicationIdx u64, inAmount u64, inAmountPerCycle u64, cycleFrequency i64, minOutAmount u64, maxOutAmount u64, startAt i64ix-close_dcauser, dca, inputMint, outputMint, inAta, outAta, userInAta, userOutAta, systemProgram, tokenProgram, associatedTokenProgram, eventAuthority, programix-withdrawuser, dca, inputMint, outputMint, dcaAta, userInAta, userOutAta, systemProgram, tokenProgram, associatedTokenProgram, eventAuthority, programargs:
withdrawParams JSON stringix-deposituser, dca, inAta, userInAta, tokenProgram, eventAuthority, programargs:
depositIn u64ix-withdraw_feesadmin, mint, feeAuthority, programFeeAta, adminFeeAta, systemProgram, tokenProgram, associatedTokenProgramargs:
amount u64ix-initiate_flash_fillkeeper, dca, inputMint, keeperInAta, inAta, outAta, instructionsSysvar, systemProgram, tokenProgram, associatedTokenProgramix-fulfill_flash_fillkeeper, dca, inputMint, outputMint, keeperInAta, inAta, outAta, feeAuthority, feeAta, instructionsSysvar, systemProgram, tokenProgram, associatedTokenProgram, eventAuthority, programargs:
repayAmount u64ix-initiate_dlmm_fillkeeper, dca, inputMint, keeperInAta, inAta, outAta, instructionsSysvar, systemProgram, tokenProgram, associatedTokenProgramix-fulfill_dlmm_fillkeeper, dca, inputMint, outputMint, keeperInAta, inAta, outAta, feeAuthority, feeAta, instructionsSysvar, systemProgram, tokenProgram, associatedTokenProgram, eventAuthority, programargs:
repayAmount u64ix-transferkeeper, dca, user, outputMint, dcaOutAta, userOutAta, intermediateAccount, systemProgram, tokenProgram, associatedTokenProgram, eventAuthority, programix-end_and_closekeeper, dca, inputMint, outputMint, inAta, outAta, user, userOutAta, initUserOutAta, intermediateAccount, systemProgram, tokenProgram, associatedTokenProgram, eventAuthority, programFiles are split at 2 GB: ix-<name>-tNN-SSSS.parquet. Large integers stay
exact: u128 is a decimal string. All decoded types.
Get Jupiter DCA data for your range.
Select an epoch range and get a firm price. You pay only when you send the job.