We are happy to announce that the fourth Scrypto Challenge is live. For this competition, you will have 4 weeks (until August 30th) to come up with a Scrypto package with portfolio management or yield farming features. If you are not familiar with this DeFi concept, don’t worry! We got you covered in the next section below. Also do not worry if you have never touched Scrypto before, as the previous challenges have shown, people with minimal programming experience are able to pick up Scrypto fairly quickly.
Just like in the previous challenges, you will fight (kindly) for your spot among the three Scrypto champions who will share $15 000 worth of XRD and be announced a couple of days after the challenge ends. There will also be prizes for ALL participants! Everyone will receive a one of a kind NFT representing their participation in this competition.
Interested in participating? You will find all the information you need in this article.
The Challenge
Yield farming is when users of a decentralized network try to maximize their gains by using different protocols. They are looking for the best set of protocols on which to provide liquidity, lend tokens or stake their tokens to maximize their return on their capital, often measured by APY (annual percentage yield).
The APY you can get is often hard to predict, may change over time, or may just be difficult for the average user to understand. So yield farmers are constantly moving their assets around and finding the best strategies to maximize their return. The strategies can get really complex and may involve many different protocols at the same time.
That’s why people came up with decentralized applications (dApps) to automate this process. For example, on Ethereum’s Yearn Finance and Harvest Finance, users can simply deposit tokens inside a pool and let the protocol manage the farming strategy for them. Another example of yield farming is with no-loss lottery protocols like Pool Together where users deposit tokens in a pool and the protocol uses those tokens to generate yield from different other smart contracts. At the end of every month, random users receive the profits that were generated.
Portfolio management - buying and selling tokens in the goal of making profits - has also been automated on-chain with smart contracts. For example, TokenSets and dHEDGE allow portfolio managers to create trading strategies and allows investors to allocate capital in the strategies they believe in. Investors can then withdraw their tokens from a strategy to realize their gains or losses.
During this competition, you will build one of those protocols yourself or as a team. As we explained, portfolio management and yield farming protocols rely on many other external protocols (oracles, decentralized exchanges, lending platforms just to name a few). In this competition, you might have to come up with external blueprints that your main yield farming or portfolio management blueprint will use. Those external blueprints do not have to be packed with features – or even do very much at all. You can simply create mocked blueprints that simulate the interfaces enough for you to create test transactions on your own blueprint. Or you can find inspiration from the previous competition submissions - where we already have oracles, decentralized exchanges and lending platform blueprint examples. Regardless of your approach, we’ve increased the prize pot once again on this challenge, since it’s a bit more complex than what has come before.
Prizes
We are going to split $15 000 worth of XRD between the three best submissions. First place will get $8500 XRD, second gets $4500 XRD and third gets $2000 XRD. Other than monetary prizes, each participant will receive the “Portfolio Management & Yield Farming” edition of the developer event NFTs. We are also going to give a Radix t-shirt to 10 randomly selected participants and to the three winners.
The Judging Criteria
When the challenge is closed for submissions, the Scrypto team will review the submissions and decide on the three winners based on these criteria:
- Quality and asset-orientedness of your code. Refer to our design patterns page.
- Breadth of functionality
- Creativity of the concept
- Quality of the documentation and comments in the code for others who wish to use the blueprint
- Usage of the frontend javascript SDK or the transaction manifest to allow us to test your components using a web interface. The look of the frontend will not influence the judging.
Please note that we decided to make a change to the last criteria so that you can decide if you prefer to provide a front-end interface or simply provide transaction manifests. In previous competitions, participants had to build a front-end to get points for this criteria. This resulted in many high quality Scrypto examples not making it to the top three because they didn’t provide a web interface.
How to participate
To participate in this Scrypto competition, please do the following:
- Install the Scrypto toolchain and make sure you are on v0.4 with “scrypto --version”.
- Fork the challenges repository.
- Clone the forked repository on your local environment.
- Start a new scrypto project with the command “scrypto new-package [name]” inside the “portfolio-management-yield-farming” directory.
- Before the deadline on August 30th, 2022 at 11:45 pm UTC, commit and push your project folder and create a pull request here.
- Come say “Hi!” in the #scrypto channel of our Discord server. The community will give you a warm welcome and help you with whatever question you might have.
Resources
Here are listed some resources to help you work through this competition.
- We highly suggest that you read the Scrypto documentation. This should be your starting point if it is your first time using Scrypto.
- You should look at previous competition entries to help you build the external blueprints your submission might interact with.
- This article by BlockWorks explains what Yield Farming is and outlines popular protocols.
- Video on how dHEDGE works in the point of view of a user
- Our Discord community contains great resources and is an amazing place to find help if you are stuck somewhere
- We will host a Discord Live Q&A some time during the month of August to answer your questions regarding Scrypto and this challenge. Get a reminder by joining our developer mailing list
Details of the Challenge
- Your entry must be built with Scrypto v0.4 or v0.4.1.
- You can submit multiple examples but only one will be considered for the prizes.
- The competition starts on August 2nd, 2022 at 9:00 am UTC. All entries must be submitted no later than August 30th, 2022 at 11:45 pm UTC. The winners will be announced by September 8th, 2022.
- $15,000 value of XRD will be shared between 3 winners. 1st gets $8,500 XRD. 2nd $4,500 XRD and the 3rd $2,000 XRD. The value of XRD will be based on the spot price when we send the tokens.
- Decisions on the winners are at the sole discretion of the RDX Works team and the decisions are final.
- We will keep track of the NFTs and their owners internally until after Babylon release when they will be minted and sent to Radix addresses provided by each participant.
- All entries are subject to the Radix competition terms and conditions. Winners will be required to disclose their name, DOB, and country of residence to receive any XRD prizes.