[ARFC] Onboard USDS and sUSDS to Aave v3

Overview

Chaos Labs supports the onboarding of sUSDS to Aave v3 Main Ethereum deployment and USDS to Aave v3 Lido Ethereum instance.

Please note that we are unable to provide all parameters for sUSDS at this time given the lack of available on-chain data, and this recommendation will be updated as this becomes available.

USDS and sUSDS Information

USDS is the newly upgraded stablecoin of the Sky Ecosystem, replacing DAI and allowing 1:1 conversion from DAI and USDC. Additionally, with sUSDS, users can opt for the traditional Savings Rate, which previously applied to sDAI.

DAI-USDS Conversion

Users will be able to convert DAI to USDS seamlessly at a 1:1 ratio through the Sky.money platform using the SUDS conversion contract. The process is reversible: users will be able to convert the USDS back into DAI through the same contract.

The SUDS conversion contract is verified and publicly available on GitHub, allowing us to confirm that the conversion process is atomic.

The following Solidity code outlines the primary conversion function:

function daiToUsds(address usr, uint256 wad) external {
    dai.transferFrom(msg.sender, address(this), wad);
    daiJoin.join(address(this), wad);
    usdsJoin.exit(usr, wad);
    emit DaiToUsds(msg.sender, usr, wad);
}

The function executes in four distinct steps:

  1. dai.transferFrom(): This step transfers the specified amount of DAI from the user’s wallet to the conversion contract’s address.
  2. daiJoin.join(): The DAI is moved from the conversion contract to the Maker Vault (vat) to repay any associated debt.
  3. usdsJoin.exit(): The contract opens an equivalent position with USDS via the vat, transferring the corresponding USDS amount to the user.
  4. emit DaiToUsds(): Finally, an event is emitted to signal the successful conversion of DAI to USDS.

image_720

SKY Token and Incentives

The SKY token serves as the new governance token of the Sky Ecosystem. MKR holders will be able to optionally convert MKR to SKY at a rate of 24,000 SKY per MKR.

The SKY Token Reward will be distributed at a rate of 600 million SKY per year across participating USDS holders, with users who registered before the launch receiving double rewards for the first month. Given the considerable rewards distributed, we expect to see a rapid migration from DAI in the first month.

sUSDS and staking contract

sUSDS is the staked version of USDS that provides a 6% yield through the DSR. sUSDS will not receive an sDAI to sUSDS conversion contract, but it will use the ERC-4626 token standard, and the conversion from USDS will be instantaneous.

LlamaRisk covers the staking contract functionality in their analysis.

Liquidity

As the USDS and sUSDS tokens have not yet been launched, no on-chain liquidity is currently available. However, the migration of the PSM, as hinted by the X post from Sam MacPherson, implies the availability of 1.4B USDC of liquidity upon the migration.

Additionally, at Launch, the Smart Burn Engine will target the SKY/USDS market with all of its current liquidity and all future automatic liquidity acquisition from Protocol Surplus.

Given that atomic USDS to DAI conversions are available, USDS will be deeply liquid immediately after launch.

Pricing the Assets

Given the instant and permissionless conversion contract and the deep liquidity available for DAI, we recommend pricing USDS using the DAI/USD market oracle until a USDS oracle is available. For sUSDS, we recommend using an exchange rate oracle.

LTV, Liquidation Threshold, and Liquidation Bonus

While we are not able to analyze the assets’ historical price volatility, given the pricing setup described above, we recommend aligning USDS’s collateral parameters with DAI’s: 63% LTV and 72% LT (note that DAI’s current LT is higher, however we recommended 72% as ideal in April; reductions to DAI’s LT have been limited by potentially large induced liquidations).

We recommend setting the Liquidation Bonus at 7.5% initially, higher than DAI’s 5%. This higher parameter will help ensure that liquidations are processed even in the event of significant peg volatility. Additionally, we will closely monitor the deployment of this market; if we observe that USDS is primarily being used as collateral for USDS-USDS looping, we may recommend reducing its LTV to 0%.

We recommend aligning sUSDS’s parameters with sDAI’s: 75% LTV and 78% LT.

Supply and Borrow Cap

Demand to borrow stablecoins against LSTs has thus far been relatively limited. As such, we prefer to err on the side of caution when setting initial caps for USDS. We recommend an initial supply cap of 50M and borrow cap of 45M for USDS on the Lido instance, noting that we are able to double supply and borrow caps via the risk steward immediately after listing, then every five days afterwards, creating a hypothetical max supply cap of 200M five days after listing, should demand be overwhelming and liquidity facilitate such an increase.

Given sUSDS’s similarity to sDAI, as well as its incentives, we find it likely that sDAI liquidity will rapidly shift to sUSDS. Additionally, atomic swaps between USDS and DAI reduce the liquidity risk associated with listing a new asset like sUSDS. Given this, we recommend a starting supply cap of 35M, slightly more than half of sDAI’s current supply.

In addition to these changes, we propose reducing caps for DAI and sDAI on Ethereum, anticipating that demand for these assets will decrease.

IR Curve

We recommend aligning USDS’s IR curve with DAI’s.

Recommendations

Following the above analysis, we recommend the following parameters for listing USDS and sUSDS on Aave V3’s Ethereum deployment. The sUSDS listing parameters will be updated following an assessment of on-chain liquidity.

Parameter Value
Asset USDS
Market Lido
Isolation Mode No
Borrowable Yes
Collateral Enabled Yes
Supply Cap 50,000,000
Borrow Cap 45,000,000
Debt Ceiling -
LTV 63%
LT 72%
Liquidation Bonus 7.5%
Liquidation Protocol Fee 10.00%
Variable Base 0%
Variable Slope1 5.5%
Variable Slope2 75.0%
Uoptimal 90%
Reserve Factor 25%
Stable Borrowing Disabled
Flashloanable Yes
Siloed Borrowing No
Borrowable in Isolation No
E-Mode Category N/A
Parameter Value
Asset sUSDS
Market Core
Isolation Mode No
Borrowable No
Collateral Enabled Yes
Supply Cap 35,000,000
Borrow Cap -
Debt Ceiling -
LTV 75%
LT 78%
Liquidation Bonus 7.5%
Liquidation Protocol Fee 10.00%
Variable Base -
Variable Slope1 -
Variable Slope2 -
Uoptimal -
Reserve Factor -
Stable Borrowing Disabled
Flashloanable Yes
Siloed Borrowing No
Borrowable in Isolation No
E-Mode Category N/A

Additionally, we recommend the following supply and borrow cap changes on Ethereum.

Current Supply Cap Rec. Supply Cap Current Borrow Cap Rec. Borrow Cap
sDAI 340,000,000 70,000,000 - -
DAI 338,000,000 150,000,000 271,000,000 140,000,000

CAPO

For USDS, we recommend aligning to stablecoin markets on Aave.

Price Cap
4%

For sUSDS:

MINIMUM_SNAPSHOT_DELAY ratioReferenceTime maxYearlyRatioGrowthPercent
4 days monthly 15%
5 Likes