GEB Docs
  • Introduction to GEB
  • Community Resources
  • FLX Mechanics
  • FAQ
  • RAI
    • RAI Use-Cases
    • Multi-chain RAI
    • RAI Integrations
  • The Money God League
    • Intro to The League
  • Ungovernance
    • Governance Minimization Guide
  • Risk
    • GEB Risks
    • PID Failure Modes & Responses
  • Incentives
    • RAI Uniswap V2 Mint + LP Incentives Program
    • RAI Uniswap V3 Mint + LP Incentives Program (Inactive)
    • FLX Staking
    • RAI / ETH Uniswap V3 Oracle LP Incentives Program
  • Contract Variables Translation
    • Core Contracts Naming Transition
    • Governance Contracts Naming Transition
    • SAFE Management Contract Naming Transition
  • System Contracts
    • Core Module
      • SAFE Engine
      • Liquidation Engine
      • Accounting Engine
    • Auction Module
      • English Collateral Auction House
      • Fixed Discount Collateral Auction House
      • Increasing Discount Collateral Auction House
      • Debt Auction House
      • Surplus Auction House
    • Oracle Module
      • Oracle Relayer
      • Medianizer
        • DSValue
        • Governance Led Median
        • Chainlink Median
        • Uniswap V2 Median
      • FSM
        • Oracle Security Module
        • Dampened Security Module
        • FSM Governance Interface
    • Token Module
      • Token Adapters
      • System Coin
      • Protocol Token
      • Protocol Token Authority
      • Protocol Token Printing Permissions
    • Money Market Module
      • Tax Collector
    • Sustainability Module
      • Stability Fee Treasury
      • FSM Wrapper
      • Increasing Treasury Reimbursement
      • Mandatory Fixed Treasury Reimbursement
      • Increasing Reward Relayer
    • Automation Module
      • Collateral Auction Throttler
      • Single Spot Debt Ceiling Setter
      • ESM Threshold Setter
    • Governance Module
      • DSPause
    • Shutdown Module
      • Global Settlement
      • ESM
  • Proxy Infrastructure
    • DSProxy
    • Proxy Registry
  • Helper Contracts
    • SAFE Manager
  • GEB.js
    • Getting Started
    • Global Settlement Guide
    • API Reference
      • Geb
      • Safe
      • Proxy Actions
      • Geb Admin
  • APIs
    • API Endpoints
  • Pyflex
    • Getting Started
      • Configuration
      • GEB Basics
    • SAFE Management
      • Opening a SAFE
      • Closing a SAFE
    • Numerics
  • Keepers
    • Keeper Overview
    • Collateral Auction Keeper
      • Running in Docker
      • Running on a Host
      • Liquidations & Collateral Auctions
      • Collateral Auction Flash Swaps
    • Debt Auction Keeper
      • Running in Docker
      • Running on a Host
    • Staked Token Auction Keeper
      • Running in Docker
      • Running on a Host
    • Surplus Auction Keeper
      • Running in Docker
      • Running on a Host
    • Bidding Models
  • Liquidation Protection
    • SAFE Protection
    • Liquidation Protection Guide
    • Uni-V2 RAI/ETH Savior Details
    • Curve V1 Savior Details
Powered by GitBook
On this page
  • Failure Scenarios
  • Market Manipulation
  • Lack of Liquidity on Exchanges
  • Skewed Incentives
  • Negative Feedback Turning Positive
  • Failure Prevention

Was this helpful?

  1. Risk

PID Failure Modes & Responses

How to react in different scenarios where the redemption rate is ineffective

Failure Scenarios

The following is a list of known PID failure modes and possible responses or fixes for each one of them. Note that in order to minimize the risk of the PID failing, governance should activate it only after the stablecoin has a minimum, mandatory liquidity level on exchanges as well as plenty of users interacting with the system.

Market Manipulation

Although improbable (in case the PID is fed a TWAP feed for the stablecoin market price) after a stablecoin gets to scale, market manipulation is always a concern that can make the PID controller destabilize the system. In this scenario, governance has two options: pause the controller until there is more liquidity on exchanges or globally settle the system.

Lack of Liquidity on Exchanges

Governance must ensure at all times that there is enough stablecoins on exchanges vs stablecoins locked in other applications. This is why governance must specify two KPIs:

  1. An absolute minimum amount of liquidity that must be on the exchanges from which the PID is pulling market price data

  2. A minimum percentage of stablecoins out of the total oustanding supply that must be at all times on exchanges vs the percentage of stablecoins locked/used in other applications

In case the stablecoin liquidity drops below any of the two limits specied above, governance is advised to pause the PID and restart it only after the liquidity improves.

NOTE: lack of liquidity will increase the risk of market manipulation (as seen in Proto RAI).

Skewed Incentives

In case governance sets up a system to incentivize the growth of a stablecoin, these incentives may interfere with the PID's and cause the system to become unstable. In this scenario, governance should look at the following solutions:

  1. Offer less growth incentives over a longer period of time

  2. Pause the controller until the growth campaign/s end

  3. Completely stop growth campaigns

  4. Find a way to incentivize market making alongside growth

Negative Feedback Turning Positive

There are cases when, even if there is no market manipulation, no skewed incentives and there's plenty of liquidity on exchanges, the market might not react to the redemption rate incentives and the redemption price would continue to go in a single direction for a long period of time.

In this scenario there are three possible solutions:

  1. Temporarily pause the PID and wait for the market to come closer toward redemption

  2. Trigger global settlement and allow the system to shut down using the redemption price.

Failure Prevention

In order to make market manipulation as expensive as possible, we propose the following liquidity thresholds for the RAI stablecoin:

  • There must be at least $2M worth of liquidity on the exchange/s that the RAI oracle is pulling a price feed from

  • At least 3% of the RAI supply must be on the exchange/s from which the system is pulling a price feed from

In addition to this, the PID controller should not be set to its full force right when RAI is launched as it may destabilize the system.

PreviousGEB RisksNextRAI Uniswap V2 Mint + LP Incentives Program

Last updated 4 years ago

Was this helpful?

Temporarily pause the PID and build a second controller that modifies the stability fee. In this scenario the redemption rate controller would only be used when the market price is consistently above redemption and the stability fee controller would be used when the market price is below redemption. Choosing this option means that governance may need to have long term control over the and there will need to be more governance over rate setting in general.

TaxCollector