Introduction
Welcome to the Dojo documentation!
Do you want to...
- Access trusted data across all of DeFi?
- Develop algorithmic DeFi strategies in Python?
- Backtest and simulate your strategy pre-deployment?
- Stress test your new DeFi smart contract?
- Check your strategy's performance and protocol statistics through an interactive dashboard?
- Execute strategies directly through Python?
Compass Labs developed Dojo, a Python-based DeFi platform for data sourcing, strategy development, backtesting, simulation, monitoring and execution. Dojo operates at the EVM smart contract level for realistic and risk-free testing and training of DeFi strategies and smart contracts.
Time to Market: 1 month
Features
Secure On-Premise Deployment
- Dojo is deployed directly on your infrastructure, whether on-premise or within your own virtual private cloud with providers such as AWS or GCP.
- This ensures that you maintain complete control over your data and operations. Your strategies and simulations remain entirely private, with no information shared with us or any third parties.
Data Sourcing
- Curated On-Chain Data Access: We run our own nodes and Dojo handles all indexing in-house, providing curated and fast access to on-chain data, including event and function call data for any contract and historic block. Here is a link to the example drive with Aave price oracle calls and Uniswap event & call data & GMX events.
- Custom Data Integration: Dojo supports data sourcing for supported environments and allows users to load any other required dataset.
Strategy Development in Python
- Simply Python: With Dojo's Python interface, you can develop DeFi strategies fast and effectively using pure Python.
- Easy-to-use Interface: Our Python interface seamlessly translates intuitive Python functions into smart contract calls, enabling comprehensive strategy experimentation. For instance, Python functions like
aave_flashloan
oruniswap_trade
are directly translated into smart contract calls, hiding technical complexities. - Custom Code & API Integration: You can run arbitrary Python code within your strategy, including API calls and external data feeds.
- Python's full ecosystem: You can use Python's robust ecosystem for data analysis and visualization. Developers can leverage algorithms and models to enhance decision-making and strategy effectiveness.
Backtesting and Simulation
- Transaction-Level Simulations: Dojo runs simulations on actual contract bytecodes on EVMs. This elimates concerns about bugs in the model or missed assumptions about the protocol, and enables capturing micro-effects that impact simulation results, such as precision and rounding. Dojo enables simulations on a block-by-block level.
- Agent-based Modelling: Dojo incorporates an agent-based simulation software that enables users to create and manage multiple agents with distinct strategies, including detailed interactions and adaptive behavior.
- Market Impact Modelling: Dojo incorporates market impact models for realistic simulations. Users can configure agents to represent market participants and broader market dynamics, to simulating how agents adapt their strategies based on market conditions and other agents' actions.
Real-time Performance Dashboards
-
Real-Time Performance Tracking: You can monitor the performance of your strategies in real-time through integrated dashboards.
-
Comprehensive Analytics: Through the dashboard you can save the data and compare and access detailed analytics on performance to evaluate strategy effectiveness and identify areas for improvement.
-
Customizable and Interactive Dashboards: Dojo lets you tailor dashboards to display the metrics and key performance indicators most relevant to your strategies.
-
Protocol Statistics: You can view all relevant statistics for all supported protocols like prices and pool liquidity.
Coming Soon
Protocol & L2 Expansion
We are rapidly expanding our support to include a wide range of protocols across chains. Let us know which integrations you'd like to see next!
Execution Routers
We're building out execution routers to move seamlessly from testing to live environments, ensuring a streamlined deployment process without additional configuration. This means:
- No Solidity Required: With Dojo you can easily deploy on-chain using Python, bypassing the need to learn and write Solidity code. This means implementing systematic trading strategies without custom smart contract development.
- Consistency, Scalability, and Reliability: You can maintain a consistent and reliable deployment cycle with a proven, standardized process.
- Real-Time Monitoring: Through the dashboards, you can track and monitor your positions in real-time, ensuring immediate visibility and management of your strategies.
Protocol Integrations
Dojo currently integrates with UniswapV3, AaveV3 and GMXV2 on Ethereum and Arbitrum. The foundation is now set for lending, spot, and derivatives.
We are expanding fast across protocols and L2s! If you want your chain or protocol to be integrated with Dojo, reach out!
Get Access to Dojo
Want to connect to the entire DeFi ecosystem with zero engineering efforts? Reach out for access and feel free to contact us with any questions or feedback:
- Support via email
- @labs_compass on Twitter