the "Tuner", a programmable, transaction-based Uniswap V3 Simulator with 100% Precision

Before an orchestra, every musical instrument has to be in-tune, to ensure an outstanding performance.
Before running a strategy, every parameter has to be fine tuned, to maximize the performance.
Tuner is a programmatic Uniswap V3 simulator that allows strategy backtesting on a transaction-to-transaction basis with arbitrary or historical data without the EVM, it runs independently yet completely retains the exact smart-contract behavior of the intricate design and implementation of Uniswap V3.


Tuner is fundamentally a state machine, it can:
Completely replicate the tick-level calculation
  • this means your strategy will run through the Uniswap V3 implementation logic instead of just the high-level mathematic model.
Maintain the identical tick-level precision of prices, fees, and positions of Uniswap V3
  • this means the result of your backtesting is true to the real performance with the minimum margin of deviations.
Run fast
  • the EVM is slow, the historical dataset is huge, the Ganache cannot do the job, so use Tuner.
Fast-forward and rewind transactions
  • this means you can easily repeat a small portion of your test with a different set of parameters without the need to start over.
Take or recover from a snapshot(state)
  • this means you can run continuous regression test as your strategies constantly evolves.
Branch out and runs in parallel
  • this means you can run multiple back-tests each with a different set of parameters at the same time and compare the performance.
Persist historical data and strategy execution records in a SQLite database
  • this means the strategists can do advanced statistical analysis both in real-time and after the testing.