Establish a Smart Treasury

$IDLE Tokenmoics - Where we are
Over the past could days there have been many discussions about $IDLE, its tokenomics, and value capture proposition, and there have been two competing camps for this, high-value and fast (uniswap LP mining program), and slow but long term.

A uniswap liquidity mining program for $IDLE would quickly ramp up liquidity, for the short term, and as soon as the program finishes it is likely that that liquidity will dry up, and where do we go from there? Another issue which has been brought up is that this incentive program would attract pump and dump actors, which will have a devastating effect on the token at this young stage.

Smart Treasury
A smart treasure is essentially a balancer smart pool, in which ONLY the IDLE protocol can add or remove liquidity as described in the following article by Joel Monegro.

As Joel eloquently describes, there issues with tokenomics which promote ā€˜buy-back and burnā€™. To me, the most important point is that this does not boost the value of the token which didnā€™t already exist there. IE the supply shrinks, which causes the price to go up, but the market cap remains the same. Please read the full article for more insights into this.

How would a Smart Treasury Work for IDLE
Fees which are generated from the protocol can be redirected into the balancer pool, acting as a ā€˜buy-back machineā€™.

Say we create a smart treasury of 10,000 $IDLE, to begin with, split 90% IDLE, 10% stable coins from fees. As fees are generated from the protocol, a portion (or all) can be deposited into the smart treasury, and since the balancer pool wants to return to its defined weights, it will either become an opportunity for someone to sell IDLE to the treasury, or the price of IDLE has just increased.

As IDLE matures the protocol can vote to add more $IDLE tokens from the community treasury to increase liquidity or remove it can vote to remove liquidity to fund some grants to improve $IDLEā€™s community.

In addition to this, the balancer pool will be generating trading fees by acting as a liquidity provider.

Here is a crude diagram. Forgive me for the quality, it was late when I wrote this.

There should be little technical work to implement this, since balancer has already written the code for the functionality we require. @william youā€™re excellent knowledge and insight would be much appreciated from a technical view on this.

As a side note yearn community has had similar discussions regarding an idea like this: Link. The $YFI token is distributed differently to how $IDLE is, so bear that in mind when going through the comments.

12 Likes

Interestig idea, itā€™s like the second pool that Aave will create on Balancer for is Safety Module, they chose a pool with 80% AAVE and 20% ETH.
Link: Aavenomics safety-module


If we will create a pool with 80% IDLE, 10% BAL and 10% stablecoin with fee under 0.5-1% we can earn BAL too, then they can be sold for increase the Smart Treasury (or redistributed to stakeholders)

5 Likes

Thatā€™s quite interesting, and it one of the cool things about smart pools is that assets can be added or removed depending on governance decisions.

We should think which stable coins we want in this pool, and their weightings (which should add up to 10%).

Should we weight usdc more since there is more AUM in idle in this token?

Should we include wbtc?

Should we sell all fees for eth and just have as the ā€˜stableā€™ asset?

There is a maximum of 8 tokens per pool. Once the core mechanism is setup, we can discuss adding other tokens for extra rewards such as BAL

Itā€™s an interesting proposal it will both incentivize liquidity, provide a new source of income for the protocol (through balancer fees and potentially with BAL) and works as a buy-back machine which seems great.

From a technical perspective, even though Iā€™m not very familiar with the Balancer pool creation process, I would say that it wonā€™t require much code if the code for this type of pool is already available. For redirecting fees it can be done but I suppose you cannot send tokens directly to the balancer pool but you rather have to call some sort of deposit method so an intermediate contract maybe needed for that (without changing the main IdleToken contract).

3 Likes

hereĀ“s an example:

its for configuring the pool for liquidity bootstraping but should provide a nice overview.

1 Like

image

in the example @8bitporkchop used 90/10 and IDLE/stablecoin
is everyone thinking the same? stablecoin or ETH or wbtc? 90/10 or 80/20 or 80/10/10?

@8bitporkchop already suggested this pool could become the main source of liquidity (initially at least) . I would point out that such a pool would cope much better with IL than a 50/50 pool on uniswap.

@william and @FedeCrypto pointed out that on top of the trading fees, the smart treasury would also capture value from other gov tokens that could either be sold or distributed.

