파는 사람이 없는데 어떻게 바로 살 수 있을까
거래소에서 코인을 사려면 보통 누군가 그 가격에 팔겠다는 주문을 내놓고 있어야 합니다. 그런데 탈중앙화 거래소(DEX)에서는 상대방 주문이 없어도 언제든 즉시 교환이 됩니다. 그 비밀은 자동화된 마켓메이커(AMM)라는 구조에 있습니다.
이 글은 AMM이 호가창 대신 유동성 풀과 가격 공식으로 거래를 처리하는 원리를 설명합니다. 풀 크기에 따라 같은 주문의 가격 영향이 어떻게 달라지는지 가상의 숫자로 계산하고, 풀에 자산을 넣는 유동성 공급자의 수익과 위험, 거래 전에 확인할 순서도 정리합니다.
호가창 대신 유동성 풀
국제결제은행(BIS)의 분기 리뷰는 중앙화 거래소가 주로 호가창(지정가 주문장)을 쓰는 반면, DeFi에서는 모든 주문을 블록체인 위에서 관리하는 비용이 너무 커서 AMM이라는 다른 방식이 널리 쓰인다고 설명합니다. AMM에서는 거래 상대방이 사람이 아니라 두 자산이 함께 들어 있는 유동성 풀입니다.
가장 널리 알려진 방식은 두 자산 수량의 곱을 일정하게 유지하는 ‘상수곱’ 공식(x × y = k)입니다. 누군가 풀에 A 자산을 넣고 B 자산을 빼가면, 곱이 유지되도록 B의 가격이 자동으로 올라갑니다. 가격은 누가 정하는 것이 아니라 풀에 남은 두 자산의 비율로 정해집니다.
풀 규모가 가격에 미치는 예
아래 표는 1 ETH = 3,000 USDC인 두 가상의 풀에서 똑같이 30,000 USDC어치 ETH를 살 때의 결과입니다. 계산을 단순하게 하기 위해 수수료는 뺐습니다.
| 풀 구성 | 받는 ETH | 평균 매입 가격 | 시작 가격 대비 |
|---|---|---|---|
| 100 ETH + 300,000 USDC | 약 9.091 | 약 3,300 USDC | +10.0% |
| 1,000 ETH + 3,000,000 USDC | 약 9.901 | 약 3,030 USDC | +1.0% |
상수곱 공식에서 거래 후 ETH 수량 = k ÷ 새 USDC 수량입니다. 풀이 10배 크면 같은 주문의 가격 영향은 약 10분의 1로 줄어듭니다.
가격 영향과 슬리피지
위 예시에서 시작 가격과 실제 평균 매입 가격의 차이를 가격 영향(price impact)이라고 합니다. 거래 규모가 풀 크기에 비해 클수록 가격 영향이 커집니다. Uniswap 문서도 스왑 전에 가격 영향을 확인할 수 있고, 거래를 제출한 뒤 실행되기까지 가격이 움직이는 슬리피지를 따로 고려해야 한다고 설명합니다.
가격 영향은 거래 직전에 예측할 수 있는 비용이고, 슬리피지는 그 사이에 다른 거래가 먼저 처리되면서 생기는 추가 변동입니다. 그래서 거래 화면에서는 예상 수령량과 함께, 가격이 불리하게 움직였을 때 최소한 받을 수량(슬리피지 허용 범위)을 설정합니다.
유동성 공급자의 수익
풀에 들어 있는 자산은 유동성 공급자(LP)가 넣은 것입니다. LP는 두 자산을 정해진 비율로 예치하고, 그 대가로 풀에서 일어나는 거래마다 수수료의 일부를 받습니다. 거래가 많고 풀이 작을수록 예치 금액 대비 수수료 수익률이 높아지는 경향이 있습니다.
일부 서비스는 거래 수수료 외에 자체 토큰을 보상으로 추가 지급하기도 합니다. 이 경우 표시 수익률이 매우 높아 보이지만, 그 토큰의 가격이 떨어지면 실제 수익은 빠르게 줄어듭니다. 수익률이 수수료에서 오는지, 토큰 보상에서 오는지 나눠 봐야 합니다.
수익 뒤의 위험
LP에게 가장 잘 알려진 위험은 임퍼머넌트 로스입니다. 두 자산의 상대 가격이 크게 변하면, 풀에 넣어둔 것보다 그냥 들고 있었을 때가 더 나은 결과가 됩니다. 이 외에도 스마트계약의 오류, 가격 정보 조작, 풀에 들어 있는 토큰 자체의 가치 하락 같은 위험이 있습니다.
BIS는 DeFi 서비스가 이름과 달리 소수의 개발자나 토큰 보유자에게 권한이 집중되는 경우가 많다고 지적합니다. 풀의 수수료율이나 계약을 누가 바꿀 수 있는지, 긴급 정지 권한이 있는지도 위험의 일부입니다.
거래 전 확인 순서
AMM에서 교환하거나 유동성을 공급하기 전에 아래 순서로 확인해 보세요.
- 공식 문서에 공개된 풀과 토큰의 계약 주소를 확인하고, 가짜 토큰이 아닌지 대조합니다.
- 풀에 예치된 총 유동성과 내 거래 규모를 비교해 예상 가격 영향을 확인합니다.
- 거래 화면의 예상 수령량, 최소 수령량, 슬리피지 허용 범위를 확인하고 필요 이상으로 넓히지 않습니다.
- 유동성 공급이라면 수익률이 거래 수수료와 토큰 보상 중 어디서 오는지 나눠 봅니다.
- 계약의 감사 보고서, 관리자 권한, 업그레이드 가능 여부를 확인합니다.
AMM이 해결하지 못하는 것
AMM은 상대방 없이 거래를 가능하게 하지만, 유동성이 얕은 풀에서는 큰 가격 영향을 피할 수 없습니다. 같은 자산이라도 풀마다 가격과 깊이가 다르고, 가격 차이를 노리는 차익거래가 끊임없이 일어납니다.
이 글의 풀과 계산은 가상의 예시이며 수수료를 제외했습니다. 실제로 사용할 때는 서비스의 최신 문서와 풀 데이터를 기준 시점과 함께 확인하고, 잃어도 감당할 수 있는 범위에서 시작하는 것이 좋습니다.
