Supported Protocols
Last updated
Last updated
Currently, Tycho supports the following protocols:
uniswap_v2
Native (UniswapV2State
)
1 μs (0.001 ms)
Ethereum, Base, Unichain
uniswap_v3
Native (UniswapV3State
)
20 μs (0.02 ms)
Ethereum, Base, Unichain
uniswap_v4
Native (UniswapV4State
)
3 μs (0.003 ms)
Ethereum, Base, Unichain
vm:balancer_v2
VM (EVMPoolState
)
0.5 ms
Ethereum
vm:curve
VM (EVMPoolState
)
1 ms
Ethereum
sushiswap_v2
Native (UniswapV2State
)
1 μs (0.001 ms)
Ethereum
pancakeswap_v2
Native (UniswapV2State
)
1 μs (0.001 ms)
Ethereum
pancakeswap_v3
Native (UniswapV3State
)
20 μs (0.02 ms)
Ethereum
ekubo_v2
Native (EkuboState
)
1.5 μs (0.0015 ms)
Ethereum
There are two types of implementations:
Native protocols have been implemented using an analytical approach and are ported to Rust - faster simulation.
VM protocols execute the VM bytecode locally - this is easier to integrate the more complex protocols, however has slower simulation times than a native implementation.
Interested in adding a protocol? Refer to the documentation for implementation guidelines.