블록체인/디파이 (Defi)

덱스, 자동화 마켓 메이커 (AMM) 방식

개발정리 2024. 6. 5. 22:48

2024년 4월 말 기준 전체 블록체인에서 덱스에 예치되어 있는 돈은 약 30조원이다. 사용량 또한 점차 증가추세이며 이더리움에 이어 아비트럼, 바이낸스 스마트 체인, 솔라나의 점유율이 점차 상승하고 있다.

 

 

...

 

 

메인넷에서 사용되는 가스비 중 얼만큼이 덱스에서 사용되고 있을까

 

- 24.04년 말 유니스왑 한 군데에서 23.7% (1위)

- 스왑 관련 가스비로 세 번째 MEV가 4.3% (3위)

- 덱스 어그리게이터 1inch가 2.6% (5위)

- 바나나건 2.3% (6위)

 

트랜젝션 상당 부분은 덱스에서 일어나고 있다. 

 

 

... 

 

 

2016~2017) 오더북 기반 덱스 출시 

- 거래지연, 기능제한 등 블록체인 환경에서의 제약

- 가스비

- 서로 다른 블록체인의 토큰 거래 어려움

 

2018.11) AMM 기반 덱스 유니스왑 출시 

- 유동성 풀과 수식을 통해 스왑 방식으로 거래하는 것 

- 20년 8월 유니스왑을 포크한 스시스왑이 자체 거버넌스 토큰을 출시 (유니스왑 위협)

- 20년 9월 유니스왑 거버넌스 토큰 UNI 발행

 

- 유동성 풀 기반 거래로 자동화 마켓 메이커(AMM) 개념 도입

- 이 방식은 블록체인의 기본 거래 방식으로 자리 잡음

- 유니스왑을 기준으로 많은 포크가 일어났으며 가장 널리쓰이는 프로토콜이 되었다.

 

2020.01) 커브 출시

- 가격 변동이 유사한 자산 간 스왑에 특화된 모델

- 20년 8월 crv 토큰 출시

 

2022.01) ve(3,3) 스왑모델 제시

- 커브의 ve 토크노믹스와 올림푸스다오의 3,3 을 결합

 

 

...

 

 

AMM (자동화 마켓 메이커)

 

메이커

- 특정 가격에 주문을 걸어 놓은 사용자

 

테이커 

- 오더북에 매도/매수 물량을 체결하는 사용자 

 

AMM 거래 방식을 살펴보자.

1) 두 가지 토큰을 모아 유동성 풀을 만든다.

2) 풀을 만들려면 LP (Liquidity Provider) 유동성 제공자가 있어야 한다.

3) 토큰의 교환 비율을 알고리즘 수식으로 만들어 놓는다.

4) 트레이더는 알고리즘 교환 비율에 따라 풀에서 토큰을 교환해 간다.

5) 알고리즘 수식에 따라 교환 비율이 정해지기 때문에 자동화된 마켓이라 불린다.

6) LP 는 메이커이다. 테이커는 트레이더가 된다. 

 

 

AMM의 핵심은 풀을 어떻게 구성하느냐, 알고리즘 수식이 어떻느냐가 핵심이다.

 

 

...

 

 

스왑은 가격을 기준으로 바꾸는 것이 아닌 맞교환 방식이다.

- 풀에 토큰 A를 넣으면 알고리즘 수식에 따라 B를 받는 구조이다.

 

 

...

 

 

알고리즘 수식은 다양하다.

 

1) CPMM (Constant Product Market Maker)

- 일정한 값 (상수 k)을 유지하는 마켓 메이커 

- x * y = k

- 풀 안에 토큰 두 개(x, y)를 넣고, 두 개의 곱이 일정한 수 (상수 k)를 유지하도록 수식이 만들어지고,

- 이 수식을 기준으로 트레이더는 풀에 있는 토큰을 교환할 수 있다. 

 

예제

x * y = k 이며, k는 일정한 값을 가지는 상수이다.

이 수식으로 풀안에 있는 x, y 토큰을 교환해 갈 수 있음.

