The Zama Bounty Program aims to inspire and incentivize the developer community to build dApps using the Zama Confidential Blockchain Protocol.
Each season, we introduce a new bounty that addresses real-world onchain privacy challenges. With this initiative, we invite developers to collaborate with us in advancing the FHE ecosystem.
For Season 9, the challenge is to build a privacy-preserving DCA bot with transaction batching using the Zama Protocol, with a price pool of €10,000.
In finance, Dollar-Cost Averaging (DCA) is an investment strategy where a market participant invests a fixed amount of money into a particular asset at regular intervals, regardless of price, to reduce the impact of volatility and lower the average cost per share over time.
This strategy is also popular in DeFi, where bots can be programmed to execute automated DCA purchases of a token as long as there are funds available in the wallet.
For example, Balmy and Sushi are well-known DCA bots that are publicly available for DeFi users. These bots execute automated strategies in liquidity pools across several decentralized exchanges (DEXes).
Unfortunately, DEXes are not private:
Ideally, the Zama protocol could improve this experience by hiding the trading strategies of DCA bots operating on liquidity pools. One promising approach is to add a transaction batching mechanism on top of the DCA bot.
The goal of this bounty is to build a privacy-preserving DCA bot with transaction batching using the Zama Confidential Blockchain Protocol. This bot will execute automated strategies while maintaining user privacy through a novel batching mechanism.
Why is batching essential
Traditional DCA bots reveal individual transaction patterns, making users vulnerable to:
Furthermore, the obvious approach—wrapping tokens into confidential ERC-20s—does not solve the problem. While confidential tokens hide balances and transfers within their own contract, the act of wrapping itself is visible on-chain. Anyone can see how much is being wrapped and when, leaking the user’s DCA strategy in real time. Without further protection, each wrap and unwrap action exposes the exact amounts the user intends to trade, defeating the purpose of confidentiality.
Batching solves these issues by aggregating multiple users' DCA orders into a single on-chain transaction, providing k-anonymity (where k is a fix number of users). When the batch executes, individual strategies remain hidden within the group, ensuring that:
1. Batching mechanism
Your solution MUST implement a batching system that:
2. Private DCA strategy features
Users should be able to encrypt parameters such as:
All these parameters must remain encrypted and only be processed within the FHE environment.
Submissions will be evaluated across several dimensions:
🥇Best submission: up to €5,000.
To be considered best submission, a solution must be efficient, effective and demonstrate a deep understanding of the core problem. Alongside the technical correctness, it should also be submitted with a clean code, clear explanations and a complete documentation.
🥈Second-best submission: up to €3,000.
For a solution to be considered the second best submission, it should be both efficient and effective. The code should be neat and readable, while its documentation might not be as exhaustive as the best submission, it should cover the key aspects of the solution.
🥉Third-best submission: up to €2,000.
The third best submission is one that presents a solution that effectively tackles the challenge at hand, even if it may have certain areas of improvement in terms of efficiency or depth of understanding. Documentation should be present, covering the essential components of the solution.
Connect your wallet to the Zama Guild and register from here.
News, research and product releases