Compound 協議把自己定位為「貨幣市場協議(The money market protocol)」。如果說 Maker 的作用是通過抵押鑄造和銷毀穩定幣,那麼 Compound 就是一種更易於理解的借貸市場 —— 出借人必須借出自己已有的資產,而不是憑空創造債務。
Compound 於 2018 年上線。2019 年年中啟動了 V2 版本,添加了 cToken 的機制。目前已支持 ETH、USDC、WBTC 等十多種代幣的借貸功能。
Compound 的功能很好理解。協議提供兩項功能:Supply 和 Borrow。
Supply 將代幣存入協議以賺取利息。Compound 為每一種代幣建立了一個池子,例如 USDC 池,所有存入的 USDC 都會匯集到這個池子中。舉個例子,如果 USDC 資產池原本有 9000USDC,用戶 A 將 1000USDC 存入協議中,那麼他將佔有池子的 10% 的資產。存入後協議會給他一定數量的 cUSDC 代幣,假設當前 USDC 和 cUSDC 的價格為 1:10,那麼他會收到 10000cUSDC,此時 cUSDC 流通量為 100000 個,他擁有資產池數量的 10%。一段時間後,協議賺取了 5% 的總收益,資產池內有 105000USDC,那麼他提取的時候就以他的 10000cUSDC 換取資產池的 10% 的資產,取出的資產為 10500USDC。
此處的 cUSDC 是一種 cToken。cToken 是在用戶在 Compound 中存入某種資產後對該資產一定數量的所有權,比如 cETH、cUSDC、cWBTC 等。cToken 可以看成 DeFi 協議的標準做法:用戶將某種資產存入 DeFi 協議後,協議給該用戶發行一定數量的用以表示所有權的代幣,未來用戶可憑借此代幣提取一定數量的該資產。我們可以把這一類代幣稱作「債券類代幣」,或者更通俗地來說是一種欠條,它實際表示了某個協議對用戶的債務。這類代幣也可以轉讓,表示將債權轉讓給他人。之後在對其他協議的介紹中也會提到此類代幣。
另一個功能就是 Borrow。用戶可以借出資產池中的資產,還款時根據借出的時長和借款利率計算需要支付的利息。當然,借出資產之前也需要存入代幣作為超額抵押物,根據抵押率借出一定數量的資產。同時通過預言機監控各用戶的抵押物,在抵押物不足時將抵押物以稍低於市場價的價格回收借出的資產。
借款利率的計算依據是資產池利用率,也就是借出(Borrow)的資金量占供給(Supply)的比例。例如 USDC 池總供給為 10000USDC,已借出 5000USDC,那麼該資產池利用率為 50%。利用率越高,說明借貸需求相對於供給越高,利率越高,反之亦然。因此利率就是關於利用率的函數,具體計算方式通過 DAO 治理來確定。
供給方的收益率的計算也很簡單,將借款利息所得平分給整個資產池,即借款利率乘以資產池利用率。
Compound 協議在添加新的代幣時相當謹慎,只有被認定為為高質量的代幣才能進入借貸市場。這就給了其他借貸協議一部分市場機會,例如 Cream 協議的審核機制就相對激進,會將較新的代幣添加到它的借貸市場。
雖然 Maker 早於 Compound 發行協議代幣,但真正引爆 DeFi 狂熱的卻是 Compound 的協議代幣 ——COMP 的發行。2020 年夏天,Compound 開啟了 COMP 的發行活動。COMP 的發行採取了一種創新的發行方式,這種方式現在被稱作「流動性挖礦(Liquidity Mining)」。它的做法是,給協議的用戶發行協議代幣,發行的數量根據用戶的使用程度,例如提供和借出的資金量來確定。這種發行方式幾乎被後續所有的 DeFi 協議所借鑒,以作為吸引用戶使用自身協議的最有效的方法,同時也引爆了一波 DeFi 的投資狂潮。