dixit is a Rust-based tool that collects CoinBase RFQ data via WebSocket, stores it as Parquet files, and enables data analysis using Jupyter notebooks.
This project includes three crates:
dixit: Pulls and persists data from Coinbase.dixit_persist: Handles struct persistence in Parquet files.dixit_persist_macros: Provides a macro for easy persistence.
For more on the persist crates, see the corresponding README.
You'll need Rust, Cargo, and Just for data collection, and Python with a virtual environment for data analysis.
Run just in the command line to view available commands.
- Run
just coinbaseto continuously download data from Coinbase and generate Parquet files in theoutputfolder. - Stop the task when needed.
- Go to the local folder and follow the instructions in the corresponding README to launch a notebook for analyzing Coinbase data.
Note: The default notebook reads sample data from the local folder but can easily be configured to read from the output folder.
To extend the project and support other venues just replicate the approach used in dixit::main::coinbase.