Jupiter Limit Order v2 historical data as Parquet
Every Jupiter Limit Order v2 instruction and event in Solana history, decoded with an Anchor IDL that we checked against real transactions. Trawl gives you 4 event tables and 8 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
- j1o2qRpjcyUwEvwtcfhEQefh773ZgjxcVRry7LDqg5X
- Preset
jupiter-limit-order-v2- Tables
- 4 event tables and 8 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 program is newer than its IDL: the last 9 bytes of initialize_order and the last 8 bytes of CreateOrderEvent are not decoded.
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-limit-order-v2","start_epoch":1058,"end_epoch":1058}' -- then, in DuckDB, on the files of the job SELECT slot, signature, order_key, taker, remaining_making_amount FROM 'ev-trade_event-*.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-cancel_dust_order_eventorder_key base58 string, one_usd_input_mint_amount u64ev-cancel_order_eventorder_key base58 stringev-create_order_eventorder_key base58 string, maker base58 string, input_mint base58 string, output_mint base58 string, input_token_program base58 string, output_token_program base58 string, making_amount u64, taking_amount u64, expired_at i64, fee_bps u16, fee_account base58 string, slippage_bps u16ev-trade_eventorder_key base58 string, taker base58 string, remaining_making_amount u64, remaining_taking_amount u64, making_amount u64, taking_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-cancel_dust_ordersigner, maker, order, input_mint_reserve, maker_input_mint_account, input_mint, input_token_program, system_program, associated_token_program, event_authority, programargs:
params JSON stringix-cancel_ordersigner, maker, order, input_mint_reserve, maker_input_mint_account, input_mint, input_token_program, event_authority, programix-fill_ordertaker, maker, order, taker_input_mint_account, taker_output_mint_account, maker_output_mint_account, fee_account, order_input_mint_account, input_mint, input_token_program, output_mint, output_token_program, jupiter_program, system_program, event_authority, programargs:
params JSON stringix-flash_fill_ordertaker, maker, order, input_mint_reserve, maker_output_mint_account, taker_output_mint_account, fee_account, input_token_program, output_mint, output_token_program, system_program, event_authority, programargs:
params JSON stringix-initialize_orderpayer, maker, order, input_mint_reserve, maker_input_mint_account, acct_fee, referral, input_mint, output_mint, input_token_program, output_token_program, system_program, associated_token_program, event_authority, programargs:
params JSON stringix-pre_flash_fill_ordertaker, order, input_mint_reserve, taker_input_mint_account, input_mint, input_token_program, instructionargs:
params JSON stringix-update_feeadmin, fee_authority, system_programargs:
params JSON stringix-withdraw_feeadmin, fee_authority, program_fee_account, destination_token_account, token_program, mintFiles are split at 2 GB: ix-<name>-tNN-SSSS.parquet. Large integers stay
exact: u128 is a decimal string. All decoded types.
Get Jupiter Limit Order v2 data for your range.
Select an epoch range and get a firm price. You pay only when you send the job.