트레이더의 차익거래인 아비트라지 활동으로 인해서 결과적으로 풀 안에 x 전체 가치와 y 전체 가치는 동일하게 수렴된다.

 

조건)

- 풀 안에 x, y 각각 2개 예치를 한다면 k는 4이다.

 

상황1) 

- x 가격 상승, y 가격 하락

- k=4

 

- 풀에서는 1:1 비율로 예치되어 있기 때문에 저렴한 y 를 넣고, 비싼 x를 가져갈 것이다.

- 교환 조건은 x * y = k 수식에 따라 이루어지는데, 결과로 x = 1, y = 4가 된다.

- 즉, x 토큰 가치는 y 토큰 가치의 4배

 

상황2) 

- x 가격 하락, y 가격 상승

 

- 트레이더는 저렴한 x를 풀에 넣고, y를 빼갈 것이다. 

- 풀 안에는 x = 4, y = 1 개가 남게된다. 

 

위 상황들을 지표에 점을 찍어 살펴보면 타원 곡선을 이룬다. 

 

결론) 

- 유동성 제공자는 풀에 토큰 두 종류를 예치한다. 알고리즘 수식으로 x*y=k에 따라서 두 토큰을 교환할 수 있다.

- 유동성 제공자 측면에서 이 풀에 얼만큼 예치했는지 비율에 따라서 ERC-20 표준의 LP 토큰을 받는다.

- LP 토큰으로 풀에 예치한 토큰의 비율만큼 인출할 수 있다.

 

 

..

 

 

트레이더와 유동성 제공자 입장 두 가지를 생각해보자.

 

 

트레이더 입장

1) x, y 토큰 교환비는 1:1 이기에 x 토큰 2개로 y 토큰 2개를 얻을것이라 판단.

2) 풀 크기비해 트레이더의 교환 물량이 너무 커서 가격 왜곡이 크게 일어남 

3) 이런 현상을 가격에 영향을 주었다는 말로 Price impact 라고 한다.

 

사용자가 실제로 교환할 때는 다양한 요인이 발생하여 거래 결과로 받는 토큰 비율이 달라질 수 있고 이를 슬리피지라 한다.

- 스왑 사이트는 슬리피지가 일정 범위를 벗어나면 스왑이 일어나지 않도록 설정할 수 있다. 

 

 

유동성 제공자 입장

- 풀 안에 비율에 따라 토큰 전체 가치를 계산해보자. 

1) 스왑 전

- 처음 풀에 넣을 땐 x, y 동일한 가치이다.

- x = 2 (개당 $1), y = 2 (개당 $1) 전체 $4만큼 넣었다. 

 

- 트레이더는 x 를 2개 넣고, y를 하나 빼갔다. 

 

2) 스왑 후

- y는 usdt 이기에 기준이된다. 

- 스왑 후 x = 4, y = 1개가 있다. 

- y 한 개가 x 네 개와 매칭되는 상황이며, y는 $1 이니 x 는 $0.25이다. 

- 스왑 후 풀의 전체 가치는 $2이다. 

 

 

유동성 제공자 입장에서는 처음 풀에 넣을 때 $4 가치만큼 넣었는데 트레이더 스왑 후 풀 가치가 $2 밖에 안되는 상황이다. 이를 비영구적 손실 (impermanent loss) 이라고 부른다. 

 

 

손실이지만 영구적이지 않고 비영구적인 이유는 이 상황에서 풀안의 자산을 인출하면 손실이 확정되지만 인출하지 않고 가만히 냅두어 x와 y의 토큰 비율이 1:1이 되면 풀의 가치가 $4가 된다.

 

 

이를 보완하기 위해 거래자 입장에서는 거래하기 전에 슬리피지 퍼센테이지를 설정하여 스왑이 이루어지지 않게 할 수 있다. 

 

 

유동성 제공자 입장에서는 풀 종류에 따라서 수수료를 변동해서 설정할 수 있다. 일반적으로 교환비 변동이 적은 유동성 풀은 수수료가 낮고 교환비 변동이 큰 것은 높게 설정된다. 

 

 

