ChainState is a no-code tool to help generate position reports for auditors.
The auditors require knowledge of the past dollar value of a company's positions in liquidity pools. This information is available on the blockchain, but it is difficult to interpret. To solve this problem, a tool has been developed that collects on-chain and off-chain data and calculates the position in an easy-to-understand format. This tool is designed specifically for UniSwap v2 and v3, and it can be used by non-technical individuals to run queries. The user inputs RPC details, relevant (contract) addresses and a block and gets back the position at that time.
ChainState was built in Python and makes heavy use of the web3 and dash libraries. Given the UniSwap protocol version, RPC and API keys and relevant (contract) addresses or transaction hashes, the tool creates a report. To calculate the v3 positions, the technical note written by Atis Elsts was used (https://atiselsts.github.io/pdfs/uniswap-v3-liquidity-math.pdf).