top of page

What is programmable.fi?

With Yearn vaults, you probably know that you can only earn a yield in the same token(s) you deposited. I.e., deposit CRV/ETH LP tokens in Yearn, and Yearn will deposit those LP tokens on Curve/Convex and compound the CRV and/or CVX emissions into more CRV/ETH LP tokens, or deposit $ETH into a lending strategy on Yearn, and Yearn will depoit $ETH onto money market(s) yielding the highest rewards for lending, so if the $ETH is spread across Compound, Aave, Silo, etc., $COMP, $AAVE, and $SILO are all sold off and used to buy $ETH and compound back into the strategy. But the problem with this is that users don't have control over which token(s) they received their yield in, i.e., they could not choose how to earn their yield. What if the whole reason the user deposited $ETH into that lending strategy was because the yield was attractive enough for them to have a positive delta (exposure) to a token they didn’t want (in this case, $ETH)? Then wouldn’t they want to realize profits from their accrued yield to build up a position that they actually wanted and then earn a compounded yield on that? For example, maybe a user wanted to earn that yield denominated in $DAI and then earn a compounded yield on that by depositing it into the DSR. Or what if a DAO with stablecoin exposure (which let's assume acts as a sort of backstop/floor price for the native DAO token) wanted to automatically build up market exposure (let's say to $ETH) and then increase that exposure through earning a yield on it (let's say by buying $rETH/$stETH instead of vanilla $ETH) without spending time organizing contributors to sign off on the multi-sig transaction(s), which would be ineffective in terms of compounding frequency, gas costs (as yield aggregators optimize for this through free market dynamics), and of course an opportunity cost of time. These are just a few examples of scenarios where it would be beneficial to earn a "customizable" yield.

 

So that's what programmable.fi sets out to do, which, as implied in the name, allows users to choose which token(s) to earn a yield on. The protocol would be built on top of existing yield aggregating/autocompounding protocols like Yearn, but would basically allow users to customize their yield farming strategies and build a portfolio in the way they prefer. Also, with programmable.fi, strategies that would be supported would also allow stripping off the inherent interest rate. What I mean is that if a user lends out 1 $ETH token on some money market (forget about extra rewards in the form of native token emissions you might get for now, for example, $AAVE, $COMP), they accrue yield accrued through the lending interest rate, which will reflect through your $ETH lending position growing in $ETH terms. So anything on top of the principal $ETH token deposit would be reinvested into a position they actually want, and they could then additionally (optionally) earn a compounded yield. For example, any yield earned from lending the user's $ETH would be used to buy $USDT and then be lent out on Aave (a combined strategy built on top of a yield customizing strategy). 

 

Complex iterations like this are obviously down the line, so the MVP is just a strategy built around the DSR, where users deposit $DAI tokens in the protocol and any earned yield in $DAI is sold off to buy $stETH (compounded $ETH yield), basically a strategy that allows people to stack $ETH LST(s) without needing to have any market exposure.

Read more about programmable.fi

Check out my blog post on programmable.fi below

image.png
image.png
bottom of page