위 문제를 해결하려면 x 와 y의 예치량을 늘려서 K 값이 커지면 Price impact 가 줄어들어 트레이더 입장에서는 슬리피지가 줄어들고, 유동성 제공자 입장에서도 비영구적 손실을 줄일 수 있다. 

 

 

 

...

 

 

AMM 흐름도

 

1) 유동성 풀 증가

2) 슬리피지 감소

3) (유틸리티 경쟁력이 높아져) 거래량 증가

4) (수수료 증가) 유동성 공급자 수익 확대 

5) 이는 다시 유동성 풀 증가를 의미 

 

 

....

 

 

롱 테일 모델

 

- 덱스에 있는 풀은 대부분 롱테일에 속한다. 

- AMM 방식의 거래는 롱테일에 속하는 자산들에 큰 효용성이 있다. 

- AMM의 경우 풀을 만들어 놓기만 하면 AMM 를 통해 언제든 거래를 할 수 있어 거래 비용이 크게 감소

- 한 편으로는 풀에 자산을 예치해놓아야 하기 때문에 자본 효율성이 떨어진다. 

- 이에 풀에 자산을 에치하고 받는 LP 토큰을 담보로 스테이블 코인을 발행해주는 등의 구조를 이용해 디파이 상품이 나오고 있다. 

 

 

 

....

 

 

정리

 

1) AMM 기반 대표적인 DEX는 유니스왑이다.

2) AMM은 오더북 방식이 아닌 유동성 풀과 수식을 통해 swap 방식으로 거래하는 것을 말한다.

3) AMM (자동화 마켓 메이커) 거래 방식은 아래와 같다.

- 두 가지 토큰을 모아 유동성 풀을 만든다.

- 풀을 만들기 위해 LP (유동성 제공자)가 있어야 한다.

- 알고리즘 교환 비율에 따라 풀에서 토큰을 교환해간다.

- 대표적인 알고리즘은 CPMM (Constant Product Market Maker)이다.

- - x 토큰 * y토큰 = k 상수값을 가지는 알고리즘이다.

- - 아비트리지 활동으로 인해 결과적으로 풀 안에 x 가치와 y 가치는 동일하게 수렴된다.

- LP 는 메이커, 트레이더는 테이커가 된다.

 

4) 트레이더 입장에서 풀에 크기에 비해 교환 물량이 너무 크거나 다양한 변수로 가격 왜곡이 일어난다. 

5) 이와 같이 토큰 비율이 달라질 수 있는데 이를 슬리피지라 한다.

 

6) 유동성 제공자 입장에서는 처음 풀에 넣을때 가치는 $4 인데 트레이더 스왑 후 풀 가치가 $2 밖에 안되는 상황이 될 수 있다.

7) 이를 비영구적 손실 (impermanentloss)이라고 부른다.

 

8) 이러한 현상을 막기위해 결국 유동성 풀이 증가해야 한다. 

유동성 풀 증가 -> 슬리피지 감소 -> 거래량 증가 -> LP 수익 확대 -> 유동성 풀 증가 (선순환)

 

9) 롱테일 모델

- 덱스 풀 대부분은 롱테일이다. 

- AMM 방식의 거래는  롱테일에 속하는 자산들에 큰 효용성이 있다. (거래 비용 감소)

- 하지만 풀에 자산을 예치하기 때문에 자본 효율성이 떨어져 LP 토큰을 담보로 코인을 발행해주는 등 다양한 상품이 나오고 있다.

 

 

'블록체인 > 디파이 (Defi)' 카테고리의 다른 글

덱스, 커브 프로토콜  (0) 2024.06.06
덱스, 유니스왑 토큰과 유니스왑 v3  (1) 2024.06.06
렌딩  (1) 2024.06.04
레이어2 스테이블 코인 (Blast, Ethena)  (0) 2024.06.01
알고리즘 스테이블 코인, 테라  (0) 2024.06.01