arb-assist uses a TOML configuration file (config.toml) to control all aspects of its operation. This section provides a comprehensive guide to all configuration options.
Configuration File Structure
The configuration file is organized into several main sections:
Copy # 1. Connection Settings
rpc_url = " ... "
grpc_url = " ... "
# 2. Core Settings
mode = " smb "
update_interval = 10000
# 3. DEX & Program Configuration
dexes = [ ...]
arb_programs = [ ...]
# 4. Filtering & Ranking
filter_thresholds = [ ...]
intermint_sort_strategy = { ... }
# 5. Trading Strategies
spam_levels = [...]
jito_levels = [...]
# 6. Bot-Specific Settings
[smb]
...
[notarb]
... Configuration Hierarchy
arb-assist processes configuration in this order:
Connection Settings - Establishes blockchain connections
Core Operation - Defines basic behavior
Market Analysis - Specifies what to monitor
Filtering Logic - Determines profitable opportunities
Execution Strategies - Controls how to trade
Bot Integration - Outputs appropriate configs
Filter Thresholds
Filter thresholds define multiple tiers of market conditions:
Each tier can have different:
Minimum profit requirements
Strategy Levels
Strategy levels map to filter thresholds:
This allows different trading strategies for different market conditions.
Mints are organized into transaction groups:
Different strategies can target different groups.
Configuration Files
Your main configuration file that controls arb-assist behavior.
Location : Same directory as arb-assist binary
Format : TOML (Tom's Obvious, Minimal Language)
Based on your mode setting:
SMB Mode (mode = "smb")
Updates : Every update_interval milliseconds
NotArb Mode (mode = "na")
Files :
{output}.json - Main configuration
markets.json - Market addresses
lookup-tables.json - ALUTs
notarb-attributes.json - Dynamic settings
Updates : Every update_interval milliseconds
Both Mode (mode = "both")
Generates both SMB and NotArb outputs simultaneously.
Environment Variables
Some settings can use environment variables:
Supported variables:
DEFAULT_KEYPAIR_PATH - Default wallet location
Custom variables you define
Configuration Validation
arb-assist validates configuration on startup:
Required Fields - Ensures essential settings exist
Value Ranges - Checks numeric bounds
Logical Consistency - Verifies related settings
Connection Tests - Validates RPC/GRPC access
Common Validation Errors
Check your rpc_url format and accessibility.
Increase mints_to_rank to match your largest group.
Order thresholds from lowest to highest requirements.
1. Start Conservative
Begin with:
2. Use Multiple Tiers
Define 3-5 filter threshold tiers:
Tier 0 : Minimal activity baseline
Tier 1-2 : Normal market conditions
Tier 3-4 : High activity periods
3. Monitor and Adjust
Adjust thresholds based on performance
4. Version Control
Use meaningful commit messages
Tag working configurations
Never commit private keys
Use encrypted keypair files
Restrict file permissions
Rotate API keys regularly
Configuration Templates
arb-assist provides example configurations:
config.toml.example - Basic template
config.toml (smb) - SMB-optimized settings
config.toml (notarb) - NotArb-optimized settings
Dynamic Updates
Configuration changes are applied:
On startup - Full configuration load
During runtime - Output files updated
On bot restart - Bots reload when configs change
Configuration affects performance:
High Impact Settings
update_interval - Processing frequency
mints_to_rank - Memory usage
grpc_engine - Network efficiency
Medium Impact Settings
filter_thresholds - Computation complexity
sort_strategy - Ranking time
halflife - Decay calculations
Low Impact Settings
log_output - Debug logging
Dive deeper into specific configuration sections:
Last updated 6 months ago