유동성 풀과 AMM: 공식이 가격을 정하는 방식
유동성 풀은 호가창의 모든 매수·매도 호가를 하나의 방정식으로 대체합니다. 이번 강의에서는 실제 숫자로 이 방정식을 풀어 보고, 대규모 거래가 왜 더 나쁜 가격을 받는지 보여 주며, 유동성 공급자가 무엇을 얻고 어떤 위험을 지는지 설명합니다.

배울 내용
- 상수곱 규칙 x × y = k에 따르면 풀의 가격은 두 준비금의 비율이며, 모든 거래가 이 가격을 움직입니다.
- 가격 영향은 풀 깊이 대비 거래 규모가 클수록 커집니다. 풀의 1%에 해당하는 거래는 가격을 약 2% 움직이고, 10%에 해당하는 거래는 20% 넘게 움직입니다.
- 유동성 공급자는 수수료를 벌지만 비영구적 손실에 노출됩니다. 결국 가격이 떨어진 토큰을 더 많이 보유하게 되기 때문입니다. 유동성 공급이 수익을 내려면 수수료가 이 손실을 앞질러야 합니다.
이전 강의에서는 풀의 가격이 준비금의 비율이며 모든 거래가 이를 움직인다고 했습니다. 여기서는 이 두 가지를 모두 성립시키는 규칙과 그로부터 비롯되는 모든 것을 살펴봅니다.
상수곱 규칙
Uniswap이 처음 도입했으며 지금도 가장 널리 쓰이는 AMM 설계는 하나의 값을 고정합니다.
x × y = k
여기서 x는 풀이 보유한 첫 번째 토큰의 준비금, y는 두 번째 토큰의 준비금이며, k는 유동성이 추가되거나 제거될 때만 바뀌는 상수입니다. 거래는 두 값의 곱이 k로 유지되는 한 x와 y를 얼마든지 움직일 수 있습니다.

