반응형
요약
Intro
- 저번 시간에는 DEX의 개념과 예시에 대해 배웠습니다. DEX의 특징으로는 아래와 같았습니다.
- 중개자가 없다 : 은행처럼 중개자가 수수료를 받아가는 방식이 아닌, 스마트 컨트랙트가 직접 상호작용
- 지갑 통합 : DEX라는 거래소에 로그인하는 수단으로 주로 지갑을 사용
- 아시는 분들은 아실 테지만, 블록체인 생태계가 발전하면 자연스럽게 DEX도 같은 정도로 발전합니다. 유동성이 증가하기 때문입니다.
- 따라서 신기술이 가득한 미래에서 살아남기 위해서는 DEX의 원리도 잘 이해할 필요가 있습니다. DEX의 작동 원리에 따라 크게 2가지 종류로 분류하는데요, 오늘은 이 2가지를 알아보고자 합니다.
DEX의 첫 번째 분류 : 오더북 모델(Order Book Model)
- 오더북 모델(OBM, Order Book Model)이란 저희가 전통적으로 알고 있는 주식의 거래 방식과 일치합니다. 구매자가 얼마에 사겠다는 주문과 판매자가 얼마에 팔겠다는 주문을 거래소가 일괄적으로 정리한 후, 일치하는 두 주문을 처리해주는 방식입니다.
- 매수자와 매도자가 각각 얼마에 사고 팔겠다는 기록을 오더북(Orber Book)이라고 합니다. (호가창이라고 하죠?)
- 오더북 모델도 세부 분류가 가능합니다 :
- 온체인 오더북(On-chain Order Book) : 모든 오더가 블록체인에 기록되는 거래. 거래수수료 비싸고 느리다
- 모든 오더를 블록에 넣어 저장하는 형태의 DEX이기 때문에, 블록 형성에 기여하려면 코인을 내야겠죠? 그래서 비쌉니다.
- 또한, 블록을 형성하기 위해서는 완전하다는 검증을 거쳐야하는데, 이 절차 때문에 느리기까지 합니다.
- 그래서 보통 온체인 오더북 방식의 DEX는 비효율적이라는 평가를 받습니다
- 오프체인 오더북(Off-chain Order Book) : 대부분의 오더는 오프체인에 저장하고, 처리만 온체인해서 하는 방식
- 블록체인에서 일을 처리하면 온체인, 블록체인이 아닌 곳에서 일을 처리하면 오프체인이라고 합니다.
- 온체인 오더북 방식과는 다르게, 오더의 저장은 블록에 하지 않기 때문에 더 빠르고 거래수수료도 쌉니다.
- 하지만 모든 오더들이 저장되는 것이 아니니까, 탈중앙화라는 특징을 일부 잃게 되겠죠
-
BTC 가격이 4자리였던 먼 과거, 바이비트 라는 거래소의 오더북입니다. 빨간색이 파는 것, 초록색이 사는 것입니다. 균형가격이 9398.27로 형성되어있네요.
- 온체인 오더북(On-chain Order Book) : 모든 오더가 블록체인에 기록되는 거래. 거래수수료 비싸고 느리다
- Loopring 가 대표적인 OBM DEX의 예시입니다.
- Loopring은 OBM 모델로 작동, 즉 매수 및 매도 주문이 일치하는 것들을 처리해줍니다.
- 이더리움 블록체인을 기반으로 작동합니다.
- 온체인 거래와 관련된 비용 최소화를 위해 오프체인 주문 매칭(off-chain order matching) 기능도 지원합니다.
평범한 CEX랑 그냥 똑같이 생겼죠? OBM DEX는 그냥 CEX와 비슷한데 탈중앙화된 것이라 보시면 됩니다.
- OBM DEX의 유동성은 주로 거래에 참여하는 거래량의 수로 결정될 수밖에 없습니다. 그래서 만일 거래량이 작아서 유동성이 좋지 않은 암호화폐를 OBM DEX가 처리한다면 슬리피지(slippage)가 발생할 수도 있습니다.
- 슬리피지(slippage)란 시장 참가자가 거래하고 싶은 가격으로 딱 버튼을 눌렀을 때, 실제로는 이보다 손해를 보는 가격으로 거래가 체결되어 발생하는 위험을 말합니다.
- 예를 들어, 유동성이 낮은 자산 A가 있다고 가정해봅시다. 거래량 충분하고 유동성이 높으면 호가창이 0.1 단위로 따닥 따닥 있는 존재하는데, 그렇지 않으면 가격차이가 상당히 큰 상태로 호가창이 차게 됩니다. (1,000원, 1,003원, 1,005원 .... 이런 식입니다.) 이런 상황에서 거래가 발생하면 거래되는 가격의 범위가 커지기 떄문에 "매수/매도 스프레드가 급격하게 변한다"고 표현합니다.
- 예를 들어, Apple의 매수/매도 가격이 브로커 인터페이스에서 183.50/183.53로 게시되어 있다고 가정해 보겠습니다. 100주에 대한 시장가 주문이 183.53에 체결됩니다. 여기서 유동성이 작은 상황이라면, 100주의 거래가 발생하기 직전에 바로 매수/매도 스프레드를 183.54/183.57로 오르는 상황이 발생할 수 있고, 이 경우 주문은 183.57에 체결되어 1주당 0.04 또는 100주당 4.00의 마이너스 슬리피지가 발생합니다.
- 특히나 암호화폐 시장은 변동성이 매우 크기 때문에, 슬리피지를 특히 조심해야 합니다.
DEX의 두 번째 분류 : AMM 모델(Automated Market Maker)
- AMM 모델(Automated Market Maker)이란 유동성 풀(LP, Liquidity Pool)과 거래를 처리하는 자동화된 알고리즘을 기반으로 작동하는 모델입니다.
- 유동성 풀(LP)를 이용한다는 것은 구매자가 판매자가 존재하는 것이 아니라 교환 시스템을 제공하는 전당포가 있다고 생각하면 됩니다. 이런 부분에서 오더북 모델과 차이가 있습니다.
- 1장에서 배웠던 것처럼, 유동성 풀을 좋게 하는 데에 기여하는 참여자들에게는 인센티브를 부여합니다.참여자가 AMM 기반 DEX에 자금을 예치하여 유동성 풀을 형성하는, 예금과 비슷한 방식이었습니다.
-
provider들이 token A, token B를 AMM DEX에 예치하여 LP를 만들고, AMM은 이 LP를 이용하여 User에게 거래서비스를 제공합니다.
- AMM은 유동성 풀에 있는 토큰들을 이용하여 정해진 알고리즘에 따라 거래를 처리합니다.
- 정해진 알고리즘을 쓴다, 스마트 컨트랙트를 이용한다, 이는 거의 같은 말인거, 이제 바로 아실 겁니다.
- AMM의 작동 원리를 명확하게 이해하기 위해서, token A와 token B가 있고, A를 이용하여 B를 구매하고 싶은 거래를 하고 싶다고 가정해봅시다.
- step 1. 두 토큰 A/B 가 짝으로 존재하는 유동성 풀(LP)가 존재해야 합니다. provider들에 의해 이미 만들어졌다고 가정합시다.
- step 2. AMM에서 정해진 알고리즘은 $$x * y = k$$ 라는 수학 공식을 이용한다고 가정해봅시다.(거래소마다 다른데, 실제로 초기 버전의 유니스왑은 해당 공식을 사용했다고 합니다.)
- 여기서 $x$는 LP 내에서 token A의 개수, $y$는 LP 내에서 token B의 개수, $k$는 상수입니다.
- 곱셈이 일정하다고 해서 CPMM(Constant Product Market Maker)라고도 불립니다.
- LP가 정해졌다는 말은, $k$가 정해졌다는 말과 같은 말입니다. 만일 provider가 더 추가된다면 token A, token B의 양이 같이 증가하기 때문에 $k$는 증가하는 방향으로 바뀌게 될 것입니다.
- step 3. 만일 우리가 A를 이용해서 B를 구매한다면 유동성 풀이 A를 우리에게서 받고, B를 우리에게 줘야합니다. 즉, LP 입장에서 A의 개수는 증가하고, B의 개수는 감소하겠죠?
- step 4. 핵심은 들어온 A만큼 B를 얼마나 감소시켜 user에게 줄 것인가에 있습니다. 이를 결정하는 것이 거래소가 할 일이죠. 이를 구현하기 위해 처음에 상수 k를 계산한 다음, 저 공식에 따라 $$y = k/x$$ 라는 공식을 통해 얼만큼 user에게 줄지를 계산하는 방식입니다.
- 수학적 원리가 궁금하신 분들은 여기 혹은 여기에서 더 자세하게 알아볼 수 있습니다.
DEX의 세 번째 분류 : 하이브리드형
- 하이브리드 DEX는 말 그대로 오더북 모델과 AMM 방식을 모두 사용하는 DEX입니다.
- 대표적인 예시로는 카이버 네트워크(Kyber Network)가 있습니다.
- AMM 방식은 LP가 부족하게 형성되어 있다면 거래 성사가 어려운 한계점이 있습니다.
- 카이버 네트워크는 더 큰 LP를 마련하기 위해 자체 준비금과 외부 DEX를 포함한 여러 유동성 소스를 스캔하는 등 여러 방식을 총동원하는데, 그 과정에서 오더북 모델을 이용한다고 이해하면 됩니다.
제가 자주 쓰는 DEX : Orca
- AMM 기반 DEX인 Orca를 소개하며 글을 마치겠습니다. 솔라나 네트워크의 첫 번째 AMM DEX 입니다.
- 저는 주로 Orca를 사용하는데, LP도 매우 충분하고 수수료가 매우 저렴하기 때문입니다.
- CEX 대신 DEX를 써야 하는 이유는 당연히 수수료 때문입니다. 매우 크고 복잡한 형태의 거래를 처리하는 것이 아니라면 거래 수수료가 휴지조각 정도입니다. 금액의 크기에 비례해서 수수료가 상승하는 CEX에 비해 이점이 있습니다.(물론 CEX보다 많이 느립니다.)
- Orca는 솔라나 블록체인에서 작동하는 DEX로, 솔라나 블록체인 상의 대부분의 토큰을 거래할 수 있습니다.
- LP 및 AMM 알고리즘으로는 $x*y=k$ 로 일정했던 constant product pool와 stable curve pool을 사용한다고 합니다.
반응형
'I. 블록체인 시작하기 > [4] 덱스(DEX)' 카테고리의 다른 글
1장. 덱스(DEX)란 무엇인가? (0) | 2024.03.17 |
---|