Raydium CLMM historical data as Parquet
Every Raydium CLMM instruction and event in Solana history, decoded with an Anchor IDL that we checked against real transactions. Trawl gives you 15 event tables and 34 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
- CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK
- Preset
raydium-clmm- Tables
- 15 event tables and 34 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 now adds trade_fee_0 and trade_fee_1 to SwapEvent. The published IDL does not have them, so they 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":"raydium-clmm","start_epoch":1058,"end_epoch":1058}' -- then, in DuckDB, on the files of the job SELECT slot, signature, pool_state, sender, token_account_0 FROM 'ev-swap_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-collect_personal_fee_eventposition_nft_mint base58 string, recipient_token_account_0 base58 string, recipient_token_account_1 base58 string, amount_0 u64, amount_1 u64ev-collect_protocol_fee_eventpool_state base58 string, recipient_token_account_0 base58 string, recipient_token_account_1 base58 string, amount_0 u64, amount_1 u64ev-config_change_eventindex u16, owner base58 string, protocol_fee_rate u32, trade_fee_rate u32, tick_spacing u16, fund_fee_rate u32, fund_owner base58 stringev-create_personal_position_eventpool_state base58 string, minter base58 string, nft_owner base58 string, tick_lower_index i32, tick_upper_index i32, liquidity decimal string, deposit_amount_0 u64, deposit_amount_1 u64, deposit_amount_0_transfer_fee u64, deposit_amount_1_transfer_fee u64ev-decrease_limit_order_eventpool_id base58 string, limit_order base58 string, zero_for_one bool, tick_index i32, total_amount u64, filled_amount u64, settled_output_amount u64, decreased_amount u64ev-decrease_liquidity_eventposition_nft_mint base58 string, liquidity decimal string, decrease_amount_0 u64, decrease_amount_1 u64, fee_amount_0 u64, fee_amount_1 u64, reward_amounts JSON string, transfer_fee_0 u64, transfer_fee_1 u64ev-increase_limit_order_eventpool_id base58 string, limit_order base58 string, zero_for_one bool, tick_index i32, total_amount u64, increased_amount u64, transfer_fee u64ev-increase_liquidity_eventposition_nft_mint base58 string, liquidity decimal string, amount_0 u64, amount_1 u64, amount_0_transfer_fee u64, amount_1_transfer_fee u64ev-liquidity_calculate_eventpool_liquidity decimal string, pool_sqrt_price_x64 decimal string, pool_tick i32, calc_amount_0 u64, calc_amount_1 u64, trade_fee_owed_0 u64, trade_fee_owed_1 u64, transfer_fee_0 u64, transfer_fee_1 u64ev-liquidity_change_eventpool_state base58 string, tick i32, tick_lower i32, tick_upper i32, liquidity_before decimal string, liquidity_after decimal stringev-open_limit_order_eventpool_id base58 string, limit_order base58 string, zero_for_one bool, tick_index i32, total_amount u64, transfer_fee u64ev-pool_created_eventtoken_mint_0 base58 string, token_mint_1 base58 string, tick_spacing u16, pool_state base58 string, sqrt_price_x64 decimal string, tick i32, token_vault_0 base58 string, token_vault_1 base58 stringev-settle_limit_order_eventpool_id base58 string, limit_order base58 string, zero_for_one bool, tick_index i32, total_amount u64, filled_amount u64, settled_amount_out u64ev-swap_eventpool_state base58 string, sender base58 string, token_account_0 base58 string, token_account_1 base58 string, amount_0 u64, transfer_fee_0 u64, amount_1 u64, transfer_fee_1 u64, zero_for_one bool, sqrt_price_x64 decimal string, liquidity decimal string, tick i32ev-update_reward_infos_eventreward_growth_global_x64 JSON stringInstruction 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-close_limit_ordersigner, rent_receiver, limit_orderix-close_positionnft_owner, position_nft_mint, position_nft_account, personal_position, system_program, token_programix-close_protocol_positionadmin, protocol_positionix-collect_fund_feeowner, pool_state, amm_config, token_vault_0, token_vault_1, vault_0_mint, vault_1_mint, recipient_token_account_0, recipient_token_account_1, token_program, token_program_2022args:
amount_0_requested u64, amount_1_requested u64ix-collect_protocol_feeowner, pool_state, amm_config, token_vault_0, token_vault_1, vault_0_mint, vault_1_mint, recipient_token_account_0, recipient_token_account_1, token_program, token_program_2022args:
amount_0_requested u64, amount_1_requested u64ix-collect_remaining_rewardsreward_funder, funder_token_account, pool_state, reward_token_vault, reward_vault_mint, token_program, token_program_2022, memo_programargs:
reward_index u8ix-create_amm_configowner, amm_config, system_programargs:
index u16, tick_spacing u16, trade_fee_rate u32, protocol_fee_rate u32, fund_fee_rate u32ix-create_customizable_poolpool_creator, amm_config, pool_state, token_mint_0, token_mint_1, token_vault_0, token_vault_1, observation_state, tick_array_bitmap, token_program_0, token_program_1, system_program, rentargs:
customizable_params JSON stringix-create_dynamic_fee_configowner, dynamic_fee_config, system_programargs:
index u16, filter_period u16, decay_period u16, reduction_factor u16, dynamic_fee_control u32, max_volatility_accumulator u32ix-create_operation_accountowner, operation_state, system_programix-create_poolpool_creator, amm_config, pool_state, token_mint_0, token_mint_1, token_vault_0, token_vault_1, observation_state, tick_array_bitmap, token_program_0, token_program_1, system_program, rentargs:
sqrt_price_x64 decimal string, open_time u64ix-create_support_mint_associatedowner, token_mint, support_mint_associated, system_programix-decrease_limit_orderowner, pool_state, tick_array, limit_order, input_token_account, output_token_account, input_vault, output_vault, input_vault_mint, output_vault_mint, token_program, token_program_2022args:
amount u64, amount_min u64ix-decrease_liquiditynft_owner, nft_account, personal_position, pool_state, protocol_position, token_vault_0, token_vault_1, tick_array_lower, tick_array_upper, recipient_token_account_0, recipient_token_account_1, token_programargs:
liquidity decimal string, amount_0_min u64, amount_1_min u64ix-decrease_liquidity_v2nft_owner, nft_account, personal_position, pool_state, protocol_position, token_vault_0, token_vault_1, tick_array_lower, tick_array_upper, recipient_token_account_0, recipient_token_account_1, token_program, token_program_2022, memo_program, vault_0_mint, vault_1_mintargs:
liquidity decimal string, amount_0_min u64, amount_1_min u64ix-increase_limit_orderowner, pool_state, tick_array, limit_order, input_token_account, input_vault, input_vault_mint, input_token_programargs:
amount u64ix-increase_liquiditynft_owner, nft_account, pool_state, protocol_position, personal_position, tick_array_lower, tick_array_upper, token_account_0, token_account_1, token_vault_0, token_vault_1, token_programargs:
liquidity decimal string, amount_0_max u64, amount_1_max u64ix-increase_liquidity_v2nft_owner, nft_account, pool_state, protocol_position, personal_position, tick_array_lower, tick_array_upper, token_account_0, token_account_1, token_vault_0, token_vault_1, token_program, token_program_2022, vault_0_mint, vault_1_mintargs:
liquidity decimal string, amount_0_max u64, amount_1_max u64, base_flag boolix-initialize_rewardreward_funder, funder_token_account, amm_config, pool_state, operation_state, reward_token_mint, reward_token_vault, reward_token_program, system_program, rentargs:
param JSON stringix-open_limit_orderpayer, pool_state, tick_array, limit_order_nonce, limit_order, input_token_account, input_vault, input_vault_mint, input_token_program, system_programargs:
nonce_index u8, zero_for_one bool, tick_index i32, amount u64ix-open_positionpayer, position_nft_owner, position_nft_mint, position_nft_account, metadata_account, pool_state, protocol_position, tick_array_lower, tick_array_upper, personal_position, token_account_0, token_account_1, token_vault_0, token_vault_1, rent, system_program, token_program, associated_token_program, metadata_programargs:
tick_lower_index i32, tick_upper_index i32, tick_array_lower_start_index i32, tick_array_upper_start_index i32, liquidity decimal string, amount_0_max u64, amount_1_max u64ix-open_position_v2payer, position_nft_owner, position_nft_mint, position_nft_account, metadata_account, pool_state, protocol_position, tick_array_lower, tick_array_upper, personal_position, token_account_0, token_account_1, token_vault_0, token_vault_1, rent, system_program, token_program, associated_token_program, metadata_program, token_program_2022, vault_0_mint, vault_1_mintargs:
tick_lower_index i32, tick_upper_index i32, tick_array_lower_start_index i32, tick_array_upper_start_index i32, liquidity decimal string, amount_0_max u64, amount_1_max u64, with_metadata bool, base_flag boolix-open_position_with_token22_nftpayer, position_nft_owner, position_nft_mint, position_nft_account, pool_state, protocol_position, tick_array_lower, tick_array_upper, personal_position, token_account_0, token_account_1, token_vault_0, token_vault_1, rent, system_program, token_program, associated_token_program, token_program_2022, vault_0_mint, vault_1_mintargs:
tick_lower_index i32, tick_upper_index i32, tick_array_lower_start_index i32, tick_array_upper_start_index i32, liquidity decimal string, amount_0_max u64, amount_1_max u64, with_metadata bool, base_flag boolix-set_reward_paramsauthority, amm_config, pool_state, operation_state, token_program, token_program_2022args:
reward_index u8, emissions_per_second_x64 decimal string, open_time u64, end_time u64ix-settle_limit_ordersigner, pool_state, tick_array, limit_order, output_token_account, output_vault, output_vault_mint, output_token_programix-swappayer, amm_config, pool_state, input_token_account, output_token_account, input_vault, output_vault, observation_state, token_program, tick_arrayargs:
amount u64, other_amount_threshold u64, sqrt_price_limit_x64 decimal string, is_base_input boolix-swap_router_base_inpayer, input_token_account, input_token_mint, token_program, token_program_2022, memo_programargs:
amount_in u64, amount_out_minimum u64ix-swap_v2payer, amm_config, pool_state, input_token_account, output_token_account, input_vault, output_vault, observation_state, token_program, token_program_2022, memo_program, input_vault_mint, output_vault_mintargs:
amount u64, other_amount_threshold u64, sqrt_price_limit_x64 decimal string, is_base_input boolix-transfer_reward_ownerauthority, pool_stateargs:
new_owner base58 stringix-update_amm_configowner, amm_configargs:
param u8, value u32ix-update_dynamic_fee_configowner, dynamic_fee_configargs:
filter_period u16, decay_period u16, reduction_factor u16, dynamic_fee_control u32, max_volatility_accumulator u32ix-update_operation_accountowner, operation_state, system_programargs:
param u8, keys JSON stringix-update_pool_statusauthority, pool_stateargs:
status u8ix-update_reward_infospool_stateFiles are split at 2 GB: ix-<name>-tNN-SSSS.parquet. Large integers stay
exact: u128 is a decimal string. All decoded types.
Get Raydium CLMM data for your range.
Select an epoch range and get a firm price. You pay only when you send the job.