100 ETH와 300,000 USDC로 이루어진 풀을 예로 들어 보겠습니다. 이때 k = 30,000,000이고 가격은 300,000 ÷ 100 = ETH당 3,000 USDC입니다.
거래 한 건 계산해 보기
30,000 USDC로 ETH를 사려고 합니다.
- 거래 후 풀에는 330,000 USDC가 남습니다.
- k를 일정하게 유지하려면 ETH는 30,000,000 ÷ 330,000 = 90.909 ETH로 줄어야 합니다.
- 받는 수량은 100 − 90.909 = 9.091 ETH입니다.
- 평균 매수가는 30,000 ÷ 9.091 = ETH당 3,300 USDC로, 제시된 3,000보다 10% 불리합니다.
- 풀의 새 가격은 330,000 ÷ 90.909 = 3,630입니다.
풀의 USDC 준비금 중 10%에 해당하는 거래를 했고, 시작 가격 대비 10%의 웃돈을 치렀습니다. 다음 매수자는 3,630부터 시작합니다. 이 웃돈이 가격 영향이며, 수수료가 아니라 곡선 그 자체입니다. 슬리피지 강의에서는 이를 감안해 거래 규모를 정하는 방법을 보여 줍니다.
같은 거래를 열 배 큰 풀(1,000 ETH, 3,000,000 USDC)에서 하면 평균 3,030에 9.901 ETH를 받습니다. 가격 영향은 1%입니다. 깊이가 전부입니다.
수수료
스왑마다 수수료가 붙습니다. 풀에 따라 보통 0.05%에서 1% 사이이며, 투입 토큰에서 떼어 풀에 남겨 둡니다. 유동성이 존재하는 유일한 이유가 바로 수수료입니다. 수수료는 유동성 공급자(LP)에게 지분에 비례해 쌓입니다.
위 거래에서 수수료가 0.3%라면, 스왑이 계산되기 전에 90 USDC가 수수료로 풀에 남습니다. k는 거래가 일어날 때마다 조금씩 커지며, 이것이 LP의 몫이 늘어나는 방식입니다.
유동성 공급자 되기
유동성을 공급하려면 두 토큰을 풀의 현재 비율대로, 예컨대 1 ETH와 3,000 USDC를 예치하고, 자신의 지분을 나타내는 LP 포지션을 받습니다. 모든 수수료에서 지분만큼의 몫을 받습니다. 언제든 인출할 수 있으며, 인출 시에는 그 시점의 준비금에서 자신의 몫을 받습니다.
바로 이 마지막 조건에 함정이 있습니다.
비영구적 손실
중앙화 거래소에서 ETH 가격이 6,000으로 두 배가 됐다고 가정해 봅시다. 차익거래자들은 풀의 가격이 이에 맞춰질 때까지 풀에서 ETH를 사들입니다. 즉 ETH를 빼 가고 USDC를 넣습니다. 이제 풀에는 ETH가 줄고 USDC가 늘었으며, 사용자 지분의 가치는 다음과 같습니다.
| 지갑에 보유 | 풀에 공급 | |
|---|---|---|
| 시작 시점 | 1 ETH + 3,000 USDC = 6,000 | 1 ETH + 3,000 USDC = 6,000 |
| ETH → 6,000 이후 | 1 ETH + 3,000 USDC = **9,000** | 0.707 ETH + 4,243 USDC = **8,485** |
수익은 났지만 그냥 보유했을 때보다 515달러가 적습니다. 이 차이가 비영구적 손실입니다. 풀이 자동으로 오른 토큰을 팔고 떨어진 토큰을 샀기 때문입니다. '비영구적'이라는 말은 가격이 진입 시점으로 되돌아오면 차이가 사라진다는 의미일 뿐입니다. 돌아오지 않으면 손실은 현실이 됩니다.
수수료는 이를 보상하기 위한 것입니다. 수수료 수입이 비영구적 손실을 넘어설 때 유동성 공급은 수익을 냅니다. 거래가 많고 가격 변동이 적은 쌍(스테이블코인 쌍, ETH/stETH)에서는 대개 그렇지만, 변동성이 큰 신규 토큰에서는 그렇지 않은 경우가 많습니다. 이런 토큰의 LP는 높은 수수료를 벌고도 어느 방향으로든 5배 움직임이 나오면 손실을 봅니다.
집중 유동성
상수곱 곡선은 유동성을 0부터 무한대까지 모든 가격에 분산시키며, 그중 대부분의 가격대에는 결코 도달하지 않습니다. 집중 유동성(Uniswap v3와 수많은 포크)은 LP가 가격 범위, 예컨대 2,800에서 3,200을 선택해 그 범위 안에서 모든 자본이 일하도록 합니다. 범위 안에서는 풀이 훨씬 깊은 상수곱 풀처럼 작동하고, 범위 밖에서는 해당 LP의 포지션이 한 가지 토큰만 보유하게 되며 가격이 돌아올 때까지 아무것도 벌지 못합니다.
트레이더 입장에서는 같은 자본으로 훨씬 좋은 가격을 얻게 됩니다. LP 입장에서는 범위 안에서 수수료 수입이 늘어나는 대신, 범위의 경계에서는 비영구적 손실에 완전히 노출됩니다. 오늘날 대규모 DEX 거래량의 대부분은 집중 유동성 풀을 통해 이루어집니다.
풀 읽는 법
Coinmico가 DEX 거래쌍을 보여 줄 때 중요한 수치는 다음과 같습니다.
- 유동성(TVL) — 두 준비금의 달러 가치입니다. 가격 영향은 이 값에 상대적입니다.
- 거래량 / 유동성 — 풀이 얼마나 활발히 일하는지를 나타냅니다. 하루에 유동성만큼 회전하는 풀은 LP에게 좋은 수익을 주며 실제로 쓰이는 풀이고, 1%에 그치는 풀은 놀고 있는 풀입니다.
- 풀 생성 시점과 생성자 — 한 시간 전에, 그것도 토큰을 만든 주소가 생성한 풀이라면 다다음 강의에서 다루는 러그풀의 전형적인 구도입니다.
DEX 순위는 각 거래소의 모든 풀에서 측정된 스왑 거래량을 합산하며, 코인 페이지에는 개별 풀이 유동성과 함께 나열됩니다.
실전에서의 의미
- 풀의 가격은 준비금의 비율입니다. 내 거래가 그 비율을 바꾸며, 그 변화가 곧 내 비용입니다.
- 유동성 공급은 수수료를 받고 변동성을 파는 일입니다. 거래가 많고 가격 변동이 적은 쌍에서 수익이 납니다.
- 풀은 토큰의 표면 가격이 아니라 유동성과 회전율로 판단하십시오.
이 트랙의 다음 강의
가격 영향은 온체인 거래에서 가장 크면서도 가장 통제하기 쉬운 숨은 비용입니다. 다음 강의에서는 가격 영향을 슬리피지와 구분하고, 허용치 설정을 설명하며, MEV 봇이 이 둘을 어떻게 악용하는지 보여 줍니다.
이 글의 자산
여기의 모든 수치는 Coinmico가 인덱싱하는 거래소와 체인에서 직접 측정한 값입니다. 방법론을 참고하세요.




