Refer a fren and earn rewards!

Yes, take me there!

Logo

-

Launch DSA and sDOLA

Executed
#167 - mills ERA

Created Feb 1st, 2024 - Executed Feb 6th, 2024

Details

avatar

CryptoHarry

Launch DSA and sDOLA

Forum Post: https://forum.inverse.finance/t/launch-dsa-and-sdola/361

Summary

This proposal seeks to introduce and launch the DOLA Savings Account (DSA) and the sDOLA product within the Inverse Finance DAO. The DSA offers an innovative platform for users to stake DOLA stablecoin and earn DBR tokens as yield, enhancing the utility of the DOLA ecosystem. The sDOLA product, built atop DSA, features an auto-compounding mechanism, elevating the value proposition of DOLA for long-term holders.

Background

The DeFi landscape is rapidly evolving, with an increasing emphasis on stablecoin utility and efficiency; with strong growth in yield-bearing stablecoins such as sDAI, and sFRAX. The DOLA stablecoin, a pivotal element of Inverse Finance DAO’s ecosystem, stands to gain significant utility and liquidity through the introduction of DSA and sDOLA. These products are designed to increase the demand to hold DOLA at significantly better unit economics than is currently possible, providing greater sustainability and stability to the DOLA ecosystem.

Implementation

DOLA Savings Account (DSA)

The DSA smart contract allows users to stake their DOLA stablecoin and earn DBR. While the main use of the DSA is expected to be via sDOLA, we anticipate that users who believe DBR is currently underpriced will utilize the DSA, as well as other protocol integrations.

Governance sets a max yearly reward budget in DBR terms, with an operator (the Fed Chair) able to set the yearly budget in DBR terms between 0 and the governance set max. Governance will also set a max DBR per DOLA per year, allowing for the unit economics to be managed. This design allows for the DAO to set the upper limit for yield, whilst allowing the market to find the correct yield at or below this max.

For example, if the yearly budget was set to 5,000,000, and the max DBR per DOLA per year was set to 1:

DOLA StakedDBR per DOLA per YearYearly DBR Spend Rate
2,500,0001.02,500,000
5,000,0001.05,000,000
7,500,0000.675,000,000
10,000,0000.55,000,000

This table demonstrates how the system scales the DBR rewards in response to the amount of DOLA staked, ensuring the annual reward budget is adhered to, while dynamically adjusting the reward rate per DOLA to maintain economic equilibrium.

sDOLA

sDOLA is a yield-bearing version of the DOLA stablecoin, powered as an auto-compounding ERC-4626 vault of DSA. The auto-compounding is driven by a DBR auction, which is very similar to the Virtual xy=k DBR Auction launched earlier this month in this proposal. The auction permissionlessly allows anyone to buy DBR using DOLA, with the price of DBR (per DOLA) continuously reducing every second until a DBR purchase is made at which point the price will increase. As with the virtual xy=k DBR auction, it is expected that MEV bots will be the main driver of the auction, completing arbitrage transactions between it and the TriDBR pool on Curve as soon as it becomes profitable. sDOLA’s yield is driven entirely by borrowers on FiRM, making the source of yield fully decentralized and auditable.

The main difference between the DBR auction used by sDOLA and the Virtual DBR Auction, is in sDOLA’s case the DBR reserves are not virtual. For sDOLA, the DBR reserves are the sum of the DBR balance within sDOLA and the unclaimed DBR for sDOLA in the DSA. To ensure a functional and responsive auction market, it's vital for the DAO to seed sDOLA with an initial DBR allocation. Without this, the starting price of DBR would be prohibitively high, delaying its alignment with market rates. sDOLA operates on a weekly revenue cycle, resetting every Thursday at 00:00 UTC. The DOLA accumulated from the auction during each cycle is then distributed continuously to sDOLA holders pro-rata in the subsequent cycle.

Beyond offering a mechanism for holding yield-bearing DOLA, sDOLA is poised to play a broader role in DeFi. Its integration is anticipated across various protocols, including as collateral in lending markets and in decentralized AMM liquidity pools, among other applications.

DOLA Demand and Impact on FiRM

When the DBR reward rate for DOLA in DSA is set at or below 1 per year, it is anticipated that most usage of sDOLA (and by extension, DSA) will be fueled by capital external to FiRM. These users are expected to purchase DOLA from the market and deposit it into sDOLA, rather than using borrowed DOLA from FiRM. Although, certain sDOLA integrations may offer higher yields, making it appealing for FiRM borrowers to participate as well.

This influx of external capital into DOLA, driven by sDOLA's attractive yield opportunities, will positively influence DOLA’s market liquidity and price stability due to the increased demand for holding DOLA. Consequently, this increases the lending capacity on the FiRM. It's projected that there will be a direct correlation between the amount deposited into DSA/sDOLA and the increase in FiRM’s lending capacity, with a minimum ratio of 1:1.

