DEX

Meteora DLMM historical data as Parquet

Every Meteora DLMM instruction and event in Solana history, decoded with an Anchor IDL that we checked against real transactions. Trawl gives you 30 event tables and 76 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
LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo
Preset
meteora-dlmm
Tables
30 event tables and 76 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":"meteora-dlmm","start_epoch":1058,"end_epoch":1058}'

-- then, in DuckDB, on the files of the job
SELECT slot, signature, lb_pair, from, start_bin_id
FROM 'ev-swap-*.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-add_liquidity
fields: lb_pair base58 string, from base58 string, position base58 string, amounts JSON string, active_bin_id i32
ev-cancel_limit_order_evt
fields: lb_pair base58 string, from base58 string, limit_order base58 string, amounts JSON string, active_id i32, bins JSON string
ev-claim_fee
fields: lb_pair base58 string, position base58 string, owner base58 string, fee_x u64, fee_y u64
ev-claim_fee2
fields: lb_pair base58 string, position base58 string, owner base58 string, fee_x u64, fee_y u64, active_bin_id i32
ev-claim_reward
fields: lb_pair base58 string, position base58 string, owner base58 string, reward_index u64, total_reward u64
ev-claim_reward2
fields: lb_pair base58 string, position base58 string, owner base58 string, reward_index u64, total_reward u64, active_bin_id i32
ev-close_limit_order_evt
fields: lb_pair base58 string, owner base58 string, limit_order base58 string
ev-composition_fee
fields: from base58 string, bin_id i16, token_x_fee_amount u64, token_y_fee_amount u64, protocol_token_x_fee_amount u64, protocol_token_y_fee_amount u64
ev-decrease_position_length
fields: lb_pair base58 string, position base58 string, owner base58 string, length_to_remove u16, side u8
ev-dynamic_fee_parameter_update
fields: lb_pair base58 string, filter_period u16, decay_period u16, reduction_factor u16, variable_fee_control u32, max_volatility_accumulator u32
ev-fee_parameter_update
fields: lb_pair base58 string, protocol_share u16, base_factor u16, base_fee_power_factor u8
ev-fund_reward
fields: lb_pair base58 string, funder base58 string, reward_index u64, amount u64
ev-go_to_a_bin
fields: lb_pair base58 string, from_bin_id i32, to_bin_id i32
ev-increase_observation
fields: oracle base58 string, new_observation_length u64
ev-increase_position_length
fields: lb_pair base58 string, position base58 string, owner base58 string, length_to_add u16, side u8
ev-initialize_reward
fields: lb_pair base58 string, reward_mint base58 string, funder base58 string, reward_index u64, reward_duration u64
ev-lb_pair_create
fields: lb_pair base58 string, bin_step u16, token_x base58 string, token_y base58 string
ev-place_limit_order_evt
fields: lb_pair base58 string, sender base58 string, owner base58 string, limit_order base58 string, active_id i32, params JSON string
ev-position_close
fields: position base58 string, owner base58 string
ev-position_create
fields: lb_pair base58 string, position base58 string, owner base58 string
ev-rebalancing
fields: lb_pair base58 string, position base58 string, owner base58 string, active_bin_id i32, x_withdrawn_amount u64, x_added_amount u64, y_withdrawn_amount u64, y_added_amount u64, x_fee_amount u64, y_fee_amount u64, old_min_id i32, old_max_id i32, new_min_id i32, new_max_id i32, rewards JSON string
ev-remove_liquidity
fields: lb_pair base58 string, from base58 string, position base58 string, amounts JSON string, active_bin_id i32
ev-set_position_permissionless_operation_bits_evt
fields: position base58 string, owner base58 string, old_bits u8, new_bits u8
ev-swap
fields: lb_pair base58 string, from base58 string, start_bin_id i32, end_bin_id i32, amount_in u64, amount_out u64, swap_for_y bool, field_fee u64, protocol_fee u64, fee_bps decimal string, host_fee u64
ev-swap2_evt
fields: lb_pair base58 string, from base58 string, start_bin_id i32, end_bin_id i32, swap_for_y bool, fee_bps decimal string, amount_in u64, amount_left u64, amount_out u64, mm_fee u64, protocol_fee u64, limit_order_fee u64, host_fee u64, fees_on_input bool, fees_on_token_x bool
ev-update_position_lock_release_point
fields: position base58 string, current_point u64, new_lock_release_point u64, old_lock_release_point u64, sender base58 string
ev-update_position_operator
fields: position base58 string, old_operator base58 string, new_operator base58 string
ev-update_reward_duration
fields: lb_pair base58 string, reward_index u64, old_reward_duration u64, new_reward_duration u64
ev-update_reward_funder
fields: lb_pair base58 string, reward_index u64, old_funder base58 string, new_funder base58 string
ev-withdraw_ineligible_reward
fields: lb_pair base58 string, reward_mint base58 string, amount u64

