Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Badger/WBTC LP Strategies #74

Open
icecreamman8 opened this issue Jul 1, 2021 · 7 comments
Open

Badger/WBTC LP Strategies #74

icecreamman8 opened this issue Jul 1, 2021 · 7 comments

Comments

@icecreamman8
Copy link

icecreamman8 commented Jul 1, 2021

Intro

Badger is a DeFi protocol dedicated to accelerating the growth and usage of Bitcoin in DeFi. Badger's main product is the Sett Vault. The vaults take WBTC and LP pairs involving different types of BTC (WBTC, crvBTC, etc), and LP pairs involving their native tokens BADGER and DIGG. The vaults pay rewards in up to 3 different tokens (xSUSHI, BADGER, and DIGG) which have to be manually claimed.

I would like to take on the role of community pickle jar strategist, and develop 2 jars for the BADGER/WBTC LP pair that autocompound manually claimable rewards from Badger's Sett Vaults:

  1. BADGER/WBTC compounding Uniswap LP Jar
  2. BADGER/WBTC compounding Sushiswap LP Jar

Requirements

I am in touch with the Badger team, and will be working closely with them to ensure things go smoothly. Badger requires whitelisting, and I will arrange for Pickle to be whitelisted with their Vaults. The team also expressed a desire to have a symbiotic component in the Jars, which I will discuss and develop.

Target TVL

The TVL of the BADGER/WBTC Sett Vault is $10.6m for the Sushi LP, and $5.3m for the Uni LP. The combined TVL is ~16m. Pickle should aim to capture at least a third of this: ~$5m.

(The TVL of Badger as a whole used to be over $1B just two months ago, whereas it has now dropped to around $450m. During favorable market conditions, the TVL of BADGER/WBTC should be $50m+)

Long term, I envision this strategy capturing $20m+ of TVL.

Target APY

Taking the Sushi LP Sett Vault as an example:
image

You can see that only 10.39% is from autocompounding by Badger. This leaves 36.79% paid out in rewards that the user has to manually claim and compound. Compounded once per week, this translates to an APY of 44.3%. Adding in the 10.39% from badger's side, this jar would have an APY of 54.7%

Pickle would claim it's 20% performance fee from the base APR of 36.79%:

So the base APR available for us to compound is 36.79%. After the 20% perfromance fee, this becomes 29%. Compounded weekly, it's 33.5%. Adding in the 10.39% from badger's side, the APY of the jar after Pickle's performance fees is ~44%. With pickle rewards on top (assume ~20%), the user gets an APY of 65%, which is extremely lucrative compared to the 47% APY available through badger alone.

Badger Fees

Badger has 0 withrawal/performance fees for the BADGER/WBTC Vaults. Only the Sushi LP vault has a minor fee where 20% of the xSUSHI rewards are sent to the badger treasury. This is already accounted for in the vault APR.

