검수요청.png검수요청.png

"컴파운드 (암호화폐)"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
 
(사용자 5명의 중간 판 27개는 보이지 않습니다)
1번째 줄: 1번째 줄:
'''컴파운드'''(Compound)는 컴파운드의 티커는 '''COMP'''이다.
+
[[파일:컴파운드 (암호화폐) 로고.png|썸네일|200픽셀|'''컴파운드'''(Compound)]]
 +
[[파일:컴파운드 (암호화폐) 글자.png|썸네일|300픽셀|'''컴파운드'''(Compound)]]
 +
 
 +
'''컴파운드'''(Compound)는 [[암호화폐]]를 담보로 대출을 제공하는 [[디파이]](DeFi) 플랫폼이다. 투자자가 자신의 디지털 자산을 빌려주고 이자를 받을 수 있는 구조로, 대출은 중개인을 통하지 않고 [[블록체인]] 기반의 [[스마트 계약]]을 통해 이루어진다. 컴파운드의 티커는 '''COMP'''이다.
  
 
== 개요 ==
 
== 개요 ==
컴파운드는 이더리움 블록체인을 기반으로 한 프로토콜로, 자금시장을 구축한다. 여기에서 자금시장은 자산의 공급과 수요에 기초하여 알고리즘으로 파생된 이지율을 가진 자산 풀이다. 자산 공급자는 거래 상대방과 만기일, 이자율 또는 담보와 같은 조건을 협상할 필요 없이 유동 금리를 획득하면서 프로토콜과 직접 상호작용한다. 각 자금시장은 이더리움 자산에 고유하며, 투명하고 공개적으로 확인할 수 있는 장부를 포함하고 있는데, 이 장부에 모든 거래 및 과거 이자율을 기록한다.
+
컴파운드는 이더리움 블록체인을 기반으로 한 프로토콜로, 머니마켓을 구축한다. 여기에서 머니마켓은 자산의 공급과 수요에 기초하여 알고리즘으로 파생된 이자율을 가진 자산 풀이다. 자산 공급자는 거래 상대방과 만기일, 이자율 또는 담보와 같은 조건을 협상할 필요 없이 유동 금리를 획득하면서 프로토콜과 직접 상호작용한다. 각 머니마켓은 이더리움 자산에 공유하며, 투명하고 공개적으로 확인할 수 있는 장부를 포함하고 있는데, 이 장부에 모든 거래 및 과거 이자율을 기록한다.<ref name="백서">컴파운드 백서 1.0 - https://compound.finance/documents/Compound.Whitepaper.pdf</ref>
 +
 
 +