For instance, if sDOLA receives 2 million in deposits, this would likely correspond to 2 million DOLA being purchased in the market. This same amount (2 million DOLA) could then be loaned out through FiRM, potentially leading to an equivalent volume of market sells. However, in scenarios where FiRM borrowers choose to retain their DOLA for activities like yield farming, the lending capacity could be further amplified. In such cases, up to 5 million DOLA could be lent out on FiRM, supported by the initial 2 million sDOLA deposits.

Impact on Alternative DBR Issuance Methods

The introduction of sDOLA, similar to the Virtual xy=k DBR Auction, will result in the creation and sale of new DBRs in the market. To maintain balance, it’s essential to counterbalance this with a corresponding reduction in DBR issuance to INV stakers. However, this strategy is expected to ultimately lead to an overall increase in DBR distribution available for INV stakers.

For instance, let's consider a scenario where 5 million DOLA is deposited into DSA, earning DBR at a rate of 0.8 per year. This equates to an annual DBR expenditure of 4 million. As a result, the DBR streaming rate to INV stakers would be decreased by this 4 million. Yet, this action is projected to enhance FiRM’s lending capacity by an additional 5 million DOLA. If this capacity is fully utilized, it would lead to an extra 5 million DBR being burnt annually. Assuming this burnt amount is entirely allocated to INV stakers, it would effectively result in a net increase of 1 million DBR per year in the streaming rate to INV stakers.

sDOLA Seed

To initiate the functioning of sDOLA's auction and enable the distribution of rewards (with APR starting at 0% in the initial revenue epoch), it is essential to seed sDOLA with initial capital. To address this, the Treasury will inject 400,000 DOLA into sDOLA through the Treasury Working Group (TWG). This method is chosen to mitigate potential issues like frontrunning, which can be more significant in ERC4626 vaults with low TVL.

It’s important to note that the Treasury’s contribution to sDOLA, while crucial for initial seeding, does not increase DOLA demand in the same way as external deposits, since the DOLA used is already held in the Treasury and not newly purchased. Therefore, as external capital begins to flow into sDOLA, the TWG will progressively convert the Treasury's initial seed back into DOLA, maintaining the intended dynamics of sDOLA's market interaction.

Parameter Considerations

Max DBR per DOLA per Year (DSA)

The maximum DBR reward rate per DOLA per year is crucial for INV stakers' profitability. A rate below 1 is profitable, a rate of 1 is neutral, and a rate above 1 leads to a loss. Generally, this rate is expected to be at or below 1 for profitability. However, during times of DOLA peg weakness or increased cost per DOLA in circulation (outside sDOLA costs), a temporary higher rate may be set to stimulate sDOLA demand, offering a more cost-effective option than rates in AMM liquidity pools. We propose launching at a max rate of 0.99 DBR per DOLA per year to maximize sDOLA yield which is important at the start, while ensuring profitability for INV stakers.

Max DBR per Year Budget

It is important that the DBR budget going to DOLA stakers does not exceed the burn rate on FiRM. This shouldn’t be a problem since additional deposits into sDOLA are expected to increase lending on FiRM, which leads to a burn rate increase; however, if borrowing demand on FiRM drops off while sDOLA demand remains high, it could be possible. We propose to launch with a max DBR per year budget of 10m at the start.

Considerations for sDOLA Auction

When setting the target K value and initial DBR seed in the sDOLA auction, it’s essential to strike a balance that optimizes trade execution and minimizes arbitrage profit. This decision is pivotal as it directly influences the auction’s efficiency and functionality. The following considerations are recommended for determining the optimal depth:

  • Optimal Trade Execution: The reserves should be sized to facilitate efficient trade execution. This approach aims to align the realized price with the prevailing market rate in the TriDBR pool as closely as possible, maximizing returns for sDOLA holders. When the depth is insufficient, a significant price disparity for profitable arbitrage might arise, especially after a sizable market DBR purchase that rapidly elevates the market price.
  • Minimizing Arbitrage Profits: The depth should be calibrated to ensure arbitrage opportunities are limited primarily to covering transaction costs and a nominal profit margin. Overly generous arbitrage opportunities, resulting from excessive depth, could lead to disproportionate profits to arb bots following significant market movements, which are lossy to sDOLA holders.
  • Controlled Price Reduction Dynamics: It's essential to carefully monitor and adjust the rate of DBR price reduction in the auction. Too rapid a decrease can create large price differences between the auction and market prices, especially during high network congestion leading to increased gas costs. However, ensuring a minimum of one auction purchase every 7 days is important to avoid periods of zero yield.

