Skip to main content

Borrow rates

A trove's debt accrues continously and the borrow rate is not fixed. The borrow rate changes over time based on what the protocol's controller is doing and how utilized the branch is.

The three components​

Your effective borrow rate is built from three things:

  1. The system rate. A single per-second rate set by the singleton RateParControl PI controller. Same number system-wide. Bias is 2%, bounded between 0.25% and 50% APY.
  2. The collateral utilization offset. Each branch adds a per-branch offset that depends on how full it is relative to its issuance target. A near-empty branch pays close to the system rate; a near-full branch pays substantially more. The offset is updated continuously by the Aggregator using a 72-hour-half-life EMA of branch debt.
  3. The Redemption Shield adjustment. Troves both with and without Redemption Shield get a rate adjustment based on the branch's Redemption Shield share. Troves with the feature enabled pay a surcharge on top of the branch rate. Troves without it receive a discount: the same mechanism, with the opposite sign. The discount is funded by the surcharge. See Redemption shield.

Putting it together:

System rate2.00%+Collateral rate offset+1.70%=Branch rate (clamped 0.1%–50%)3.70%Branch rate3.70%±Redemption Shield adjustment+ surcharge · shield on− discount · shield off=Your borrow APR3.70% ± shield
Three additive components (example at a 2% system rate). The system rate and the collateral rate offset are summed and clamped to 0.1%–50% APY; the signed Redemption Shield adjustment is then applied on top — positive for troves with Redemption Shield enabled, negative for troves without it.

The branch part is additive: the collateral utilization offset is added to the system rate in the per-second-delta domain, then the sum is clamped to a final per-branch range of 0.1% to 70% APY. The clamp range is wider than the system rate's own [0.25%, 50%] bounds: a hot branch can be pushed above the system-rate cap, and a cold branch can sit below the system-rate floor, in both cases up to the final clamp.

The Redemption Shield adjustment is a signed addition on top. Its magnitude on each side grows with the branch's Redemption Shield share: at low Redemption Shield share both sides are tiny; at high Redemption Shield share the surcharge and the discount both grow meaningfully.

How the system rate moves​

The system rate is the controller's primary tool for nudging RD's market price toward $1:

  • RD trading above $1 → controller lowers the system rate → cheaper to borrow → more RD supply → price falls back toward par.
  • RD trading below $1 → controller raises the system rate → expensive to be short RD, attractive to repay → less RD supply → price rises back toward par.
50% cap2% bias0.25% floordeadband buffer$1.00price below $1.00price above $1.00below buffer → rate risesabove buffer → rate falls
The system rate is the singleton controller's price-steering tool. It rests at its 2% bias at par and is bounded to 0.25%–50% APY. Direction only — the actual path is slew-limited and dynamic.

Maximum rate slew is about 1%/hour at the 2% bias (about 24%/day at the bias point). The controller has a small deadband around $1 and won't react to noise within it. Watch the system rate actually steer across market scenarios in the Peg Control simulator, or read the mechanics in Peg control.

How the collateral offset moves​

Each branch has an issuance target (its "debt EMA target"). When real branch debt is far above target, utilization error is positive and the controller raises the offset, making borrowing on a hot branch more expensive. When real branch debt is below target, the offset can be negative, pulling the branch rate below the system rate (subject to the 0.1% final-rate floor).

issuance target← below targetabove target →0 pp+9 ppunder-utilized → negativeover-utilized → offset climbs
Each branch adds an offset from its own utilization-band PI controller: 0 at the branch's issuance target, rising as debt runs above target, and negative below (down to the 0.1% floor).

Update cadence: Debt emas update every 4-8 hours, so the offset adjusts smoothly rather than instantly. Drag the debt mix of all eight production branches and watch each one reprice in the rates vs. utilization simulator.

How the Redemption Shield adjustment moves​

The Redemption Shield adjustment is priced off the branch's Redemption Shield share — the fraction of branch debt belonging to troves with the feature enabled. As that share grows, the two rates spread further apart:

  • Troves with Redemption Shield enabled pay a rising surcharge above the branch rate.
  • Troves without Redemption Shield receive a growing discount below it — funded by the surcharge, it pays them for absorbing redemption flow (redemptions skip troves with Redemption Shield enabled).
Redemption Shield rate↑ higherhigher Redemption Shield share →base rate↓ lowerhigher Redemption Shield share →
Both rates are priced off the branch's Redemption Shield share. The more of a branch that has Redemption Shield enabled, the further the two rates spread — the Redemption Shield rate rises and the base rate falls, with the surcharge funding the discount.

The full split-range curve — both rates as a continuous function of Redemption Shield share, straight from InterestEngine._calcRates — is in the shield pricing simulator.

Deep dives​