A 3rd point is that the profits from the strategies are generated in stablecoin and that could be used to buy back IDLE on the main (treasury owned community pool) and create some buying pressure.

What details are we missing?
What would be the next steps?

1 Like

The idle protocol is collecting feeā€™s already in 7 different crypto currencies FeeAddress. It might be better to exchange the feeā€™s in their respected currencies to ETH, and use that as the ā€˜stable coinā€™ pair for $IDLE. In addition to this, ETH is the most liquid coin on DEXā€™s to trade against, and it is the native currency for ethereum. Finally, ETH should have lower IL than a stablecoin, (on the assumption that there is a stronger price correlation between $IDLE and ETH, than $IDLE and USD).

We also need to think about how much $IDLE we actually want to put into this pool, because the community needs to match 10% of that in the pair currency. Currently, the FeeAddress has ~$500 USD worth of coins, which means with a 90/10 pool, we can only add $IDLE worth up to $4500, however, this will change over time.

Some details I want substantiated are regarding the implementation

  1. The original article by Joel Monegro from PlaceHolder VC mentions that the protocol is the only whitelisted user to the pool? Is this something we want to do?
  2. When governance wants to add or remove liquidity, what are the risks, technical, and economic?
  3. What trading fees should we set. (I am of the opinion that since this is a protocol majority held pool, that the fees be set quite high)
1 Like

i go with ETH too because of lower IL.

question: to get BAL gov tokens do we need to add BAL in the pool? if yes what is minimum size? 5-10% ?

implementation details, my 2 cents:
1- tentative yes (just the protocol). @8bitporkchop why not?

2- economic risk is that the rest of the world might agree/not agree with the IDLE comunity. So prices will move when you add liquidity, change token % in the pool or change fees.

3- i go with either standard fees or cheaper. Give reasons for users to use this pool not competitorā€™s . Also, keep in mind that you are also (mostly, I hope) providing a service to users of the Idle protocol, not only speculators. So lets be nice! :kissing_heart:

this is essentially an algorithmic central bank. Im 100pct supportive as the bank will always buy low and sell high if its built properly.

I personally favor the establishment of a smart treasury.

I would propose at the start we have a smart treasury that is $IDLE and [USDC and/or ETH] (all fees are converted into one/both before they are ā€œforwardedā€ to the smart pool). One downside is this does expose the treasury to trading costs. If we do go this route, one or both of these assets makes the most sense as:

  • USDC is the stablecoin that generates the most fees for the protocol (and we want to minimize trading costs)
  • ETH is the most liquid and should have the lowest IL

After launch of this pool, we can consider adding the following:

  • other stablecoins, if they end up generating a significant portion of fees; and/or
  • other non-stablecoin assets like COMP, which is currently generating a material percentage of total fees

The decision to add additional assets to the smart treasury would be based on factors including:

  • Relative cost to treasury for each asset (trading vs IL)
  • Market/community demand
2 Likes

There doesnā€™t seem to a minimum size requirement for the pool, though it does require at least 2 whitelisted tokens Link. Also reducing the fee increases the feeFactor, which downweights reward. ( Lower fees higher BAL rewards). Maybe a starting fee around 2%? This will give a reward factor of around 0.8.

1 Like

Great post @8bitporkchop, happy to give my input, and love to see it going through the entire governance process. Agree that Uni incentive program might be too early at this stage, and definitely interested in exploring the smart treasury.

About pool composition, Iā€™d concur with @ETM612 and prefer stablecoin with most fees (and evaluate at the end of the gov process for this proposal), and then move to multi-asset composition. On weights, it really depends on the goal you want to give to the pool.

Adding other assets (eg wBTC) generally think we would improve poolā€™s efficiency. Afaik, it should be factored into IL depending on weights, but would contribute to liquidity.

About swapping/converting fees in the treasury to a single asset/stablecoins, seems more effective but I think there are some costs to consider if you have to swap every time you need to swap-n-forward fees to treasury? @william what do you think?

Still not fully convinced on poolā€™s weights proportion ā€“ @8bitporkchop can you expand a bit more on the rationale behind the 90/10 IDLE/ETH (or IDLE/stablecoin)? You generally have a lower IL magnitude if you set a lower % to non-stable assets. This article might help support here.

