Change sDOLA LlamaLend market rates from 0.5/15 to 0.1/25

Summary

Change min/max borrow rate parameters on the sDOLA LlamaLend Monetary Policy from 0.5%/15% to 0.1%/25%.

Motivation

The sDOLA-long market was deployed on ethereum with the controller address: 0xCf3DF6C1B4A6b38496661B31170de9508b867C8E.

The current Interest Rate Model (IRM) is SemiLogIRM, with the following parameters:

  • min_rate = 0.005
  • max_rate = 0.15

The min/max parameters in the LlamaLend Semilog Monetary Policy set the bounds charged to borrowers depending on the utilization of the market. In stablecoin lending markets such as sDOLA, borrowers seek to leverage exposure to the sDOLA yield, and therefore borrow demand should be sensitive to changes in the sDOLA yield. In cases where yield persistently exceeds 15%, the market may be at risk of illiquidity. The evolution of sDOLA APY demonstrates that there is a reasonable possibility of yields that exceed the LlamaLend market’s bounds.

This plot below compares total assets and total debt over time while overlaying utilization on a secondary axis.

Our goal with this proposal is to adjust the rate parameters such that there is additional buffer on the max rate to avoid periods of illiquidity, while minimizing impact to the market’s rates and avoiding excessive rate volatility. See below the current IRM curve (dashed line) and the proposed IRM curve (solid line), plotting market utilization on the x axis and borrow rate on the y axis.

Given below, for academic interest, is an optimization analysis we have done for sDOLA. It’s produces a recommendation with a wider spread, so we rather prefer a more gradual adjustment. This analysis offers insight into our priorities and process when determining optimal parameters and suggests our target for future adjustments to the sDOLA market.

sDOLA-long Analysis

Optimal Utilization Analysis

We identify volatile periods based on the price oracle feed and then analyze the withdrawal quantile of total assets during these periods.

The 10th percentile of negative withdrawals of supplied crvUSD during volatile periods was 3.99% of the total supply.This means that 90% of all observed withdrawals during volatile periods were less than or equal to this value. Given that optimal utilization is defined as min(1- withdrawal_quantile, 0.85), optimial utilization is 85%.

Regime Shift Analysis

This plot shows detected regime shifts in utilization. Red vertical lines indicate significant shifts, which represents changes in stability in utilization in this given market.

The latest stable regime shift was detected on 2024-11-17.We ended observation on 2025-03-13, covering a period of 116 days.

The regime can be categorized as being underutilized- an average 75% utilization observed is below our target of 85%.

Parameterizing of the underlying Model

We estimate underlying model parameters for the Stochastic differential equation using a simple OLS model.

OLS Regression Results                            
==============================================================================
Dep. Variable:      delta_utilization   R-squared:                       0.050
Model:                            OLS   Adj. R-squared:                  0.041
Method:                 Least Squares   F-statistic:                     5.566
Date:                Thu, 13 Mar 2025   Prob (F-statistic):             0.0202
Time:                        14:33:39   Log-Likelihood:                 182.09
No. Observations:                 107   AIC:                            -360.2
Df Residuals:                     105   BIC:                            -354.8
Df Model:                           1                                         
Covariance Type:            nonrobust                                         
==================================================================================
                     coef    std err          t      P>|t|      [0.025      0.975]
----------------------------------------------------------------------------------
const              0.0305      0.014      2.192      0.031       0.003       0.058
borrow_apr_lag    -0.4386      0.186     -2.359      0.020      -0.807      -0.070
==============================================================================
Omnibus:                        5.315   Durbin-Watson:                   1.927
Prob(Omnibus):                  0.070   Jarque-Bera (JB):                7.782
Skew:                           0.055   Prob(JB):                       0.0204
Kurtosis:                       4.317   Cond. No.                         43.4
==============================================================================

Notes:
[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.

Validating the Underlying Model

The plot above visualizes the distribution of key statistical metrics for empirical vs. simulated utilization. Red lines mark empirical values, allowing direct comparison with simulated distributions.

Rate Table

Metric Empirical Value Simulated Value
Mean 0.0710 0.0715
Std Dev 0.0226 0.0213
Skewness -0.4427 0.5079
Kurtosis 0.0081 -0.0273

Utilization Table

Metric Empirical Value Simulated Value
Mean 0.7571 0.7651
Std Dev 0.1239 0.0902
Skewness -1.6288 -0.1394
Kurtosis 2.6912 -0.3694

These tables compare empirical and simulated values for utilization and rates. A large difference in mean utilization or rate indicates a potential issue with the simulation. We can see that in particular the utilization standard deviation is slighlty underestimated in our model.

This plot compares the empirical and simulated distributions of utilization and rates. A close match indicates realistic simulation dynamics.

This plot compares real utilization and rate paths with simulated ones. Gray lines represent simulated paths, while blue lines show empirical values.

Optimal Parameters

After optimizing with the composite loss function (as specified in the methodology) across multiple simulated SDE paths, we identified the optimal parameters as:

IRM Label rate_min rate_max
Optimized-SemiLogMP 0.00001 0.38211

Evaluating Parameter Performance

In this section, we compare the default configuration of parameters with the optimized parameters across key performance metrics.

The chart suggests that:

  • Mean Squared Error (MSE) is lower for the Optimized Model, hence it trades closer to the optimal utilization level defined.
  • Time Above Threshold is lower for the optimized model.
  • The Volatility of the Utilization is lower on the Optimized model suggesting stability in utilization level
  • The Volatility of the Rate is higher which as uncovered before mark the fundamental trade-off to manage rates effectively.

Conclusion

The Optimized Model consistently outperforms the default configuration, balancing trade-offs between rate volatility and MSE.

Specification

Call the sDOLA LlamaLend Monetary Policy contract.

ACTIONS = [
    # sDOLA min/max rate 0.1%/25%
    ("0x0b10DD6Be465bC21E057FAf8b05B61dE8DB070F0", "set_rates", 31709791, 7927447995),
]

For:

Adjusted parameters provide stronger assurances to lenders that the IRM can preserve market liquidity in periods of high borrow demand

Against:

Increased min/max spread increases the rate sensitivity of the IRM curve.

This vote is live here:

The current sDOLA borrow rate is 6.68% with 76.37% utilization.
At current utilization, the borrow rate will be 6.74% upon vote execution.
Depending on changes in market dynamics between vote creation and execution, the impact to markets rates may differ from this estimate.

The vote in progress here no longer needs to be executed. Inverse have redeployed the sDOLA LlamaLend market using a different pool oracle (from the DOLA/scrvUSD pool instead of the DOLA/crvUSD pool). They have made this decision to migrate to a new market because of plans to deprecate the old AMM pool.

The new sDOLA market has been deployed in this tx
https://etherscan.io/tx/0xe1d3e1c4fef7753e5fff72dfb96861e0fec455d17ebfce04a2858b9169c462b7

A gauge vote for the new market has been started here:
https://dao.curve.fi/#/ethereum/proposals/1006-OWNERSHIP/