(https://badger-finance.gitbook.io/badger-finance/fees)

Pickle Strategist Fee

My proposed duties:

  1. Get Pickle whitelisted with Badger's vaults
  2. Create 2 pickle jar strategies (one uni one sushi) that autocompound up to 3 reward tokens with a lucrative APY
  3. Arrange for possible symbiosis with badger within the strategy

For this, I propose the standard strategist fee of 7.5%.

Conclusion

BADGER/WBTC strategies would be a great addition to Pickle's offering. There's a great APR from which to extract performance fees, significant TVL to be attracted, relationship building between Pickle and Badger through whitelisting and Symbiosis, and a great product for users. I envision that with pickle rewards, the farm would have an APY of up to 80% which makes it a way better option for staking than Badger's native app.

@PickleFinance
Copy link

great writeup

@larrythecucumber321
Copy link
Contributor

Thanks for the detailed writeup @icecreamman8! I think leveraging our community's relationships with other DeFi protocols to form stronger bonds is an approach we should definitely pursue more.

I'm aware that Badger is generally averse to projects robo-farming their vaults and automatically selling their token rewards. I'm not too sure what your approach for symbiosis in the strategy is, but if the rewards aren't all sold and compounded into the base deposits, then the compounded APY of 33.5% might not be attainable. Could you please describe in further detail what your approach to the earned reward tokens are?

@icecreamman8
Copy link
Author

icecreamman8 commented Jul 2, 2021

Thanks for the comment @larrythecucumber321 !

The Jar wouldn't be dumping rewards, it's symbiotic as-is. The jar actually causes buy pressure for badger! it's good for their price.

Fundamentally, the jar's goal is to help users accumulate badger. Let's break down what happens to the rewards in terms of buy/sell pressure for badger. the rewards are all used to reinvest in the badger/wbtc pair:

19.28% sushi rewards -> 9.64% sold for badger, 9.64% sold for btc
9.11% badger rewards -> 4.56% sold for btc, 4.56% kept as badger
8.39% sushi LP fees -> 4.2% sold for badger, 4.2% sold for btc

Btc and badger reinvested into LP pair.

Badger buy pressure: 9.64%+4.2%-4.56% = 9.28%

So actually, the jar causes buy pressure equal to 9.28% APY. This is good for badger! Therefore it adopts a 'partner first' approach, and is symbiotic already, as it helps both badger and pickle!

The Jar is beneficial for both parties already. For even more symbiosis, pickle can take X% of the badger rewards and stake them instead of selling half and reinvesting into the LP.

Example calculation

If pickle stakes 20% of the badger rewards:

((9.11*.8)+19.28+8.39).8 = ~28%, compounded weekly to 32% + 10.39% from badger's own compounding = 42.4% APY with symbiosis, vs. 44% APY without symbiosis (including pickle's performance fee)

The comparison below is calculated for different levels of symbiosis.

% of badger rewards kept and staked vs. total Jar APY after pickle's performance fee:

0%, 44%
20%, 42.4%
30%, 41.6%
40%, 40.64%
50%, 39.71%

With juicy pickle rewards on top (assuming 20%) this makes for an especially tasty jar: 64% apy, symbiotic as-is, with great relationship-building and TVL opportunities.

I would like to emphasize that even if pickle stakes 0% of the badger rewards, the jar is still symbiotic as the autocompounding alone causes buy pressure for badger.

If we decide to stake a % of the badger rewards, that can surely be done as well.

@manymoneymanny
Copy link
Collaborator

@icecreamman8, three things here:

  • the LP fees aren’t harvestable, they’re already auto-compounded by Sushi.
  • for the final APY calculations, you can deduct a fee of 27.5% and not 20% since this would be the actual performance fee (Pickle + your proposed fee)
  • you can use this script if you want to consider a symbiotic strategy where the $BADGER is staked and the staking is auto-compounded. You will need to fork it and modify it if only a percentage of the $BADGER is staked. Note that this strategy would have no value for the part of $BADGER staking that already auto-compounds.

The final item would be to repeat this exercise for the other proposed strategy, as we may want to commission one but not the other as they will have different profitability. So far, you have only made the case for the SLP version of wBTC/Badger.

@icecreamman8
Copy link
Author

icecreamman8 commented Jul 5, 2021

Thanks for your feedback!

After consideration and further discussion with the badger team, I would like to only propose the Sushi LP Badger/wBTC auto compounding strategy.

  1. The sushi pool has more TVL for badger/wbtc ($11m in sushi vs. $5.5m in uni), and Badger is migrating to mainly using Sushi (for example, ibBTC is exclusively on sushi. They will use mainly use sushi from now on. They foresee most of the TVL migrating to Sushi pools eventually.)
  2. Sushi rewards are higher and not solely paid in badger. The sushi pool does not necessitate symbiosis, as the Sushi strategy already causes net buy pressure for badger. I demonstrate why below.

Sushi LP Badger/wBTC auto compounding strategy:

image

17.48% xSushi rewards, 9.15% Badger rewards, 9.72% vault compounding, 6.39% sushiswap fees. We only count the xSushi and badger rewards when calculating base APR.

