
Last week, we were fortunate to have Joey Zacherl, Co-founder of KeeperDAO, join us on the 0x Discord server for an inaugural community AMA event hosted by yours truly š. The event was well-attended and seemed to be a hit with attendees, so we hope this will be the first of many Discord AMAs. If youāre building on 0x and would like to run a similar event, reach out to me on Discord (nikita#4377) and letās chat!
Background
KeeperDAO is a DeFi protocol that lets participants in communal liquidity pools (known as keepers) participate in strategies involving margin trading and lending. KeeperDAO recently launched The Hiding Game, which is the cooperation between users and keepers (arbitrage bots) to hide MEV (miner-extractable value) by wrapping trades/debt in specialized on-chain contracts. It maximizes the profits available from these opportunities by having priority access. The profits are then shared directly with the user as a reward for using KeeperDAO. The Hiding Game uses the 0x v4 protocol for DEX trades.
Joey is also the founder of VolleyFire, a leading 0x market maker. You can learn more about Joey and VolleyFire here.
Q&A Transcript
Q1: Please give some context on what āliquidation engineā means in the context of KeeperDAO and how it works?
A1: The first application of this liquidation engine is referring to a Hiding Game feature which will be launched soon. Our goal is to improve the DeFi user experience specifically in the scenario where a borrower faces a liquidation. Today, thereās a dark stormy cloud around liquidations. Gas auctions, oracle attacks and manipulation, collusion, etc., all to capture profit from liquidations. And at the end of the day, the user (borrower) is the one whoās taking this massive loss which ends up in the pockets of the other participants. We are building a better experience for the user where, in the event a liquidation takes place, the user gets rewarded based on the profit captured from their liquidation. Our solution eliminates gas wars, puts money back into users pockets, aligns incentive between users and keepers, and provides a better user experience than directly borrowing from an already existing protocol.
Q2: [Can you talk about the KeeperDAO] roadmap and how RenVM will be leveraged?
A2: We have some ideas weāre working on with regards to RenVM and renBTC. Weāre not yet ready to make any big announcements. Stay tuned.
Q3: [What are your] top tips for an aspiring keeper? Coding languages, learning elements etc.
A3: Great question. I would love to start a keeper bootcamp or keeper university. Unfortunately our team is still too small to operate something like that, and we have a few higher priorities at the moment. Right now weāre catering more towards the experienced keepers. But here are some tips for noobs and intermediates.
Noob tip:
- Find others keepers & bot traders to share ideas, bot architecture, etc even if youāre not working on the same project.
- The #Keepers channel in our discord has a lot of keepers actively chatting and lurking while they build in DeFi. https://discord.gg/YsT3nVZr
- Create a simple goal to get you one step closer to becoming a keeper. Could be as simple as successfully making calls to an ethereum node. Look up ethereumās JSON RPC. Or you may already be doing that and want to focus instead on making your first successfully arb between two DEXs. You could also build a proof of concept DEX aggregator.
Intermediate tip:
- Upgrade your already existing trading bot so that it can generically support any DEX integration. Scaling is critical, you should be able to take a new DEX, and plug it into your trading operation without a massive refactor.
- Strike a balance between performance and productivity. C++ provides amazing run time performance, but that programming environment may very well kill your development productivity.
- Integrate with 0xv4. This is the protocol used by the Hiding Game for DEX trades. 0x open orderbook will also be transitioning to 0xv4 soon, youāll want to leverage that as well
Pro tip:
- If you are a veteran keeper/bot trader, please reach out so I know to contact you when weāre ready to coordinate keepers. Weāll be onboarding the experienced veterans first.
Q4: [Iām] really, really, really tempted to stake USDC to earn ROOK
A4: On https://app.keeperdao.com/ you can stake. Stakers are known as liquidity providers, or LPs. This means your tokens are used for keepers to flash loan and capture profit. LPs earn ROOK rewards. LPs also earn deposit fees from other LPs. The purpose of the deposit fee is to incentive long term liquidity providers to stay, as opposed to short term yield farmers who deposit for one day, then withdraw the next day. This encourages people to provide liquidity for longer periods of time because they get a small reward from other LP deposits in addition to the ROOK rewards they collect from keeper activity.
Q5: What or how is 0x involved with KeeperDAO?
A5: KeeperDAOās Hiding Game uses 0xv4 as the protocol for DEX trades. You can read more about that here: https://medium.com/keeperdao/let-the-games-begin-a36c3fd8ba90
Weāll also be launching our own ZRX staking pool once the 0xv4 RFQ protocol fee details are finalized.
Q6: Is Matcha going to be a Hiding Game partner? Or could the 0x API or Mesh network be a Hiding Game partner⦠or at what level is Hiding Game integrated? Just trying to better visualize how and where hiding game fits in to defi.
A6: Weāve extended the invite and weāre discussing how to proceed. There are some details yet to be worked out around how exactly to share the rewards with partners, as there are a few different ways to do that. Weād also like to find a way for the ROOK and ZRX token economies to work together. Whether thatās through the ROOK rewards mechanism, or the ZRX staking mechanism, etc.
Q7: What are the main updates on 0x v4 versus 0x v3? How do these compare with other competitors?
A7: From our perspective, the big ones are:
1.) Gas efficiency & optimizations.
2.) Orders fillable by only whitelisted group of takers (keepers)
Q8: Do you see other projects joining to integrate other private orderbooks, maybe with the different incentives? How can 0x API help facilitate the access to all different orders books, for users/relayers?
A8: 0xAPI is currently meant for open orders fillable by anyone. We currently host our HidingBook (the Hiding Gameās orderbook) ourselves on a server, but we have some plans to expand this in the future that may be relevant to your question. We would like to see this as a distributed orderbook, similar to how 0xMesh propagates the orders around a network.
Q9: When can we expect more keeper bots in the ecosystem? How does VolleyFire and KeeperDAO fit into the whole scheme of things? Can they benefit mutually from each other?
A9: Weāll be onboarding other keepers into the Hiding Game once we have finalized our plan for coordination.
VolleyFire operates the largest staking pool on ZRX and is an active market maker and trader in the DeFi space. Itās very common for Ninja, our internal keeper bot, to fill a VolleyFire order. For example, a Hiding Game userās order may cross with a VolleyFire order. In which case the bot facilitates trade on both ends.
Also on the VolleyFire side, we are currently integrating with the HidingBook to market make and provide additional direct liquidity to help Hiding Game userās facilitate trade.
Q10: Could we also see something in the future where 0x and KeeperDAO exchange tokens to create a mutually beneficial relationship?
A10: Certainly a possibility. Those formalities have historically done well.
Q11: How does Metric fit into the 0x and Keeper DAO puzzle?
A11: The most immediate benefit for METRIC and KeeperDAO is the HidingBook integration, where METRIC users gain access to the limit order reward system, and the Hiding Game gainās the METRIC userbase. Weāre open to deeper partnership discussions linking the token economics.
Q12: Are there any plans to implement organic growth through airdrops via ZRX/ROOK for using Matcha or KeeperDAO?
A12: Our current reward program is exactly that. Instead of an airdrop, you get rewarded for using the Hiding Game to trade. Right now, 100% of all profit captured by keepers via Hiding Game limit orders translates into a ROOK reward. You can read more about that here: https://medium.com/keeperdao/let-the-games-begin-a36c3fd8ba90
Q13: Will Volleyfire increase rewards shared in 2021?
A13: Great question. I donāt have a timeline for a change in the rewards share %. Weāve been letting economics play out, and watching other pools as they experiment with various share %ās.
One thing to keep in mind is that a fraction of that reward goes towards making our orders more aggressive and more likely to fill. In other words, our trading algorithm actually expects the reward and makes orders more aggressive accordingly. Which means we do take losses on some trades anticipating a reward to help counteract that. Itās also worth noting that you can never lower it, only raise it. So if we decide to raise it again, that will be a permanent change. Which means we have less reward to help make our orders more aggressive and more fillable which is a bit more restrictive.
Weāre currently focused on doing more volume and adding new markets which also helps increase the reward quantity
Q14: How can a user (trader) earn ROOK through the hiding game? For context I placed a limit order yesterday ā which was only filled 99.01% for some reason ā and I have not seen any ROOK rewards?
A14: Great question. Weāre working on making our app more intuitive and informational. And weāre also working on getting the user direct feedback on exactly where their rewards came from and how much. It will take some time to get all these features up and running.
In the meantime, hereās the answer to your question. Rewards are delayed about 24 hours. Youāre likely waiting for that epoch to end (which should be ending any minute/hour now). Then your rewards will appear in https://app.keeperdao.com/ In the future, weād like to provide more insight into the actual trade/tx link to etherscan/etc.
Q15: Great thanks for answering my question. I think itās great that youāre integrating with community run projects like Metric. Really positive.
A15: We feel that DeFi projects are a huge reason for why MEV and profit opportunities exist in the first place. And today, 0% of the captured profit is going to them. This is a big thing weād like to address. Which is why we are including partners in the ROOK rewards formula.
Q16: What is the future for ROOK supply?
A16: ROOK token economics do involve emissions. Which means the token supply inflates over time. The purpose of this is to increase the value of ROOK participants (users/keepers/partners/etc) over time, while diluting out everyone else. This approach provides a lot of benefits that something like a Bitcoin economy (finite supply) is completely unable to support. This is detailed in the whitepaper and will be expanded upon over time. You can follow up on this in our discord and our Medium
https://github.com/keeperdao/whitepaper
Q17: Do you have any plans of integrating other chains? For example BNB?
A17: We are evaluating both layer 2 and BSC(Binance chain). Right now, we need most of our focus on layer 1 because these opportunities will always exist on layer 1. But we also feel these various layer 2 solutions will provide opportunities for both KeeperDAO and VolleyFire. This is still in the brainstorming and R&D phase. Weāll reveal more in time.
Q18: Hi Joey, can you elaborate on criteria to become a keeper? Also, help us understand your bot competes with other bots, with regards to speed of execution? Lastly, have we considered an insurance policy to protect liquidity providers, if yes, what is the plan?
A18: See this: (previous Q/A3)
Iām working on a formal Q&A to help me determine whether or not someone is eligible to become a keeper in the short term. As mentioned, weāre currently catering to the veteran keepers since weāll need their bot to be in tip top shape. In the future, once weāve streamlined coordination a bit more we can loosen the requirements on keepers.
I donāt currently have guidelines to share. Iād say, if youāve been writing trading bots on Ethereum for at least 1ā2 years, and have made money trading, and have a wide range of DEX integrations, youāre the perfect candidate. If you donāt meet all of these requirements, keep working towards it because by the time youāre ready for us, weāll be ready for you to join coordination efforts.
We donāt currently have an arrangement with an on chain insurance fund. Itās something weāre examining though.
Q19: what are the incentives to holding $ROOK? Is there any revenue/profit distribution to $ROOK holders or $ROOK staking pools currently or planned?
A19: ROOK holders govern the KeeperDAO treasury. which currently has over $32mm and is linked below. Weāre still finalizing governance features, more will be announced on this soon.
Weāll also be enabling ROOK holders to bond their ROOK to keepers. You can read about this in the whitepaper. More details to be announced in the near feature once we get Coordination going.
https://etherscan.io/address/0x9a67f1940164d0318612b497e8e6038f902a00a4
https://github.com/keeperdao/whitepaper
Q20: What happens to MEV, and thus KeeperDAO revenue, once ETH 2.0 roll out is complete?
A20: Great question. Even with ETH 2.0, Ethereum layer 1 and MEV opportunities will always exist. ETH 2.0 may change the way we interact on the blockchain, but these opportunities will still exist. Layer 2 solutions are similar, they may change exactly how we behave, but there will always be arbitrage and liquidation to be captured. For example, we can bring the Hiding Game to a ETH 2.0 layer 2 solution.
Q21: Can you elaborate on the health and future of the staking pool āVolleyFireā? What does the next couple years look like for staking pools?
A21: I anticipate an increase in volume and rewards for the ZRX staking pools. Right now, thereās a lot of trading volume on 0x that does not generate a reward. 0xv4 and its evolution is beginning to change that. The 0x team is working hard on upgrading the protocol fee mechanism to be more efficient and more future proof.
On the VolleyFire side, weāre working on increasing trading volume and supported pairs, both of which increase generated fees. And weāre also preparing for the 0xMesh open orderbook to upgrade to 0xv4.
Q22: What are the next steps in the evolution of ROOK/HidingGame to improve the limit order experience?
A22: Great question. Above I mentioned how weād like to provide the user more insight into how the rewards are calculated and exactly what tx hash filled the userās order. But we have some other features weāre working on as well.
Weāre building a feature that can be thought of as an instant limit order. Where you ask our API āwhat price do I need to set such that my limit order will fill instantlyā? This is useful for 2 reasons.
1.) You just want to trade immediately and do not want to wait and are not picky about the price because you know youāre getting a ROOK reward during any arbitrage.
2.) You are curious what that price is, and want to set your trade price based on that price.
Weāre also planning on having our keeper bot fill orders at medium and safe low gas prices instead of fast gas prices. Technically our keeper can do that today, but there are a few edge cases we need to address before we can do that consistently. For example, right now the fast gas price is 150 Gwei and the safe low is 109 Gwei. Ideally, every trade that has a decency long expiration, could be filled closer to 109. Lower gas price = more profit = more ROOK in the userās pocket.
Q23: What factors will impact the likelihood to fill limit orders? Are there capacity limitations (orders that need filling vs keeper server ability?), or is it purely a matter of a limit order having a profitable enough arb? Iāve noticed that orders require some degree of compensation beyond estimated gas to get reliable fills. How does this get more competitive over time?
A23: This reply shines some light on this question: (previous Q/A22)
But also: order size, gas prices, prices of other DEXs, gas efficiency of other DEXs, etc. Right now, the most gas efficient way to fill a Hiding Game userās order is with another Hiding Game userās order. And because of this, weāre integrating VolleyFire to the HidingBook to market make and help provide liquidity.
The current gas price climate makes it hard for retail users looking to make small trades. Iāve noticed some users will try to put a $500 order when gas prices are ~300 Gwei. And it will almost certainly never fill because the bot would have to pay $100++ in gas in order to arb it.
So the larger the order the better. Because then it dwarfs the gas factor.
Itās also worth noting that if a trade requires 3 hops (WETH->USDC->LINK->WBTC) then the transaction will require more gas. As opposed to 2 hops (WETH->USDC-WETH). Thereās generally more liquidity across a WETH path than a USDC. Path. So if a user is trading a random token for USDC or USDC for a random token. It generally takes 3 hops. But if the user is just trading a random token for WETH, itās almost always 2 hops.
Q24: Are you hiring devs?
A24: Yes we are hiring. If youāre interested please send a CV.
Q25: Thanks, Iām wondering since the HidingBook is a private orderbook, that cancellations could be done off-chain as well because they donāt have to be distributed to nodes.
A25: We could implement a soft cancel, but there would be a small period of time where our keeper bots could still fill that order. Say for example they were already in the middle of processing and filling that order and you sent a soft cancel, right now thereās no event to send a last millisecond cancel to the bot.
This brings up an idea though, we could implement a soft cancel feature with a disclaimer. It would delete your order from the orderbook with the intention of hoping that itās not already being filled. If thatās the case, youāre off the hook. But if the botās already filing it and the tx is already in mempool waiting to be mined in, you would need a hard cancel to cancel it.
Would you find this soft cancel feature useful? It would basically be a delete from orderbook feature. One thing weād have to communicate with all of our keepers is that when it gets deleted from the orderbook, they need to delete it from their orderbook cache they keep in memory. Right now, our keeper bot only deletes it if itās on chain state is actually not fillable. I would probably trick it by sending it an event saying the order is no longer fillable, resulting in the keeper bot deleting it.
Q26: A soft cancel or ācancel allā would be awesome and also clear the orderbook of some of those 99.8% filled hanging orders
A26: One tricky part here, if you do soft cancel, technically that orderās still fillable. If it gets filled, you wonāt have any visibility since youāve deleted it from the database.
Great questions everyone. Thanks for coming out!
Thanks for taking the time to hang out and share with us Joey!
Follow ā KeeperDAO
Ā» Website: keeperdao.com
Ā» Twitter: @Keeper_DAO
Ā» Discord: Join their server
comments
Sign in or become a 0x Blog member to join the conversation.