Instruction 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-add_liquidity
accounts: position, lb_pair, bin_array_bitmap_extension, user_token_x, user_token_y, reserve_x, reserve_y, token_x_mint, token_y_mint, bin_array_lower, bin_array_upper, sender, token_x_program, token_y_program, event_authority, program
args: liquidity_parameter JSON string
ix-add_liquidity2
accounts: position, lb_pair, bin_array_bitmap_extension, user_token_x, user_token_y, reserve_x, reserve_y, token_x_mint, token_y_mint, sender, token_x_program, token_y_program, event_authority, program
args: liquidity_parameter JSON string, remaining_accounts_info JSON string
ix-add_liquidity_by_strategy
accounts: position, lb_pair, bin_array_bitmap_extension, user_token_x, user_token_y, reserve_x, reserve_y, token_x_mint, token_y_mint, bin_array_lower, bin_array_upper, sender, token_x_program, token_y_program, event_authority, program
args: liquidity_parameter JSON string
ix-add_liquidity_by_strategy2
accounts: position, lb_pair, bin_array_bitmap_extension, user_token_x, user_token_y, reserve_x, reserve_y, token_x_mint, token_y_mint, sender, token_x_program, token_y_program, event_authority, program
args: liquidity_parameter JSON string, remaining_accounts_info JSON string
ix-add_liquidity_by_strategy_one_side
accounts: position, lb_pair, bin_array_bitmap_extension, user_token, reserve, token_mint, bin_array_lower, bin_array_upper, sender, token_program, event_authority, program
args: liquidity_parameter JSON string
ix-add_liquidity_by_weight
accounts: position, lb_pair, bin_array_bitmap_extension, user_token_x, user_token_y, reserve_x, reserve_y, token_x_mint, token_y_mint, bin_array_lower, bin_array_upper, sender, token_x_program, token_y_program, event_authority, program
args: liquidity_parameter JSON string
ix-add_liquidity_by_weight2
accounts: position, lb_pair, bin_array_bitmap_extension, user_token_x, user_token_y, reserve_x, reserve_y, token_x_mint, token_y_mint, sender, token_x_program, token_y_program, event_authority, program
args: liquidity_parameter JSON string, remaining_accounts_info JSON string
ix-add_liquidity_one_side
accounts: position, lb_pair, bin_array_bitmap_extension, user_token, reserve, token_mint, bin_array_lower, bin_array_upper, sender, token_program, event_authority, program
args: liquidity_parameter JSON string
ix-add_liquidity_one_side_precise
accounts: position, lb_pair, bin_array_bitmap_extension, user_token, reserve, token_mint, bin_array_lower, bin_array_upper, sender, token_program, event_authority, program
args: parameter JSON string
ix-add_liquidity_one_side_precise2
accounts: position, lb_pair, bin_array_bitmap_extension, user_token, reserve, token_mint, sender, token_program, event_authority, program
args: liquidity_parameter JSON string, remaining_accounts_info JSON string
ix-cancel_limit_order
accounts: lb_pair, bin_array_bitmap_extension, reserve_x, reserve_y, token_x_mint, token_y_mint, limit_order, owner_token_x, owner_token_y, owner, token_x_program, token_y_program, memo_program, event_authority, program
args: bins JSON string, remaining_accounts_info JSON string
ix-claim_fee
accounts: lb_pair, position, bin_array_lower, bin_array_upper, sender, reserve_x, reserve_y, user_token_x, user_token_y, token_x_mint, token_y_mint, token_program, event_authority, program
ix-claim_fee2
accounts: lb_pair, position, sender, reserve_x, reserve_y, user_token_x, user_token_y, token_x_mint, token_y_mint, token_program_x, token_program_y, memo_program, event_authority, program
args: min_bin_id i32, max_bin_id i32, remaining_accounts_info JSON string
ix-claim_reward
accounts: lb_pair, position, bin_array_lower, bin_array_upper, sender, reward_vault, reward_mint, user_token_account, token_program, event_authority, program
args: reward_index u64
ix-claim_reward2
accounts: lb_pair, position, sender, reward_vault, reward_mint, user_token_account, token_program, memo_program, event_authority, program
args: reward_index u64, min_bin_id i32, max_bin_id i32, remaining_accounts_info JSON string
ix-close_bin_array
accounts: lb_pair, bin_array, rent_receiver, signer
ix-close_claim_fee_operator_account
accounts: claim_fee_operator, rent_receiver, signer
ix-close_limit_order_if_empty
accounts: limit_order, owner, rent_receiver, event_authority, program
ix-close_operator_account
accounts: operator, signer, rent_receiver
ix-close_position
accounts: position, lb_pair, bin_array_lower, bin_array_upper, sender, rent_receiver, event_authority, program
ix-close_position2
accounts: position, sender, rent_receiver, event_authority, program
ix-close_position_if_empty
accounts: position, sender, rent_receiver, event_authority, program
ix-close_preset_parameter
accounts: preset_parameter, operator, signer, rent_receiver
ix-close_preset_parameter2
accounts: preset_parameter, operator, signer, rent_receiver
ix-close_token_badge
accounts: token_badge, rent_receiver, operator, signer
ix-create_operator_account
accounts: operator, whitelisted_signer, signer, payer, system_program
args: permission decimal string
ix-decrease_position_length
accounts: rent_receiver, position, owner, system_program, event_authority, program
args: length_to_remove u16, side u8
ix-for_idl_type_generation_do_not_call
accounts: dummy_zc_account
args: _ix JSON string
ix-fund_reward
accounts: lb_pair, reward_vault, reward_mint, funder_token_account, funder, bin_array, token_program, event_authority, program
args: reward_index u64, amount u64, carry_forward bool, remaining_accounts_info JSON string
ix-go_to_a_bin
accounts: lb_pair, bin_array_bitmap_extension, from_bin_array, to_bin_array, event_authority, program
args: bin_id i32
ix-increase_oracle_length
accounts: oracle, funder, system_program, event_authority, program
args: length_to_add u64
ix-increase_position_length
accounts: funder, lb_pair, position, owner, system_program, event_authority, program
args: length_to_add u16, side u8
ix-increase_position_length2
accounts: funder, lb_pair, position, owner, system_program, event_authority, program
args: minimum_upper_bin_id i32
ix-initialize_bin_array
accounts: lb_pair, bin_array, funder, system_program
args: index i64
ix-initialize_bin_array_bitmap_extension
accounts: lb_pair, bin_array_bitmap_extension, funder, system_program, rent
ix-initialize_customizable_permissionless_lb_pair
accounts: lb_pair, bin_array_bitmap_extension, token_mint_x, token_mint_y, reserve_x, reserve_y, oracle, user_token_x, funder, token_program, system_program, user_token_y, event_authority, program
args: params JSON string
ix-initialize_customizable_permissionless_lb_pair2
accounts: lb_pair, bin_array_bitmap_extension, token_mint_x, token_mint_y, reserve_x, reserve_y, oracle, user_token_x, funder, token_badge_x, token_badge_y, token_program_x, token_program_y, system_program, user_token_y, event_authority, program
args: params JSON string
ix-initialize_lb_pair
accounts: lb_pair, bin_array_bitmap_extension, token_mint_x, token_mint_y, reserve_x, reserve_y, oracle, preset_parameter, funder, token_program, system_program, rent, event_authority, program
args: active_id i32, bin_step u16
ix-initialize_lb_pair2
accounts: lb_pair, bin_array_bitmap_extension, token_mint_x, token_mint_y, reserve_x, reserve_y, oracle, preset_parameter, funder, token_badge_x, token_badge_y, token_program_x, token_program_y, system_program, event_authority, program
args: params JSON string
ix-initialize_permission_lb_pair
accounts: base, lb_pair, bin_array_bitmap_extension, token_mint_x, token_mint_y, reserve_x, reserve_y, oracle, payer, operator, signer, token_badge_x, token_badge_y, token_program_x, token_program_y, system_program, event_authority, program
args: ix_data JSON string
ix-initialize_position
accounts: payer, position, lb_pair, owner, system_program, rent, event_authority, program
args: lower_bin_id i32, width i32
ix-initialize_position2
accounts: payer, position, lb_pair, owner, system_program, event_authority, program
args: lower_bin_id i32, width i32
ix-initialize_position_by_operator
accounts: payer, base, position, lb_pair, owner, operator, operator_token_x, owner_token_x, system_program, event_authority, program
args: lower_bin_id i32, width i32, fee_owner base58 string, lock_release_point u64
ix-initialize_position_pda
accounts: payer, base, position, lb_pair, owner, system_program, rent, event_authority, program
args: lower_bin_id i32, width i32
ix-initialize_preset_parameter
accounts: preset_parameter, operator, signer, payer, system_program
args: ix JSON string
ix-initialize_reward
accounts: lb_pair, reward_vault, reward_mint, token_badge, operator, signer, payer, token_program, system_program, event_authority, program
args: reward_index u64, reward_duration u64, funder base58 string
ix-initialize_token_badge
accounts: token_mint, token_badge, operator, signer, payer, system_program
ix-place_limit_order
accounts: lb_pair, bin_array_bitmap_extension, reserve, token_mint, limit_order, payer, owner, user_token, sender, token_program, system_program, event_authority, program
args: params JSON string, remaining_accounts_info JSON string
ix-rebalance_liquidity
accounts: position, lb_pair, bin_array_bitmap_extension, user_token_x, user_token_y, reserve_x, reserve_y, token_x_mint, token_y_mint, owner, rent_payer, token_x_program, token_y_program, memo_program, system_program, event_authority, program
args: params JSON string, remaining_accounts_info JSON string
ix-remove_all_liquidity
accounts: position, lb_pair, bin_array_bitmap_extension, user_token_x, user_token_y, reserve_x, reserve_y, token_x_mint, token_y_mint, bin_array_lower, bin_array_upper, sender, token_x_program, token_y_program, event_authority, program
ix-remove_liquidity
accounts: position, lb_pair, bin_array_bitmap_extension, user_token_x, user_token_y, reserve_x, reserve_y, token_x_mint, token_y_mint, bin_array_lower, bin_array_upper, sender, token_x_program, token_y_program, event_authority, program
args: bin_liquidity_removal JSON string
ix-remove_liquidity2
accounts: position, lb_pair, bin_array_bitmap_extension, user_token_x, user_token_y, reserve_x, reserve_y, token_x_mint, token_y_mint, sender, token_x_program, token_y_program, memo_program, event_authority, program
args: bin_liquidity_removal JSON string, remaining_accounts_info JSON string
ix-remove_liquidity_by_range
accounts: position, lb_pair, bin_array_bitmap_extension, user_token_x, user_token_y, reserve_x, reserve_y, token_x_mint, token_y_mint, bin_array_lower, bin_array_upper, sender, token_x_program, token_y_program, event_authority, program
args: from_bin_id i32, to_bin_id i32, bps_to_remove u16
ix-remove_liquidity_by_range2
accounts: position, lb_pair, bin_array_bitmap_extension, user_token_x, user_token_y, reserve_x, reserve_y, token_x_mint, token_y_mint, sender, token_x_program, token_y_program, memo_program, event_authority, program
args: from_bin_id i32, to_bin_id i32, bps_to_remove u16, remaining_accounts_info JSON string
ix-set_activation_point
accounts: lb_pair, signer
args: activation_point u64
ix-set_pair_status
accounts: lb_pair, operator, signer
args: status u8
ix-set_pair_status_permissionless
accounts: lb_pair, signer
args: status u8
ix-set_permissionless_operation_bits
accounts: position, owner, event_authority, program
args: bits u8
ix-set_pre_activation_duration
accounts: lb_pair, signer
args: pre_activation_duration u64
ix-set_pre_activation_swap_address
accounts: lb_pair, signer
args: pre_activation_swap_address base58 string
ix-swap
accounts: lb_pair, bin_array_bitmap_extension, reserve_x, reserve_y, user_token_in, user_token_out, token_x_mint, token_y_mint, oracle, host_fee_in, user, token_x_program, token_y_program, event_authority, program
args: amount_in u64, min_amount_out u64
ix-swap2
accounts: lb_pair, bin_array_bitmap_extension, reserve_x, reserve_y, user_token_in, user_token_out, token_x_mint, token_y_mint, oracle, host_fee_in, user, token_x_program, token_y_program, memo_program, event_authority, program
args: amount_in u64, min_amount_out u64, remaining_accounts_info JSON string
ix-swap_exact_out
accounts: lb_pair, bin_array_bitmap_extension, reserve_x, reserve_y, user_token_in, user_token_out, token_x_mint, token_y_mint, oracle, host_fee_in, user, token_x_program, token_y_program, event_authority, program
args: max_in_amount u64, out_amount u64
ix-swap_exact_out2
accounts: lb_pair, bin_array_bitmap_extension, reserve_x, reserve_y, user_token_in, user_token_out, token_x_mint, token_y_mint, oracle, host_fee_in, user, token_x_program, token_y_program, memo_program, event_authority, program
args: max_in_amount u64, out_amount u64, remaining_accounts_info JSON string
ix-swap_with_price_impact
accounts: lb_pair, bin_array_bitmap_extension, reserve_x, reserve_y, user_token_in, user_token_out, token_x_mint, token_y_mint, oracle, host_fee_in, user, token_x_program, token_y_program, event_authority, program
args: amount_in u64, active_id i32, max_price_impact_bps u16
ix-swap_with_price_impact2
accounts: lb_pair, bin_array_bitmap_extension, reserve_x, reserve_y, user_token_in, user_token_out, token_x_mint, token_y_mint, oracle, host_fee_in, user, token_x_program, token_y_program, memo_program, event_authority, program
args: amount_in u64, active_id i32, max_price_impact_bps u16, remaining_accounts_info JSON string
ix-update_base_fee_parameters
accounts: lb_pair, operator, signer, event_authority, program
args: fee_parameter JSON string
ix-update_dynamic_fee_parameters
accounts: lb_pair, operator, signer, event_authority, program
args: fee_parameter JSON string
ix-update_fees_and_reward2
accounts: position, lb_pair, owner
args: min_bin_id i32, max_bin_id i32
ix-update_fees_and_rewards
accounts: position, lb_pair, bin_array_lower, bin_array_upper, owner
ix-update_position_operator
accounts: position, owner, event_authority, program
args: operator base58 string
ix-update_reward_duration
accounts: lb_pair, operator, signer, bin_array, event_authority, program
args: reward_index u64, new_duration u64
ix-update_reward_funder
accounts: lb_pair, operator, signer, event_authority, program
args: reward_index u64, new_funder base58 string
ix-withdraw_ineligible_reward
accounts: lb_pair, reward_vault, reward_mint, funder_token_account, funder, bin_array, token_program, memo_program, event_authority, program
args: reward_index u64, remaining_accounts_info JSON string
ix-withdraw_protocol_fee
accounts: lb_pair, reserve_x, reserve_y, token_x_mint, token_y_mint, receiver_token_x, receiver_token_y, operator, signer, token_x_program, token_y_program
args: max_amount_x u64, max_amount_y u64, remaining_accounts_info JSON string
ix-zap_protocol_fee
accounts: lb_pair, reserve, token_mint, receiver_token, operator, signer, token_program, sysvar_instructions
args: max_amount u64, remaining_accounts_info JSON string

Files are split at 2 GB: ix-<name>-tNN-SSSS.parquet. Large integers stay exact: u128 is a decimal string. All decoded types.

Get Meteora DLMM data for your range.

Select an epoch range and get a firm price. You pay only when you send the job.

Get a price