K Value and DBR Seed

Initially, our focus is on setting the right DBR reserve depth through the DBR seed, with the K value derived from this and the targeted DBR auction price. Our considerations are:

  • Ensuring at least one arbitrage auction buy every 7 days.
  • Maximizing sDOLA holder profit by increasing auction depth, reducing the spread needed for profitable arbitrage.
  • Historical DBR data from the TriDBR pool (20th December - 29th January) was used for backtesting, which reflects the current pool depth.

Our simulations with a $40 gas hurdle and 400k DOLA staked in sDOLA (minimum expected amount due to the Treasury DOLA seed) indicate an optimal initial DBR seed of 50k for launch.

(See graph/visualization in the forum post)

The 50k DBR seed demonstrates reliability in providing profitable arbitrage auction buys at least every 7 days, even with rapid market DBR price decline (which in the case of Jan 2nd - Jan 18th was the result of an INV sell-off, impacting DBR price via the TriDBR pool which contains INV).

To better understand the effect of auction depth, here is what 100k DBR looks like in the same simulation:

(See graph/visualization in the forum post)

In this scenario, the auction depth prevents the price from adjusting quickly enough to trigger profitable arbitrage opportunities during price declines, leading to a couple weeks without yield flowing to sDOLA holders.

The initial auction price is set at 0.13 DOLA per DBR, corresponding to a K value of 3.25e+44. This pricing strategy is intended to encourage early auction buys, facilitating immediate yield generation for sDOLA holders. This is what the price chart looks like over 7 days when interrupted (DBR price when using 1 DOLA to purchase with):

(See graph/visualization in the forum post)

Data analysis and visualization carried out in python

Need for Adjustments to Auction Depth

During the deep dive analysis into dbrReserve and the K value, it became clear that as sDOLA deposits scale up, auction depth can be increased significantly to achieve much greater yield to sDOLA holders while ensuring buys occurring least every 7 days. Not doing so reduces the efficiency of the auction, reducing APR to sDOLA holders. For example, this is how the launch depth responds to higher levels of DOLA being staked:

(See graph/visualization in the forum post)

This rapid price decline at a low auction depth risks significant spreads to open up between the auction and market price during periods of higher gas costs.

However, if the depth is increased appropriately then the performance will significantly improve. For example, analysis from the backtest demonstrated that the optimal auction parameters when the there’s ~2m DOLA staked is 400,000e+18 dbrReserve and K value of 1.93e+46:

(See graph/visualization in the forum post)

The Operator Role

Due to this, it is prudent to create an optional operator role for controlling the targetK rather than have it solely be a gov controlled parameter. Adjustments to targetK gradually take effect over 7 days, so also putting this behind a minimum 5-day timelock (governance proposal time) would potentially mean adjustments to improve auction efficiency are already out of date when they take effect (roughly 2 weeks later).

The operator role is currently inactive (assigned to the burn address), but can be activated by governance in a future proposal if deemed necessary. Until then, the DAO will handle any adjustments within on-chain proposals.

Deployed Contracts

On-Chain Actions

  • Add DSA as a DBR minter
  • Set max DBR per DOLA per year to 0.99
  • Set max DBR per year budget to 10,000,000
  • Send 50,000 DBR to sDOLA
  • Approve 400,000 additional DOLA to TWG (current allowance = 2,303,500, so approve 2,703,500
  • Approve 405,000 sDOLA to TWG (margin of safety)

Actions

Action 1
DBR
.addMinter(
DSA

)

Action 2
DSA
.setMaxRewardPerDolaMantissa(

990000000000000000

)

Action 3
DSA
.setMaxYearlyRewardBudget(

10000000000000000000000000

)

Action 4
«
Transfer

50,000

DBR

to sDOLA
»
DBR
.transfer(
sDOLA,

50000000000000000000000

)

Action 5
«
Set Treasury Working Group's

DOLA

Allowance to

2,703,500

»
DOLA
.approve(
Treasury Working Group,

2703500000000000000000000

)

Action 6
«
Set Treasury Working Group's

sDOLA

Allowance to

405,000

»
sDOLA
.approve(
Treasury Working Group,

405000000000000000000000

)

Proof of Reviews

Members allowed to make Drafts can sign the fact that they reviewed the Draft Proposal

Loading...

For Votes

4 voters

29.15k votes

avatar

CryptoHarry

16.47k

avatar

Mason

4.95k

avatar

PatB

4.27k

avatar

0x0447...782f

3.46k

Against Votes

0 voters

0.00 votes

Subscribe to Our Newsletter

Join thousands of subscribers in receiving weekly updates about Inverse products, partnerships, and early-bird news shared only with subscribers!

Products

sDOLADOLAsINVINVFiRM

Social