Re fees @8bitporkchop @unicorn weā€™ll be doing more research/thinking on that, but we should be able to relatively quickly iterate on it along time, as it shouldnā€™t require a code change (only using Balancer interface).

Next steps would be better to define the scope of this implementation, working team, and grant parameters. Further steps are better defined here and here.

4 Likes

I think as @8bitporkchop and others pointed out, an ETH pool would be better imo because of less potential IL at least initially.

Regarding this:

  1. I do not have an opinion yet, not sure why or why not the liquidity provisioning should be restricted if anyone can point out pros/cons would be awesome :slight_smile:
  2. For sure someone can frontrun / profit / ā€˜exploitā€™ (in an economical sense) when there are deposits, but I think that if those are made frequently and with modest amounts shouldnā€™t be a big problem. A contract for selling fees (stablecoins/gov tokens) + some off-chain keeper bot will probably be needed for this but should not be a big problem. The missing piece would be then redirecting fees for all current pools to this new contract (and potentially all the already accrued fees)
  3. I guess that fees should be in line with other similar pools, but depends on what role the community thinks the balancer pool have (ie the target users of the pool)

Regarding the potential BAL rewards, after reading the Link you posted @8bitporkchop, seems that basically IDLE needs to get listed here and then the pool would be elegible

This for sure needs to be considered in a contract and or in the keeper

2 Likes

About 1 (still)

I think liquidity providing should be open to all.
Control of the smart balancer pool should be exclusive to the treasury.

@Teo points out a valid argument. Regarding volatility and IL adding WBTC or renBTC will help for sure.
Crypto cycles/moves seen to happen in 3 waves and if the goal of the pool is stability instead of speculation then wbtc or renbtc make sense.

I like this. I think itā€™s fine for people to provide liquidity as long as the algorithm is able to buy low and sell high on a continuous basis.

1 Like

These have been a very interesting discussion on this topic, @Teo you raised some question on the rationale behind a 90/10 IDLE/ETH pool, the basic idea for this is to increase the amount of IDLE liquidity while minimising the initial ETH investment. Currently on $IDLEā€™s ā€˜balance sheetā€™, we are heavy on $IDLE, and low in stable coins (from fees). The pool weighting reflects that, in my opinion we could even use a higher pooling weight at the start 95/5, maybe even 99/1. then reduce this weighting over time.

That leads me onto two remaining questions in my mind about the smart treasury that need to be discussed as a community.

  1. How much ETH (in $ terms) to contribute to the smart treasury?
  2. What valuation of $IDLE should we use to match this?

The second question is actually quite an interesting because the market price is quite unstable, however, there are two main considerations to this, should we value $IDLE above market price, or below market price?

  • If we value $IDLE below market price, this should theoretically introduce a buying pressure, meaning we will end up with less $IDLE in the pool, and more ETH.

  • If we value $IDLE above market price, this should theoretically introduce a selling pressure, meaning we will end up with more $IDLE in the pool, and less ETH.

Answering the second question will allow us to answer the question of how much $IDLE from the community fund will be required to be invested in the creation of the smart treasury.

Perhaps we start with a small treasury at the start, and add more $IDLE liquidity as time goes on? (Though I can see this as a potential problem, as adding $IDLE liquidity from one side of a balancer pool essentially acts as a market sell, which would cause the price to fall slightly, and $IDLE holders might be against that)

1 Like

Get average price since the beginning of trading on uniswap for the starting valuation.
Allow liquidity providing by everyone.
This would allow improving the split of each coin like @Teo pointed out.

2 Likes

Iā€™ve created a poll to gauge the community sentiment on this, this is a short poll thatā€™s only live for 1 day. There will be subsequent opportunities to have a say on this if this is not enough time.

3 Likes

image

i would like to see same options but with opposite split . :thinking:
90/10 ETH or stablecoin/IDLE
80/20 ETH or stablecoin/IDLE

how do @ETM612 @Teo @william @8bitporkchop @noahniuwa @FedeCrypto @mikojava @johndoe @PNum @Davide and rest of community feel about that.

I understand the implications of switching the splitsā€¦ just making sure i hear everyone BEFORE i cast my vote later today

2 Likes