컴파운드의 대출 서비스는 독특한 점이 있다. 컴파운드에서 지원하는 ERC-20 토큰을 해당 플랫폼에 예치 할 경우, 같은 양의 컴파운드 토큰이 발행된다. 예를들어 컴파운드에 1ETH를 예치 할 경우, 즉시 1cETH를 발급 받는다. 모든 거래 내역은 이더리움 블록체인에 저장되며 블록이 생성될때 마다 이자가 복리로 누적된다. 사용자는 원하는 경우에 c토큰을 반환하고 담보물로 예치해둔 토큰을 되돌려 받을 수 있다. 이때 담보물과 함께 현재까지의 이자 역시 합산되어 분배된다. 이렇게 컴파운드는 c토큰이라는 정책을 통해서 본인의 자산이 예치되어 이자를 받는 환경에서도 원금을 융통 할 수 있는 환경을 만들어냈다. 컴파운드에 암호화폐를 예치해서 이자 수익을 얻는 것 외에도, 다른 사용자들에게 대출을 제공하면서 이윤을 얻는 방법도 있다. 컴파운드에서 각각의 토큰은 수요와 공급에 따라 각기 다른 대출 이율을 제공한다. 2020년 5월 기준 대출 이율은 약 2~6%, 공급 이율은 약 0.1~1.5%이다.<ref>ellipti, 〈[https://coinone.co.kr/talk/clip/detail/877?__cf_chl_jschl_tk__=e037cba97f233b5e72e238d5448a768619754671-1593504309-0-AdcJotyi13yqQYF7hC0LqGhrFTgAWcB6gkrhoPdPMWVPbYyq1lULh62crEroP8-gsc2VxF4ybt4FGYhublinX4CGbVvGaORhq5iJKbRzN0T4dK9WKbQXPChm-rnzG_hUAgyWCE3y0j_gNlLJlDdCKDxPW6eopC-wsZbR89JZ7Ys3uyGlgZbi_6ksGOT7sfblGcHjlof_J6W12Yt8RhlUBI0aEUta1XcnoVa_JIWX1uUsUMTFeRr1N7GJBGiCC29komxdzj2MNGKg5UiGApNPYrFqeslPRVEmx80OpLmEtQuq 디파이(DeFi)의 시장점유율과 주요 프로젝트]〉, 《코인원톡》, 2020-05</ref>
 +
 
 +
한편 2020년 6월 15일 컴파운드 토큰이 등장하며 기존 디파이 시장과 암호화폐 시장에 큰 파장을 주었다. 시드투자로 3,320만 달러를 투자받아 이를 239만 6,000개의 컴파운드 토큰으로 지분 투자자에게 배분했다. 이 투자 단가는 대략 13.8달러였는데, 닷새만에 26.6배로 훌쩍 올라 326달러를 기록했다. 컴파운드가 준 파장은 비단 가격 관련만은 아니었다. 탈중앙화 금융(Decentralized Finance)의 약자로서, 탈중앙화된 분산금융 또는 분산재정을 의미하는 디파이 프로젝트에서 가장 중요하게 고려되는 지표는 예치금인데, 프로젝트 초기 단계인 컴파운드의 예치금이 53억 3,000만 달러로 디파이의 대표격인 메이커다오의 48억 3,000만 달러를 뛰어넘어 최대 예치금을 기록했다.<ref>Join:D, 〈[https://news.joins.com/article/23806925 (타로핀) 컴파운드가 뜨겁다, 그만 데피(De-fi)라]〉, 《중앙일보》, 2020-06-22</ref>
 +
 
 +
==등장배경==
 +
컴파운드 이전에도 암호자산을 대출해주는 서비스는 존재했다. 그렇지만 널리 사용되기에는 두 가지 문제점이 있었다. 첫 째는 중앙화된 거래소로 증거금 대출시스템은 그대로 믿기에 신뢰도가 부족했다. 해킹 논란이 있었던 거래소들이 그러한 예시이다. 두 번째는 P2P 대출 프로토콜이다. 개인간 대출 프로토콜은 느리고 비동기적이며 자금 유동성이 매우 부족하고 번거로웠다. 이러한 두 가지 문제점은 모두 자금을 특정 대출에만 집중시켰기 때문에 대출시장이 충분히 성숙해지기 전까지는 원하는 규모의 자금대출이 어렵다. 이더리움은 튜링완전한 가상머신으로, 이론상 스마트 계약을 통해 복잡한 시스템을 구축할 수 있지만 실제로 금융 애플리케이션을 블록체인에 구현하는 것은 매우 어렵다. 복리계산을 위한 연산과 스마트 계약이 자체적인 쿼리를 콜하고 외부 이벤트를 받아올 수 없기 때문에 이러한 문제들을 어느정도 해결할 수 있도록 프로토콜 레이어를 통해 컴파운드를 구현하게 되었다. 프로토콜로 구현하면 대출에 직접 자금을 조달하는 대신 사용자는 자산을 자산 풀에 공급함으로써 유동성을 제공하고 락업이 걸려있지 않아 언제든지 대출계약을 철회할 수 있다. 사용자와 디앱은 프로토콜에 제공되는 사용 가능한 담보에 따라 머니마켓에서 즉시 대출을 실행할 수 있다. 프로토콜이 각 머니마켓의 수요와 공급에 따라 알고리즘적으로 이자율을 설정할 수 있으며 임의의 만기일이 없기 때문에 프로토콜은 더 적은 작업량으로 서비스 사용료를 낮출 수 있게 된다.<ref>wooqii, 〈[https://medium.com/@wooqii/defi-app-1%EB%B6%80-compound-afa214ffe7ca DeFi app 1부, Compound - DeFi란 무엇인지, 그리고 대표적인 DeFi service인 Compound에 대해 알아보자!]〉, 《미디엄》, 2019-12-18</ref>
  
 
== 특징 ==
 
== 특징 ==
===자산 공급===
+
===자산대출시장===
사용자의 자산이 일치하고 다른 사용자에게 빌려주는 교환 또는 P2P 플랫폼과 달리 컴파운드 프로토콜은 각 사용자의 공급을 집계하는데, 사용자가 자산을 공급할 때 자산은 자원이 된다. 이러한 접근방식은 직접 대출보다 유동성이 훨씬 뛰어나다. 시장의 모든 자산을 차용하지 않는 한 프로토콜이 유동성을 장려하여 사용자는 특정 대출의 만기를 기다리지 않고 언제든지 자산을 회수할 수 있다. 시장에 공급되는 자산은 ERC-20 토큰 잔액 c토큰(cToken)으로 표시되며, 이는 증가하는 수량에 대한 권리를 소유주에게 부여한다. 즉, 자금시장이 수요를 차입하는 기능인 이자가 발생함에 따라 c토큰은 증가하는 기초 자산으로 전환할 수 있게 된다. 이런식으로 ERC-20 c토큰을 보유하는 것만으로 간단하게 이자를 얻을 수 있다.
+
컴파운드 프로토콜은 기존 머니마켓과 같이 암호자산을 누구나 원하는 때에 바로 단기 대출받을 수 있는 머니마켓을 구축하고자 한다. 이때 컴파운드 프로토콜은 머니마켓에 대해 MMF와 같은 펀드를 형성함으로써 단기대출시장의 유동성 문제를 해결하고자 한다.컴파운드 프로토콜에는 암호화폐 별로 머니마켓이 존재한다. 따라서 컴파운드 프로토콜이 특정 암호자산에 대한 머니마켓별로 유동성 풀을 구축하고, 이를 충분히 유지하여야 개별 머니마켓이 잘 작동할 수 있다. 개인이 컴파운드 머니마켓에 암호자산을 맡기면 프로토콜은 해당 암호자산을 가지고 돈을 빌리고자 하는 사람들에게 담보대출을 해준다. 차입자는 대출자산 총 가치의 1.5배 이상이 되는 암호자산을 컴파운드 머니마켓에 제공하기만 하면 원하는 암호자산 대출이 가능하다. 이때 담보로 제공되는 암호자산은 여러 종류여도 무방하다. 컴파운드 프로토콜에서는 대출을 통해 발생한 이자를 머니마켓에 암호자산을 맡긴 사람에게 분배해주는데, 차입자가 머니마켓에 담보로 제공한 암호자산에 대해서도 이자가 쌓이는 특이점이 있다. 예를 들어, 이더리움(ETH)과 베이직어텐션토큰(BAT)의 교환비율이 150이라 할 때, 1ETH를 빌리고자 하는 개인은 컴파운드의 BAT머니마켓에 150BAT를 제공하고 ETH 머니마켓으로부터 1ETH를 대출받을 수 있다. 개인은 ETH머니마켓으로부터 채무이자가 쌓이는 반면, BAT를 제공한 BAT머니마켓에서는 예금이자가 쌓인다. 이처럼 머니마켓 시스템을 차용한 컴파운드 프로토콜은 이용자가 1:1 매칭 대출에서 경험할 수 없는 다음과 같은 이점을 제공한다.<ref name="루시아"></ref>
 +
 
 +
* '''상시 이자 제공''' : 컴파운드 프로토콜 머니마켓에 자산을 제공한 개인은 매 이더리움 블록 간격(15초)으로 머니마켓에서 제공하는 연 이자율의 1/2102400만큼 이자가 쌓인다.
 +
* '''대출계약 시 마찰 제거''' : 컴파운드 프로토콜 머니마켓에서 대출이자율은 알고리즘에 의해 자동 결정된다. 또한 이용자가 컴파운드 프로토콜에 담보로 제공한 전체 암호자산의 가치가 차입금의 1.5배이상 이라면 어떤 암호자산이든 대출이 가능하므로 투자자와 협상을 거칠 필요가 없다.
 +
* '''최소 지급 금액 없음''' : 차입자가 원하는 금액에 맞춰서 빌려줘야 하는 1:1매칭 대출과 달리, 컴파운드 이용자는 원하는 만큼만 암호자산을 컴파운드 머니마켓에 제공하면 된다.
 +
* '''수시 입출금 가능''' : 1:1매칭 대출에서 투자자는 차입자가 대출금을 상환하기 전까지는 다시 투자금을 회수하기 어렵다. 반면, 컴파운드 이용자는 언제든 컴파운드 머니마켓 유동성 풀에서 자신이 예치한 자산을 출금할 수 있다.<ref name="루시아"></ref>
 +
 
 +
====자산 공급====
 +
사용자의 자산이 일치하고 다른 사용자에게 빌려주는 교환 또는 P2P 플랫폼과 달리 컴파운드 프로토콜은 각 사용자의 공급을 집계하는데, 사용자가 자산을 공급할 때 자산은 자원이 된다. 이러한 접근방식은 직접 대출보다 유동성이 훨씬 뛰어나다. 시장의 모든 자산을 대출받지 않는 한 프로토콜이 유동성을 장려하여 사용자는 특정 대출의 만기를 기다리지 않고 언제든지 자산을 회수할 수 있다. 시장에 공급되는 자산은 ERC-20 토큰 잔액 c토큰(cToken)으로 표시되며, 이는 증가하는 수량에 대한 권리를 소유주에게 부여한다. 즉, 머니마켓이 수요를 대출하는 기능인 이자가 발생함에 따라 c토큰은 증가하는 기초 자산으로 전환할 수 있게 된다. 이런식으로 ERC-20 c토큰을 보유하는 것만으로 간단하게 이자를 얻을 수 있다. 이더리움과 토큰에 장기간 투자한 개인은 컴파운드 머니마켓을 추가 투자 수익원으로 사용할 수 있다. 예를 들어 어거를 소유한 사용자는 자신의 토콘을 컴파운드 프로토콜에 공급할 수 있으며, 자산을 관리하거나 대출 요청을 이해항하거나, 투기적 위험을 감수하지 않고도 어거를 이자로 얻을 수 있다. 사용자는 토큰 잔액이 있는 디앱, 머신, 거래소에서 스위핑 잔액을 통해 수익 창출 및 증분 수익원으로 컴파운드 프로토콜을 사용할 수 있다. 이는 이더리움 생태계를 위한 완전히 새로운 비즈니스 모델을 열 수 있는 잠재력을 가지고 있다.<ref name="백서"></ref>
 +
 
 +
====자산 대출====
 +
컴파운드는 사용자들이 c토큰을 담보로 프로토콜에서 마찰 없이 빌릴 수 있도록 하여 이더리움 생태계 어디서나 사용할 수 있도록 해준다. P2P 프로토콜과 달리 컴파운드에서 빌리려면 사용자가 원하는 자산을 지정하도록 한다. 협상 조건, 만기일 또는 자금조달 기간이 없다. 대출은 즉각적이고 예측 가능하다. 자산을 공급하는 것과 마찬가지로 각 머니마켓에는 시장의 힘에 의해 설정된 변동 이자율이 있으며, 이 이자율은 각 자산의 대출원가를 결정한다.
 +
 
 +
* '''담보가치''' : c토큰의 소유권에 의해 표시되는 프로토콜이 보유한 자산은 프로토콜로부터 대출하기 위한 담보로 사용된다. 각 시장에는 대출할 수 있는 기초 자산 가치의 일부를 나타내는 0~1의 담보요소가 있다. 유동성이 있는 소액 자산은 담보 요소가 적고, 담보력이 좋은 것은 아니지만 유동적인 고액 자산은 담보 요인이 높다. 토큰 잔액의 기초가 되는 계정 가치와 담보 요소를 곱한 값은 사용자의 대출능력과 같다. 사용자는 자신의 대출능력까지 최대한 대출받을 수 있지만, 능력 이상으로 대출 자산의 총 가치를 높이는 어떠한 조치도 취할 수 없다. 이는 프로토콜을 채무불이행 위험으로부터 보호한다.
 +
 
 +
* '''위험 및 청산''' : 계정의 대출 대금의 가치가 대출능력을 초과하는 경우, 대출금의 일부는 현재 시장가격에서 청산 할인을 뺀 금액으로 사용자의 c담보를 대가로 미결제 대출금의 일부가 상환될 수 있다. 이는 대출 업체의 노출을 줄이고 프로토콜의 위험을 제거하기 위해서 신속하게 개입할 수 있는 중간자의 생태계를 의미한다. 마감할 수 있는 적격 비율, 즉 근접 요인은 상환 가능한 대출 자산의 일부이며 범위는 0에서 1까지이다. 사용자의 대출이 대출능력보다 적을 때까지 청산 절차는 계속해서 호출될 수 있다. 대출된 자산을 소유한 이더리움 주소는 청산 기능을 발동하여 차용인의 c토큰을 담보로 자산을 교환할 수 있다. 사용자, 자산, 가격 모두 컴파운드 프로토콜에 포함되어 있기 때문에 청산은 마찰이 없고 외부 시스템이나 주문서에 의존하지 않는다.
 +
 
 +
* '''사용 사례''' : 포트폴리오를 판매하거나 재배치하지 않고 새로운 자산을 원활하게 보유할 수 있는 능력은 디앱 소비자, 거래자 및 개발자에게 다음과 같은 새로운 기능을 제공한다.
 +
 
 +
# 주문을 기다리거나 오프체인 행동을 요구하지 않고도 디앱은 골렘 네트워크에서 컴퓨팅파워를 구매하는 등 이더리움 생태계에서 사용할 토큰을 빌릴 수 있다.
 +
# 거래자는 기존 포트폴리오를 담보로 이더를 빌려 새로운 ICO 투자에 자금을 조달할 수 있다.
 +
# 거래자는 토큰을 빌려서 거래소에 보내고 판매할 수 있으며, 판매 시 차익을 얻을 수 있다.<ref name="백서"></ref>
 +
 
 +
===이자율 모델===
 +
컴파운드 프로토콜은 개별 공급자나 차입자가 조건과 금리에 대해 협상을 해야 하는 것이 아니라, 공급 및 수요에 근거하여 각 머니마켓에서 이자율 균형을 달성하는 이자율 모델을 활용한다. 경제이론에 따르면 금리는 수요의 함수로 증가해야 하고, 수요가 낮을 때는 금리가 낮아야 하며, 수요가 많을 때는 반대로 상승해야 한다. 각 시장의 사용률 U는 단일 변수로 소유와 공급을 통합한다.
 +
 
 +
<math>U_{a} = Borrows_{a} / (Cash_{a} + Borrows_{a})</math>
 +
 
 +
수요곡선은 거버넌스를 통해 체계화되어 활용 함수로 표현된다. 예를 들어, 대출금리는 다음과 유사할 수 있다.
 +
 
 +
<math>Borrowing Interest Rate_{a} = 2.5 % + U_{a} * 20 %</math>
 +
 
 +
공급 업체가 벌어들인 금리는 암묵적인 것이며, 대출금리와 이용률을 곱한 값과 같다. 컴파운드 프로토콜은 유동성을 보장하지 않는 대신, 유동성 인센티브 구조를 채택하고 있다. 금리 모델에 의존하여 인센티브를 제공하는 것이다. 자산에 대한 수요가 극심할 때, 프로토콜의 유동성 즉 인출 또는 대출 가능한 토큰의 유동성이 감소한다. 이러한 상황이 발생하면 금리가 상승하고 공급을 장려하고 대출을 억제한다.<ref name="백서"></ref>
 +
 
 +
===구현 및 구조===
 +
핵심적으로 컴파운드 머니마켓은 이더리움 계정이 자산을 공급하거나 빌리면서 시간의 함수인 이자를 계산할 수 있도록 하는 원장이다. 이 프로토콜의 스마트 계약은 공개적으로 이용할 수 있으며, 기계, 디앱 및 사용자를 위해 무료로 사용할 수 있다.
 +
 
 +
====c토큰 스마트 계약====
 +
각 머니마켓은 ERC-20 토큰 사양을 구현하는 스마트 계약으로 구성된다. 사용자 잔액은 c토큰 잔액으로 표시되며, 사용자는 시장에 자산을 공급하여 c토큰을 민트하거나 기본 자산으로 c토큰을 상환할 수 있다. c토큰과 기초자산 간의 가격 즉, 교환율은 시간이 지남에 따라 증가하며, 자산의 차입자에 의해 이자가 발생하므로 다음과 같다.<ref name="백서"></ref>
 +
 
 +
<math>exchangeRate</math> <math>=</math> <math>(</math><math>underlyingBalance</math> <math>+</math> <math>totalBorrowBalance_{a}</math> <math>-</math> <math>reserves_{a}</math><math>)</math> <math>/</math> <math>cTokenSupply_{a}</math>
 +
 
 +
시장의 총 대출 잔고가 증가함에 따라 대출이자 발생의 함수로 c토큰과 기초 자산 간의 환율이 상승한다.
 +
 
 +
:{|class=wikitable width=750 style="background-color:#ffffee"
 +
|+c토큰 스마트 계약 기능의 ABI 및 설명
 +
!align=center style="background-color:#ffeecc"|ABI
 +
!align=center style="background-color:#ffeecc"|설 명
 +
|-
 +
|align=center|mint(uint256 amountUnderlying)
 +
|align=center|기본 자산을 시장으로 이전하고 msg.sender의 c토큰 잔액을 업데이트한다.
 +
|-
 +
|align=center|redeem(uint256 amount)<br>redeemUnderlying(uint256<br>amountUnderlying)
 +
|align=center|기본 자산을 시장 밖으로 이전하고 msg.sender의 c토큰 잔액을 업데이트한다.
 +
|-
 +
|align=center|borrow(uint amount)
 +
|align=center|msg.sender 담보 가치를 점검하고, 충분할 경우 기초 자산을 시장에서<br>msg.sender로 이전하고 msg.sender의 차입 잔고를 업데이트한다.
 +
|-
 +
|align=center|repayBorrow(uint amount)<br>repayBorrowBehalf(address<br>account, uint amount)
 +
|align=center|기초 자산을 시장으로 이전하고, 차용자의 차입 잔고를 업데이트한다.
 +
|-
 +
|align=center|liquidate(address borrower,<br>address collateralAsset, uint<br>closeAmount)
 +
|align=center|기본 자산을 시장으로 이전하고, 차용자의 차입 잔고를 업데이트 한 다음,<br>c토큰 자료를 차용자에서 msg.sender로 이체한다.
 +
|}
 +
 
 +
====이자율 메커니즘====
 +
컴파운드 머니마켓이 1:1매칭 비수탁형대출보다 신속하게 단기 대출에 대한 수요에 대응할 수 있다고 할지라도 여전히 유동성 부족 문제는 일어날 수 있다. 머니마켓 방식의 잠재적 유동성 부족 문제는 1) 머니마켓 내 대출가능한 자금 대비 대출 수요가 월등히 높을 때 2) 이용자가 차입금을 갚지 않거나 담보가 부실화 되어 담보를 통해 원금 회수가 어려운 경우가 빈번히 발생할 때 발생한다. 컴파운드 프로토콜은 머니마켓에서의 유동성 부족을 방지하기 위해 알고리즘에 의한 이자율 조절 메커니즘을 사용한다. 컴파운드 프로토콜은 머니마켓의 암호자산 수요 공급 비율에 맞춰 이자율을 조정하기 위해 Utilization ratio를 사용한다. 사용효율(Utilization ratio)은 ‘현재까지 집행한 대출 액’을 ‘전체 이용가능한 대출액(신용)’으로 나눈 것(Total Debt Balance / Total Available Credit)을 의미한다. 이러한 사용효율값은 머니마켓이 대출을 제공할 수 있는 여력을 나타낸다. 예를 들어, 사용효율값이 높다는 것은 머니마켓에서 제공가능한 대출액에 비해 이미 집행된 대출이 많아 앞으로 가능한 대출이 얼마 안남았음을 의미한다. 따라서 사용효율값이 상승하면 대출이자율 및 예금이자율도 함께 상승한다. 이로 인해 차입자 입장에서는 이자부담이 증가하여 대출금 상환을 앞당기거나 추가 대출수요가 줄 수 있다. 반대로, 자산 제공자입장에는 수익 증대의 기회이기 때문에 보다 많은 암호자산 제공할 수 있다. 결론적으로 컴파운드 프로토콜은 머니마켓 이자율을 조절함으로써 유동성 부족을 방지할 수 있다.<ref name="루시아">Lucia Kim, 〈[https://medium.com/decon-lab/%EC%A4%91%EA%B0%9C%EC%9D%B8-%EC%97%86%EB%8A%94-%EB%8B%A8%EA%B8%B0%EB%8C%80%EC%B6%9C%EC%8B%9C%EC%9E%A5%EC%9D%98-%EB%93%B1%EC%9E%A5-%EC%BB%B4%ED%8C%8C%EC%9A%B4%EB%93%9C-%ED%94%84%EB%A1%9C%ED%86%A0%EC%BD%9C-a2058305b436 중개인 없는 단기대출시장의 등장: 컴파운드 프로토콜]〉, 《미디엄》, 2019-04-15</ref>
 +
 
 +
즉, 컴파운드 머니마켓은 모든 차용자에게 균일하게 적용되는 이자율로 정의되며, 이는 시간이 지남에 따라 공급과 수요의 관계가 변화함에 따라 조정된다. 각 머니마켓에 대한 각 이자율의 이력은 이자율이 바뀔 때마다 계산되는 이자율 지수로, 사용자가 자산을 채굴, 상환, 대출, 상환 또는 청산하는 결과로 나타난다. 거래가 발생할 때마다 자산의 이자율 지수를 업데이트하여, 해당 기간의 이자를 <math>r * t</math>로 표시하고, 계산한 이자를 사용하여 이전 지수 이후의 이자를 가중시킨다. 특징적인 것은 이런 과정이 모두 이더리움 네트워크에서 자동으로 이루어지기 때문에 블록 단위로 이자를 받을 수 있다는 것이다. 실제로 예금을 입금하면 1분 동안에도 3~4번 이자가 소량씩 쌓인다. 실시간으로 이자가 붙기 때문에 매 순간 계속해서 예금이 늘어나고, 복리 효과가 일어난다.<ref>김우람 기자, 〈[https://www.etoday.co.kr/news/view/1787791 (김우람의 스토리텔링) 연 이자율 12%로 몰리는 자금...'컴파운드'가 뜬다]〉, 《이투데이》, 2019-08-14</ref> 블록 당 이자율 사용은 다음과 같다.
 +
 
 +
<math>Index_ {a, n}</math> <math>=</math> <math>Index_{a,(n-1)}</math> <math>*</math> <math>(1 + r * t)</math>
 +
 
 +
시장의 총 대출 대금은 마지막 지수 이후에 발생한 이자를 포함하도록 업데이트된다.
 +
 
 +
<math>totalBorrowBalance_{a,n}</math> <math>=</math> <math>totalBorrowBalance_{a,(n-1)}</math> <math>*</math> <math>(1 + r * t)</math>
 +
 
 +
발생이자의 일부는 0에서 1까지의 범위인 리저프팩터(reserveFactor)에 의해 결정되는 적립금으로 유지된다. 컴파운드에 있는 다른 스테이블 코인과는 달리 테더의 리저브팩터는 0으로 설정되어 있다. 리저브팩터는 대출자가 납입하는 이자 가운데 몇프로를 떼느냐를 결정하는 변수이다. 이렇게 모인 자금은 유동성 보호장치로 사용된다. 예를 들어 테더의 대출 수요는 높은데 테더를 공급하는 사람은 한 명도 없다고 가정했을 때, 이런 상황에서는 누구도 대출을 받지 못하게 된다. 이때 테더 대출 과정에서 미리 떼어놓은 보유금이 있다면 대출 수요를 일시적으로 충족시킬 수 있게 된다.<ref>dakeshi, 〈[https://steemit.com/hive-101145/@dakeshi/defi-compound-usdt (DeFi) Compound, USDT 관련 제안 투표 중]〉, 《스팀잇》, 2020-06-19</ref>
 +
 
 +
<math>reserves_ {a}</math> <math>=</math> <math>reserves_ {a, (n-1)}</math> <math>+</math> <math>totalBorrowBalance_ {a, (n-1)}</math> <math>*</math> <math>(r * t * reserveFactor)</math>
 +
 
 +
====차용자 메커니즘====
 +
발생이자를 포함한 차용자의 잔액은 단순히 사용자의 잔액이 마지막으로 체크포인트되었을 때 현재의 지수를 지수로 나눈 비율이다. c토큰의 각 차입자 주소의 잔액은 계정 체크포인트로 저장된다. 계정 체크 포인트는 솔리디티 투플(tuple) <math><uint256 balance, uint256 interestIndex></math>(uint amount)이다. 이 투플은 해당 계정에 마지막으로 이자를 적용한 시점의 잔액을 설명한다.<ref name="백서"></ref>
 +
 
 +
====차입====
 +
컴파운드에 충분한 잔액이 있는 차입을 원하는 사용자는 해당 cToken 계약에 따라 차입금(입금 금액)을 호출할 수 있다. 이 함수콜은 사용자의 계좌 가치를 확인하고 충분한 담보가 주어지면 사용자의 차용 잔고를 업데이트하고, 토큰을 사용자의 이더리움 주소로 이전하며, 머니마켓의 변동금리를 업데이트한다. 차입금은 잔액 이자와 정확히 동일한 방식으로 계산되었다. 차용인은 미결제 잔액을 상환하는 <math>repayBorrow</math>(uint amount)를 호출하여 언제든지 미상환 대출금을 상환할 권리가 있다.<ref name="백서"></ref>
 +
 
 +
====청산====
 +
컴파운드 프로토콜은 최소 담보대출비율(Collateral Ratio)을 맞추지 못하는 이용자 계정의 담보를 청산함으로써 담보 부실화로 인한 원금 손실을 방지하고자 한다. 담보대출비율은 담보물의 가격과 대출금액의 비율을 의미한다. 예를 들어, 컴파운드에서 요구하는 최소 담보대출비율은 150%이다. 따라서 컴파운드 머니마켓에서 100ETH를 차입하고자 하는 이용자는 최소 150ETH 상당의 다른 암호자산을 담보로 제공하여야 한다. 이처럼 컴파운드 프로토콜에서 담보자산을 차입하는 자산의 가치보다 더 많이 요구하는 이유는 차입자가 원금을 갚지 못하더라도 담보를 청산함으로써 원금을 회수할 수 있게 하기 위함이다. 컴파운드 프로토콜에서는 담보자산과 대출하고자 하는 자산의 현재 가격 및 교환비율을 관리하기 위해 가격 오라클을 운영하고 있다. 위원회로 구성된 가격 오라클은 상위 10개 거래소로부터 가격 정보를 가져와 자산의 가치를 결정한다. 예를 들어, 이용자가 베이직어텐션토큰(BAT)을 담보로 2ETH를 빌리고자 한다. 가격 오라클을 통해 현재 1BAT가 $0.2이고, 1ETH가 $150로 정해짐에 따라 이용자는 차입금($300)의 1.5배($450)인 2,250BAT를 담보로 제공해야 한다.
 +
 
 +
담보자산의 가치 하락 혹은 차입한 자산의 가치 상승은 담보부실화를 가져와 담보를 청산하더라도 원금을 회수하기 어려워진다. 따라서 컴파운드 프로토콜에서는 담보가치가 최소담보대출비율을 맞추지 못하는 계정을 빠르게 파악함으로써 해당 계정의 담보부실화를 방지하고자 한다. 이를 위해 컴파운드 프로토콜은 ‘계정 유동성’을 매번 체크한다. 계정 유동성이란 이용자가 컴파운드 프로토콜에 제공한 전체 자산에서 차입금에 담보대출비율(1.5)를 곱한 값을 뺀 값을 의미한다. 계정 유동성이 0이라는 것은 현재 이용자가 제공한 자산이 정확히 최소담보대출비율을 맞추고 있음을 의미한다. 따라서 계정 유동성이 적자인 계정은 최소담보대출비율을 맞추지 못한 것이기 때문에 추가로 담보를 제공해야 하거나 현재 제공되어져 있는 담보를 청산하여 차입액을 갚아야 한다. 계정 유동성이 적자로 전환되면 컴파운드 프로토콜은 해당 계정의 담보 일부를 5% 할인된 가격으로 처분하여 차입금 일부를 상환함으로써 다시 최소담보대출비율 수준으로 회복시켜준다.<ref name="루시아"></ref>
 +
 
 +
====가격 오라클====
 +
가격 오라클(price oracle)은 중앙화된 거래소의 가격 정보를 탈중앙화된 대출 플랫폼에 제공하는 개념으로, 컴파운드는 이 시스템을 활용해 가격이 낮게 설정되면 자산을 자동으로 청산한다.<ref>정유림 기자, 〈[https://www.thebchain.co.kr/news/articleView.html?idxno=6202 암호화폐 대출 프로토콜 ‘컴파운드’ 2500만 달러 투자 유치]〉, 《더비체인》, 2019-11-18</ref> 가격 오라클은 지원되는 각 자산의 현재 환율을 유지하며, 컴파운드 프로토콜은 자산 가치를 상위 10개 암호화폐 거래소의 가격을 수집하는 방법으로 위원회에 자산의 가치를 설정할 수 있는 권한을 위임한다. 이 환율은 대출 능력 및 담보 요건을 결정하는 데 사용되며, 계정과 동등한 가치를 계산해야 하는 모든 기능에 사용된다.<ref name="백서"></ref>
 +
 
 +
====관리자====
 +
컴파운드 프로토콜은 기본적으로 특정 토큰을 지원하지 않는다. 대신 시장은 화이트리스트에 있어야 한다. 이는 사용자가 자산과 상호작용을 시작할 수 있도록 하는 관리기능인 서포트마켓(supportMarket) 즉, 주소 시장, 주소 금리 모델을 통해 수행된다. 자산을 빌리기 위해서는 가격 오라클(Price Oracle)의 유효한 가격이 있어야 하며, 자산을 담보로 사용하려면 유효한 가격과 담보 팩터가 있어야 한다. 각 함수 호출은 컴트롤러(comptroller)라고 하는 정책 계층을 통해 검증된다. 이 계약은 사용자 조치를 진행하기 전에 담보 및 유동성을 검증한다.<ref name="백서"></ref>
 +
 
 +
====거버넌스====
 +
컴파운드는 중앙 집중식 프로토콜 제어(자산당 이자율 모델 선택 등)로 작할 것이며, 시간이 지남에 따라 커뮤니티 및 이해관계자의 통제로 전환된다. 프로토콜의 다음 권한은 관리자가 제어한다.
 +
 
 +
* 새로운 c토큰 시장을 상장하는 능력
 +
* 시장별 금리 모델을 업데이트하는 기능
 +
* 오라클 주소를 업데이트하는 기능
 +
* c토큰의 예비금을 철회하는 기능
 +
* 커뮤니티에 의해 통제되는 다오(DAO)와 같은 새로운 관리자를 선택할 수있는 능력<ref name="백서"></ref>
  
이더리움과 토큰에 장기간 투자한 개인은 컴파운드 자산시장을 추가 투자 수익원으로 사용할 수 있다. 예를 들어 어거를 소유한 사용자는 자신의 토콘을 컴파운드 프로토콜에 공급할 수 있으며, 자산을 관리하거나 대출 요청을 이해항하거나, 투기적 위험을 감수하지 않고도 어거를 이자로 얻을 수 있다. 사용자는 토큰 잔액이 있는 디앱, 머신, 거래소에서 스위핑 잔액을 통해 수익 창출 및 증분 수익원으로 컴파운드 프로토콜을 사용할 수 있다. 이는 이더리움 생태계를 위한 완전히 새로운 비즈니스 모델을 열 수 있는 잠재력을 가지고 있다.
+
== 동영상 ==
 +
<youtube>M6-1Ch4lI78</youtube>
 +
<youtube>_2lzXK3XmRk</youtube>
 +
<youtube>QwKFFcTpUxI</youtube>
  
 
{{각주}}
 
{{각주}}
  
 
== 참고자료 ==
 
== 참고자료 ==
 +
* 컴파운드 공식 홈페이지 - https://compound.finance/
 +
* 컴파운드 트위터 - https://twitter.com/compoundfinance
 +
* 컴파운드 미디엄 - https://medium.com/compound-finance
 +
* 컴파운드 깃허브 - https://github.com/compound-finance/compound-protocol
 +
* 컴파운드 백서 1.0 - https://compound.finance/documents/Compound.Whitepaper.pdf
 +
* 최진승 기자, 〈[https://www.beinews.net/news/articleView.html?idxno=29004 컴파운드, 2500만 달러 시리즈 A 유치... 3위 DeFi 플랫폼으로 부상]〉, 《비아이뉴스》, 2019-11-17
  
 
== 같이 보기 ==
 
== 같이 보기 ==
 +
* [[디파이]]
 +
* [[컴파운드]]
  
{{로고 필요}}
+
{{암호화폐 종류|검토 필요}}
{{암호화폐 종류|토막글}}
 

2023년 5월 4일 (목) 10:59 기준 최신판

컴파운드(Compound)
컴파운드(Compound)

컴파운드(Compound)는 암호화폐를 담보로 대출을 제공하는 디파이(DeFi) 플랫폼이다. 투자자가 자신의 디지털 자산을 빌려주고 이자를 받을 수 있는 구조로, 대출은 중개인을 통하지 않고 블록체인 기반의 스마트 계약을 통해 이루어진다. 컴파운드의 티커는 COMP이다.

개요[편집]

컴파운드는 이더리움 블록체인을 기반으로 한 프로토콜로, 머니마켓을 구축한다. 여기에서 머니마켓은 자산의 공급과 수요에 기초하여 알고리즘으로 파생된 이자율을 가진 자산 풀이다. 자산 공급자는 거래 상대방과 만기일, 이자율 또는 담보와 같은 조건을 협상할 필요 없이 유동 금리를 획득하면서 프로토콜과 직접 상호작용한다. 각 머니마켓은 이더리움 자산에 공유하며, 투명하고 공개적으로 확인할 수 있는 장부를 포함하고 있는데, 이 장부에 모든 거래 및 과거 이자율을 기록한다.[1]

컴파운드의 대출 서비스는 독특한 점이 있다. 컴파운드에서 지원하는 ERC-20 토큰을 해당 플랫폼에 예치 할 경우, 같은 양의 컴파운드 토큰이 발행된다. 예를들어 컴파운드에 1ETH를 예치 할 경우, 즉시 1cETH를 발급 받는다. 모든 거래 내역은 이더리움 블록체인에 저장되며 블록이 생성될때 마다 이자가 복리로 누적된다. 사용자는 원하는 경우에 c토큰을 반환하고 담보물로 예치해둔 토큰을 되돌려 받을 수 있다. 이때 담보물과 함께 현재까지의 이자 역시 합산되어 분배된다. 이렇게 컴파운드는 c토큰이라는 정책을 통해서 본인의 자산이 예치되어 이자를 받는 환경에서도 원금을 융통 할 수 있는 환경을 만들어냈다. 컴파운드에 암호화폐를 예치해서 이자 수익을 얻는 것 외에도, 다른 사용자들에게 대출을 제공하면서 이윤을 얻는 방법도 있다. 컴파운드에서 각각의 토큰은 수요와 공급에 따라 각기 다른 대출 이율을 제공한다. 2020년 5월 기준 대출 이율은 약 2~6%, 공급 이율은 약 0.1~1.5%이다.[2]

한편 2020년 6월 15일 컴파운드 토큰이 등장하며 기존 디파이 시장과 암호화폐 시장에 큰 파장을 주었다. 시드투자로 3,320만 달러를 투자받아 이를 239만 6,000개의 컴파운드 토큰으로 지분 투자자에게 배분했다. 이 투자 단가는 대략 13.8달러였는데, 닷새만에 26.6배로 훌쩍 올라 326달러를 기록했다. 컴파운드가 준 파장은 비단 가격 관련만은 아니었다. 탈중앙화 금융(Decentralized Finance)의 약자로서, 탈중앙화된 분산금융 또는 분산재정을 의미하는 디파이 프로젝트에서 가장 중요하게 고려되는 지표는 예치금인데, 프로젝트 초기 단계인 컴파운드의 예치금이 53억 3,000만 달러로 디파이의 대표격인 메이커다오의 48억 3,000만 달러를 뛰어넘어 최대 예치금을 기록했다.[3]

등장배경[편집]

컴파운드 이전에도 암호자산을 대출해주는 서비스는 존재했다. 그렇지만 널리 사용되기에는 두 가지 문제점이 있었다. 첫 째는 중앙화된 거래소로 증거금 대출시스템은 그대로 믿기에 신뢰도가 부족했다. 해킹 논란이 있었던 거래소들이 그러한 예시이다. 두 번째는 P2P 대출 프로토콜이다. 개인간 대출 프로토콜은 느리고 비동기적이며 자금 유동성이 매우 부족하고 번거로웠다. 이러한 두 가지 문제점은 모두 자금을 특정 대출에만 집중시켰기 때문에 대출시장이 충분히 성숙해지기 전까지는 원하는 규모의 자금대출이 어렵다. 이더리움은 튜링완전한 가상머신으로, 이론상 스마트 계약을 통해 복잡한 시스템을 구축할 수 있지만 실제로 금융 애플리케이션을 블록체인에 구현하는 것은 매우 어렵다. 복리계산을 위한 연산과 스마트 계약이 자체적인 쿼리를 콜하고 외부 이벤트를 받아올 수 없기 때문에 이러한 문제들을 어느정도 해결할 수 있도록 프로토콜 레이어를 통해 컴파운드를 구현하게 되었다. 프로토콜로 구현하면 대출에 직접 자금을 조달하는 대신 사용자는 자산을 자산 풀에 공급함으로써 유동성을 제공하고 락업이 걸려있지 않아 언제든지 대출계약을 철회할 수 있다. 사용자와 디앱은 프로토콜에 제공되는 사용 가능한 담보에 따라 머니마켓에서 즉시 대출을 실행할 수 있다. 프로토콜이 각 머니마켓의 수요와 공급에 따라 알고리즘적으로 이자율을 설정할 수 있으며 임의의 만기일이 없기 때문에 프로토콜은 더 적은 작업량으로 서비스 사용료를 낮출 수 있게 된다.[4]

특징[편집]

자산대출시장[편집]

컴파운드 프로토콜은 기존 머니마켓과 같이 암호자산을 누구나 원하는 때에 바로 단기 대출받을 수 있는 머니마켓을 구축하고자 한다. 이때 컴파운드 프로토콜은 머니마켓에 대해 MMF와 같은 펀드를 형성함으로써 단기대출시장의 유동성 문제를 해결하고자 한다.컴파운드 프로토콜에는 암호화폐 별로 머니마켓이 존재한다. 따라서 컴파운드 프로토콜이 특정 암호자산에 대한 머니마켓별로 유동성 풀을 구축하고, 이를 충분히 유지하여야 개별 머니마켓이 잘 작동할 수 있다. 개인이 컴파운드 머니마켓에 암호자산을 맡기면 프로토콜은 해당 암호자산을 가지고 돈을 빌리고자 하는 사람들에게 담보대출을 해준다. 차입자는 대출자산 총 가치의 1.5배 이상이 되는 암호자산을 컴파운드 머니마켓에 제공하기만 하면 원하는 암호자산 대출이 가능하다. 이때 담보로 제공되는 암호자산은 여러 종류여도 무방하다. 컴파운드 프로토콜에서는 대출을 통해 발생한 이자를 머니마켓에 암호자산을 맡긴 사람에게 분배해주는데, 차입자가 머니마켓에 담보로 제공한 암호자산에 대해서도 이자가 쌓이는 특이점이 있다. 예를 들어, 이더리움(ETH)과 베이직어텐션토큰(BAT)의 교환비율이 150이라 할 때, 1ETH를 빌리고자 하는 개인은 컴파운드의 BAT머니마켓에 150BAT를 제공하고 ETH 머니마켓으로부터 1ETH를 대출받을 수 있다. 개인은 ETH머니마켓으로부터 채무이자가 쌓이는 반면, BAT를 제공한 BAT머니마켓에서는 예금이자가 쌓인다. 이처럼 머니마켓 시스템을 차용한 컴파운드 프로토콜은 이용자가 1:1 매칭 대출에서 경험할 수 없는 다음과 같은 이점을 제공한다.[5]

  • 상시 이자 제공 : 컴파운드 프로토콜 머니마켓에 자산을 제공한 개인은 매 이더리움 블록 간격(15초)으로 머니마켓에서 제공하는 연 이자율의 1/2102400만큼 이자가 쌓인다.
  • 대출계약 시 마찰 제거 : 컴파운드 프로토콜 머니마켓에서 대출이자율은 알고리즘에 의해 자동 결정된다. 또한 이용자가 컴파운드 프로토콜에 담보로 제공한 전체 암호자산의 가치가 차입금의 1.5배이상 이라면 어떤 암호자산이든 대출이 가능하므로 투자자와 협상을 거칠 필요가 없다.
  • 최소 지급 금액 없음 : 차입자가 원하는 금액에 맞춰서 빌려줘야 하는 1:1매칭 대출과 달리, 컴파운드 이용자는 원하는 만큼만 암호자산을 컴파운드 머니마켓에 제공하면 된다.
  • 수시 입출금 가능 : 1:1매칭 대출에서 투자자는 차입자가 대출금을 상환하기 전까지는 다시 투자금을 회수하기 어렵다. 반면, 컴파운드 이용자는 언제든 컴파운드 머니마켓 유동성 풀에서 자신이 예치한 자산을 출금할 수 있다.[5]

자산 공급[편집]

사용자의 자산이 일치하고 다른 사용자에게 빌려주는 교환 또는 P2P 플랫폼과 달리 컴파운드 프로토콜은 각 사용자의 공급을 집계하는데, 사용자가 자산을 공급할 때 자산은 자원이 된다. 이러한 접근방식은 직접 대출보다 유동성이 훨씬 뛰어나다. 시장의 모든 자산을 대출받지 않는 한 프로토콜이 유동성을 장려하여 사용자는 특정 대출의 만기를 기다리지 않고 언제든지 자산을 회수할 수 있다. 시장에 공급되는 자산은 ERC-20 토큰 잔액 c토큰(cToken)으로 표시되며, 이는 증가하는 수량에 대한 권리를 소유주에게 부여한다. 즉, 머니마켓이 수요를 대출하는 기능인 이자가 발생함에 따라 c토큰은 증가하는 기초 자산으로 전환할 수 있게 된다. 이런식으로 ERC-20 c토큰을 보유하는 것만으로 간단하게 이자를 얻을 수 있다. 이더리움과 토큰에 장기간 투자한 개인은 컴파운드 머니마켓을 추가 투자 수익원으로 사용할 수 있다. 예를 들어 어거를 소유한 사용자는 자신의 토콘을 컴파운드 프로토콜에 공급할 수 있으며, 자산을 관리하거나 대출 요청을 이해항하거나, 투기적 위험을 감수하지 않고도 어거를 이자로 얻을 수 있다. 사용자는 토큰 잔액이 있는 디앱, 머신, 거래소에서 스위핑 잔액을 통해 수익 창출 및 증분 수익원으로 컴파운드 프로토콜을 사용할 수 있다. 이는 이더리움 생태계를 위한 완전히 새로운 비즈니스 모델을 열 수 있는 잠재력을 가지고 있다.[1]

자산 대출[편집]

컴파운드는 사용자들이 c토큰을 담보로 프로토콜에서 마찰 없이 빌릴 수 있도록 하여 이더리움 생태계 어디서나 사용할 수 있도록 해준다. P2P 프로토콜과 달리 컴파운드에서 빌리려면 사용자가 원하는 자산을 지정하도록 한다. 협상 조건, 만기일 또는 자금조달 기간이 없다. 대출은 즉각적이고 예측 가능하다. 자산을 공급하는 것과 마찬가지로 각 머니마켓에는 시장의 힘에 의해 설정된 변동 이자율이 있으며, 이 이자율은 각 자산의 대출원가를 결정한다.

  • 담보가치 : c토큰의 소유권에 의해 표시되는 프로토콜이 보유한 자산은 프로토콜로부터 대출하기 위한 담보로 사용된다. 각 시장에는 대출할 수 있는 기초 자산 가치의 일부를 나타내는 0~1의 담보요소가 있다. 유동성이 있는 소액 자산은 담보 요소가 적고, 담보력이 좋은 것은 아니지만 유동적인 고액 자산은 담보 요인이 높다. 토큰 잔액의 기초가 되는 계정 가치와 담보 요소를 곱한 값은 사용자의 대출능력과 같다. 사용자는 자신의 대출능력까지 최대한 대출받을 수 있지만, 능력 이상으로 대출 자산의 총 가치를 높이는 어떠한 조치도 취할 수 없다. 이는 프로토콜을 채무불이행 위험으로부터 보호한다.
  • 위험 및 청산 : 계정의 대출 대금의 가치가 대출능력을 초과하는 경우, 대출금의 일부는 현재 시장가격에서 청산 할인을 뺀 금액으로 사용자의 c담보를 대가로 미결제 대출금의 일부가 상환될 수 있다. 이는 대출 업체의 노출을 줄이고 프로토콜의 위험을 제거하기 위해서 신속하게 개입할 수 있는 중간자의 생태계를 의미한다. 마감할 수 있는 적격 비율, 즉 근접 요인은 상환 가능한 대출 자산의 일부이며 범위는 0에서 1까지이다. 사용자의 대출이 대출능력보다 적을 때까지 청산 절차는 계속해서 호출될 수 있다. 대출된 자산을 소유한 이더리움 주소는 청산 기능을 발동하여 차용인의 c토큰을 담보로 자산을 교환할 수 있다. 사용자, 자산, 가격 모두 컴파운드 프로토콜에 포함되어 있기 때문에 청산은 마찰이 없고 외부 시스템이나 주문서에 의존하지 않는다.
  • 사용 사례 : 포트폴리오를 판매하거나 재배치하지 않고 새로운 자산을 원활하게 보유할 수 있는 능력은 디앱 소비자, 거래자 및 개발자에게 다음과 같은 새로운 기능을 제공한다.
  1. 주문을 기다리거나 오프체인 행동을 요구하지 않고도 디앱은 골렘 네트워크에서 컴퓨팅파워를 구매하는 등 이더리움 생태계에서 사용할 토큰을 빌릴 수 있다.
  2. 거래자는 기존 포트폴리오를 담보로 이더를 빌려 새로운 ICO 투자에 자금을 조달할 수 있다.
  3. 거래자는 토큰을 빌려서 거래소에 보내고 판매할 수 있으며, 판매 시 차익을 얻을 수 있다.[1]

이자율 모델[편집]

컴파운드 프로토콜은 개별 공급자나 차입자가 조건과 금리에 대해 협상을 해야 하는 것이 아니라, 공급 및 수요에 근거하여 각 머니마켓에서 이자율 균형을 달성하는 이자율 모델을 활용한다. 경제이론에 따르면 금리는 수요의 함수로 증가해야 하고, 수요가 낮을 때는 금리가 낮아야 하며, 수요가 많을 때는 반대로 상승해야 한다. 각 시장의 사용률 U는 단일 변수로 소유와 공급을 통합한다.


수요곡선은 거버넌스를 통해 체계화되어 활용 함수로 표현된다. 예를 들어, 대출금리는 다음과 유사할 수 있다.


공급 업체가 벌어들인 금리는 암묵적인 것이며, 대출금리와 이용률을 곱한 값과 같다. 컴파운드 프로토콜은 유동성을 보장하지 않는 대신, 유동성 인센티브 구조를 채택하고 있다. 금리 모델에 의존하여 인센티브를 제공하는 것이다. 자산에 대한 수요가 극심할 때, 프로토콜의 유동성 즉 인출 또는 대출 가능한 토큰의 유동성이 감소한다. 이러한 상황이 발생하면 금리가 상승하고 공급을 장려하고 대출을 억제한다.[1]

구현 및 구조[편집]

핵심적으로 컴파운드 머니마켓은 이더리움 계정이 자산을 공급하거나 빌리면서 시간의 함수인 이자를 계산할 수 있도록 하는 원장이다. 이 프로토콜의 스마트 계약은 공개적으로 이용할 수 있으며, 기계, 디앱 및 사용자를 위해 무료로 사용할 수 있다.

c토큰 스마트 계약[편집]

각 머니마켓은 ERC-20 토큰 사양을 구현하는 스마트 계약으로 구성된다. 사용자 잔액은 c토큰 잔액으로 표시되며, 사용자는 시장에 자산을 공급하여 c토큰을 민트하거나 기본 자산으로 c토큰을 상환할 수 있다. c토큰과 기초자산 간의 가격 즉, 교환율은 시간이 지남에 따라 증가하며, 자산의 차입자에 의해 이자가 발생하므로 다음과 같다.[1]

        

시장의 총 대출 잔고가 증가함에 따라 대출이자 발생의 함수로 c토큰과 기초 자산 간의 환율이 상승한다.

c토큰 스마트 계약 기능의 ABI 및 설명
ABI 설 명
mint(uint256 amountUnderlying) 기본 자산을 시장으로 이전하고 msg.sender의 c토큰 잔액을 업데이트한다.
redeem(uint256 amount)
redeemUnderlying(uint256
amountUnderlying)
기본 자산을 시장 밖으로 이전하고 msg.sender의 c토큰 잔액을 업데이트한다.
borrow(uint amount) msg.sender 담보 가치를 점검하고, 충분할 경우 기초 자산을 시장에서
msg.sender로 이전하고 msg.sender의 차입 잔고를 업데이트한다.
repayBorrow(uint amount)
repayBorrowBehalf(address
account, uint amount)
기초 자산을 시장으로 이전하고, 차용자의 차입 잔고를 업데이트한다.
liquidate(address borrower,
address collateralAsset, uint
closeAmount)
기본 자산을 시장으로 이전하고, 차용자의 차입 잔고를 업데이트 한 다음,
c토큰 자료를 차용자에서 msg.sender로 이체한다.

이자율 메커니즘[편집]

컴파운드 머니마켓이 1:1매칭 비수탁형대출보다 신속하게 단기 대출에 대한 수요에 대응할 수 있다고 할지라도 여전히 유동성 부족 문제는 일어날 수 있다. 머니마켓 방식의 잠재적 유동성 부족 문제는 1) 머니마켓 내 대출가능한 자금 대비 대출 수요가 월등히 높을 때 2) 이용자가 차입금을 갚지 않거나 담보가 부실화 되어 담보를 통해 원금 회수가 어려운 경우가 빈번히 발생할 때 발생한다. 컴파운드 프로토콜은 머니마켓에서의 유동성 부족을 방지하기 위해 알고리즘에 의한 이자율 조절 메커니즘을 사용한다. 컴파운드 프로토콜은 머니마켓의 암호자산 수요 공급 비율에 맞춰 이자율을 조정하기 위해 Utilization ratio를 사용한다. 사용효율(Utilization ratio)은 ‘현재까지 집행한 대출 액’을 ‘전체 이용가능한 대출액(신용)’으로 나눈 것(Total Debt Balance / Total Available Credit)을 의미한다. 이러한 사용효율값은 머니마켓이 대출을 제공할 수 있는 여력을 나타낸다. 예를 들어, 사용효율값이 높다는 것은 머니마켓에서 제공가능한 대출액에 비해 이미 집행된 대출이 많아 앞으로 가능한 대출이 얼마 안남았음을 의미한다. 따라서 사용효율값이 상승하면 대출이자율 및 예금이자율도 함께 상승한다. 이로 인해 차입자 입장에서는 이자부담이 증가하여 대출금 상환을 앞당기거나 추가 대출수요가 줄 수 있다. 반대로, 자산 제공자입장에는 수익 증대의 기회이기 때문에 보다 많은 암호자산 제공할 수 있다. 결론적으로 컴파운드 프로토콜은 머니마켓 이자율을 조절함으로써 유동성 부족을 방지할 수 있다.[5]

즉, 컴파운드 머니마켓은 모든 차용자에게 균일하게 적용되는 이자율로 정의되며, 이는 시간이 지남에 따라 공급과 수요의 관계가 변화함에 따라 조정된다. 각 머니마켓에 대한 각 이자율의 이력은 이자율이 바뀔 때마다 계산되는 이자율 지수로, 사용자가 자산을 채굴, 상환, 대출, 상환 또는 청산하는 결과로 나타난다. 거래가 발생할 때마다 자산의 이자율 지수를 업데이트하여, 해당 기간의 이자를 로 표시하고, 계산한 이자를 사용하여 이전 지수 이후의 이자를 가중시킨다. 특징적인 것은 이런 과정이 모두 이더리움 네트워크에서 자동으로 이루어지기 때문에 블록 단위로 이자를 받을 수 있다는 것이다. 실제로 예금을 입금하면 1분 동안에도 3~4번 이자가 소량씩 쌓인다. 실시간으로 이자가 붙기 때문에 매 순간 계속해서 예금이 늘어나고, 복리 효과가 일어난다.[6] 블록 당 이자율 사용은 다음과 같다.

    

시장의 총 대출 대금은 마지막 지수 이후에 발생한 이자를 포함하도록 업데이트된다.

    

발생이자의 일부는 0에서 1까지의 범위인 리저프팩터(reserveFactor)에 의해 결정되는 적립금으로 유지된다. 컴파운드에 있는 다른 스테이블 코인과는 달리 테더의 리저브팩터는 0으로 설정되어 있다. 리저브팩터는 대출자가 납입하는 이자 가운데 몇프로를 떼느냐를 결정하는 변수이다. 이렇게 모인 자금은 유동성 보호장치로 사용된다. 예를 들어 테더의 대출 수요는 높은데 테더를 공급하는 사람은 한 명도 없다고 가정했을 때, 이런 상황에서는 누구도 대출을 받지 못하게 된다. 이때 테더 대출 과정에서 미리 떼어놓은 보유금이 있다면 대출 수요를 일시적으로 충족시킬 수 있게 된다.[7]

      

차용자 메커니즘[편집]

발생이자를 포함한 차용자의 잔액은 단순히 사용자의 잔액이 마지막으로 체크포인트되었을 때 현재의 지수를 지수로 나눈 비율이다. c토큰의 각 차입자 주소의 잔액은 계정 체크포인트로 저장된다. 계정 체크 포인트는 솔리디티 투플(tuple) (uint amount)이다. 이 투플은 해당 계정에 마지막으로 이자를 적용한 시점의 잔액을 설명한다.[1]

차입[편집]

컴파운드에 충분한 잔액이 있는 차입을 원하는 사용자는 해당 cToken 계약에 따라 차입금(입금 금액)을 호출할 수 있다. 이 함수콜은 사용자의 계좌 가치를 확인하고 충분한 담보가 주어지면 사용자의 차용 잔고를 업데이트하고, 토큰을 사용자의 이더리움 주소로 이전하며, 머니마켓의 변동금리를 업데이트한다. 차입금은 잔액 이자와 정확히 동일한 방식으로 계산되었다. 차용인은 미결제 잔액을 상환하는 (uint amount)를 호출하여 언제든지 미상환 대출금을 상환할 권리가 있다.[1]

청산[편집]

컴파운드 프로토콜은 최소 담보대출비율(Collateral Ratio)을 맞추지 못하는 이용자 계정의 담보를 청산함으로써 담보 부실화로 인한 원금 손실을 방지하고자 한다. 담보대출비율은 담보물의 가격과 대출금액의 비율을 의미한다. 예를 들어, 컴파운드에서 요구하는 최소 담보대출비율은 150%이다. 따라서 컴파운드 머니마켓에서 100ETH를 차입하고자 하는 이용자는 최소 150ETH 상당의 다른 암호자산을 담보로 제공하여야 한다. 이처럼 컴파운드 프로토콜에서 담보자산을 차입하는 자산의 가치보다 더 많이 요구하는 이유는 차입자가 원금을 갚지 못하더라도 담보를 청산함으로써 원금을 회수할 수 있게 하기 위함이다. 컴파운드 프로토콜에서는 담보자산과 대출하고자 하는 자산의 현재 가격 및 교환비율을 관리하기 위해 가격 오라클을 운영하고 있다. 위원회로 구성된 가격 오라클은 상위 10개 거래소로부터 가격 정보를 가져와 자산의 가치를 결정한다. 예를 들어, 이용자가 베이직어텐션토큰(BAT)을 담보로 2ETH를 빌리고자 한다. 가격 오라클을 통해 현재 1BAT가 $0.2이고, 1ETH가 $150로 정해짐에 따라 이용자는 차입금($300)의 1.5배($450)인 2,250BAT를 담보로 제공해야 한다.

담보자산의 가치 하락 혹은 차입한 자산의 가치 상승은 담보부실화를 가져와 담보를 청산하더라도 원금을 회수하기 어려워진다. 따라서 컴파운드 프로토콜에서는 담보가치가 최소담보대출비율을 맞추지 못하는 계정을 빠르게 파악함으로써 해당 계정의 담보부실화를 방지하고자 한다. 이를 위해 컴파운드 프로토콜은 ‘계정 유동성’을 매번 체크한다. 계정 유동성이란 이용자가 컴파운드 프로토콜에 제공한 전체 자산에서 차입금에 담보대출비율(1.5)를 곱한 값을 뺀 값을 의미한다. 계정 유동성이 0이라는 것은 현재 이용자가 제공한 자산이 정확히 최소담보대출비율을 맞추고 있음을 의미한다. 따라서 계정 유동성이 적자인 계정은 최소담보대출비율을 맞추지 못한 것이기 때문에 추가로 담보를 제공해야 하거나 현재 제공되어져 있는 담보를 청산하여 차입액을 갚아야 한다. 계정 유동성이 적자로 전환되면 컴파운드 프로토콜은 해당 계정의 담보 일부를 5% 할인된 가격으로 처분하여 차입금 일부를 상환함으로써 다시 최소담보대출비율 수준으로 회복시켜준다.[5]

가격 오라클[편집]

가격 오라클(price oracle)은 중앙화된 거래소의 가격 정보를 탈중앙화된 대출 플랫폼에 제공하는 개념으로, 컴파운드는 이 시스템을 활용해 가격이 낮게 설정되면 자산을 자동으로 청산한다.[8] 가격 오라클은 지원되는 각 자산의 현재 환율을 유지하며, 컴파운드 프로토콜은 자산 가치를 상위 10개 암호화폐 거래소의 가격을 수집하는 방법으로 위원회에 자산의 가치를 설정할 수 있는 권한을 위임한다. 이 환율은 대출 능력 및 담보 요건을 결정하는 데 사용되며, 계정과 동등한 가치를 계산해야 하는 모든 기능에 사용된다.[1]

관리자[편집]

컴파운드 프로토콜은 기본적으로 특정 토큰을 지원하지 않는다. 대신 시장은 화이트리스트에 있어야 한다. 이는 사용자가 자산과 상호작용을 시작할 수 있도록 하는 관리기능인 서포트마켓(supportMarket) 즉, 주소 시장, 주소 금리 모델을 통해 수행된다. 자산을 빌리기 위해서는 가격 오라클(Price Oracle)의 유효한 가격이 있어야 하며, 자산을 담보로 사용하려면 유효한 가격과 담보 팩터가 있어야 한다. 각 함수 호출은 컴트롤러(comptroller)라고 하는 정책 계층을 통해 검증된다. 이 계약은 사용자 조치를 진행하기 전에 담보 및 유동성을 검증한다.[1]

거버넌스[편집]

컴파운드는 중앙 집중식 프로토콜 제어(자산당 이자율 모델 선택 등)로 작할 것이며, 시간이 지남에 따라 커뮤니티 및 이해관계자의 통제로 전환된다. 프로토콜의 다음 권한은 관리자가 제어한다.

  • 새로운 c토큰 시장을 상장하는 능력
  • 시장별 금리 모델을 업데이트하는 기능
  • 오라클 주소를 업데이트하는 기능
  • c토큰의 예비금을 철회하는 기능
  • 커뮤니티에 의해 통제되는 다오(DAO)와 같은 새로운 관리자를 선택할 수있는 능력[1]

동영상[편집]

각주[편집]

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 컴파운드 (암호화폐) 문서는 암호화폐 종류에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.