Base APR = 17.48+9.15 = 26.63%
Base APR after performance fee = 26.63*(1-0.275) = 19.3%
Compounded Base APY (once a week) = 21.25%
Total APY (adding back in LP fees and Badger's own autocompounding) = 21.25+9.72+6.39 = 37.36%
Badger buy pressure = (17.48/2) - (9.15/2) = +4.17% APY

This is symbiotic already: We don't need to stake any badger. The badger team only suggested symbiosis as an antidote to any sell pressure. But if there is no sell pressure in the first place, we don't need to stake badger and lower the APY of the strategy.

Uni LP Badger/wBTC autocompounding strategy

image

24.59% Vault autocompounding rewards, 18.4% badger rewards.
Base APR = 18.4%
Base APR after performance fee = 18.4*(1-0.275) = 13.34%
Compounded Base APY (once a week) = 14.25%
Total APY (adding back Badger's own autocompounding) = 38.84%
Badger buy pressure = -9.2% = sell pressure!

The UNI LP strategy is not beneficial for badger! And the base APR for pickle is lower than the sushi version! No amount of symbiosis will negate the sell pressure, because only badger will always have to be sold for btc to compound into badger/wbtc.

Therefore, I propose and request that you commission me to build the badger/wbtc Sushi LP strategy, There is need for a service to claim the different types of rewards from badger and compound into underlying positions. There is also a significant revenue opportunity. To recap the value I bring:

  1. Get pickle whitelisted with Badger.
  2. Capturing a significant part of $16m TVL ($50m+ when badger and btc markets are doing well) badger/wbtc pools.
  3. Presenting a symbiotic, mutually beneficial Jar with a great base APR (26.63%) from which to earn fees. The final APY for the user will be around 40%, and with pickle rewards (assume 20-30%), likely 60-70% total. Very lucrative for users!
  4. Build a strategy base for future badger strategies, as the meat of the strategy is interaction with the badger protocol, and not transferable from existing strategy bases.

Thanks for your time!

@manymoneymanny
Copy link
Collaborator

@icecreamman8 thank you for taking the time to do this. We the team really appreciate it and would not want your efforts to go to waste. We encourage you to keep looking for opportunities that we may be missing and where you could make a difference – you identifying this opportunity and realising that you could add value is spot on. At the moment, for the proposed Badger jar, there isn't enough base APR to justify compounding at 27.5% fees – evidenced by the fact that the projected PickleJar APY is not beating the APR of the underlying farm at Badger. From the get-go, we do not proceed when this is the case, as the value of auto-compounding is not clear and it is unlikely this jar is sustainable once the $PICKLE emissions are diluted by the TVL moving to Pickle.

Note that your proposed jar, if it captures $1,000,000 of TVL, would make all us (Pickle + you) $55k or so. Not that we are allergic to making money or bringing TVL in (the main reason is that we normally don't start with the intention of subsidising yield), but we believe there are better opportunities out there for what would be our first community strategist.

Feel free to run the following script to verify the above number.

function incomeFromJar(tvl, apr, performanceFee = 0.20, periods = 365) {

  let feeSum = 0;

  const calculatePeriodReturn = () => tvl * (apr / 365);

  const calculatePeriodFees = () => {
    const periodFee = calculatePeriodReturn() * performanceFee;
    feeSum += periodFee;

    return periodFee;
  }

  const calculateResidual = () => calculatePeriodReturn() - calculatePeriodFees();

  for (let i = 0; i < periods; i++) {
    tvl += calculateResidual();
  }

  return feeSum;
}

const formatter = new Intl.NumberFormat('en-US', {
  style: 'currency',
  currency: 'USD',
})

const badger = incomeFromJar(1000000, 0.184, 0.275);
console.log(formatter.format(badger));

@icecreamman8
Copy link
Author

Thanks for the feedback. Completely agree with you, there are better opportunities out there! I'll get back to you guys with a few more ideas :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants