SevenX Ventures: Uniswap 성장 역사 - 제로에서 무한으로
이 글은 SevenX 연구팀의 오리지널 콘텐츠로, 학습 및 교류 목적으로만 제공되며, 어떤 투자 참고도 구성하지 않습니다. 인용이 필요할 경우 출처를 명시해 주시기 바랍니다.
원본 영어 보고서는 2023년 10월 SevenX의 Mirror 플랫폼에 게시되었습니다. 더 많은 중국어 투자 연구 콘텐츠는公众号【SevenXVentures】를 통해 확인하시기 바랍니다.
저자: Luke
특별히 Maru Network의 Alex, Uniswap Labs의 Brad, Celer Network의 Dong Mo, Nebra의 Shumo, Hyperoracle의 Suning에게 이 글에 대한 귀중한 논의, 통찰 및 피드백에 감사드립니다.
의심할 여지 없이, Uniswap은 가장 널리 사용되는 탈중앙화 애플리케이션 중 하나입니다. 그것은 끊임없이 혁신적인 솔루션을 탐구하며 산업 규칙을 재정의하고 있습니다. 이 글에서는 Uniswap의 놀라운 발전 여정을 심층적으로 탐구하며, 과거의 제로에서 시작하여 미래에는 무한한 가능성을 지니고 있음을 보여줍니다. Uniswap의 각 버전의 특성을 연구함으로써, 이 글은 그것이 어떻게 다양한 새로운 도전에 효과적으로 대응하고 끊임없이 변화하는 요구에 적응해 왔는지를 밝혀냅니다. 또한, 이 글은 암호화폐의 최신 발전이 어떻게 탈중앙화 거래소(DEX)의 미래를 형성하는지를 탐구합니다. 준비하세요, 제로에서 무한으로의 발전 여정을 맞이할 준비를 하세요.
v0: 개념 증명
Uniswap 이전에 EtherDelta는 유일하게 주목받는 탈중앙화 거래소(DEX)였습니다. 그러나 사용자 경험은 매우 나빴습니다.
많은 업계 리더들(Gnosis의 Alan Lu와 Vitalik)은 자동화된 시장 조성(AMM)의 개념을 제안했습니다. 이는 전통적인 주문서 모델과 비교할 때 체인 상 거래에 대한 대체 방법을 제공합니다.
특징
상수 곱 AMM
Uniswap은 상수 곱 공식(x * y = k)을 사용하여 자산의 가격을 계산합니다. 이 공식에서 x는 거래 자산의 비축, y는 가격 책정 자산의 비축을 나타냅니다. 풀에서 토큰을 인출(구매)할 때, k를 일정하게 유지하기 위해 일정 비율의 금액을 예치(판매)해야 합니다. 풀 내 토큰의 비율은 토큰의 가격을 결정합니다.
다른 AMM은 유동성 곡선을 나타내기 위해 다른 수학 공식을 사용한다는 점도 주목할 만합니다. 예를 들어, Curve의 Stableswap과 Balancer의 가중치 풀입니다.
문제
Uniswap v0는 본질적으로 개념 증명으로, 여전히 해결되지 않은 많은 문제가 존재합니다. 두 가지 주요 문제는 다음과 같습니다:
- 단일 ETH/ERC 20 거래 쌍에만 적합합니다.
- 단일 유동성 제공자(LP)에만 적합합니다.
v1: 기능성 탈중앙화 거래소(DEX)
특징
2018년 11월 2일, Uniswap v1이 메인넷에서 출시되었습니다. 이 버전은 여러 유동성 제공자가 내부 토큰을 사용하여 수수료와 담보를 추적할 수 있도록 지원합니다. 이 버전은 공장 계약을 사용하여 누구나 원주 ETH와 거래할 수 있도록 어떤 토큰이든 추가할 수 있습니다. 이 버전은 함수형 DEX를 제공합니다. 그러나 여전히 해결해야 할 몇 가지 문제가 있습니다.
문제
모든 토큰이 ETH와 쌍으로 거래되기 때문에, 사용자는 단일 거래에서 ETH를 중개로 사용하여 쉽게 어떤 ERC20 토큰을 다른 ERC20 토큰으로 교환할 수 있습니다. 그러나 이 방법에는 단점이 있습니다: DAI/USDT와 같은 자주 사용되는 스테이블코인 교환의 경우, 매번 ETH를 중개로 의존하게 되어 효율성이 떨어집니다. 이 경우, 직접 토큰 쌍이 더 선호됩니다.
v2: 머니 레고 (Money Lego)
2020년 5월, Uniswap v2가 출시되었으며, 이 버전은 Uniswap 프로토콜에 여러 가지 업그레이드를 추가하여 거래의 유연성을 높이고 거래의 가능성을 확장했습니다.
특징
ERC20/ERC20 거래 쌍
Uniswap V2의 주요 차별점은 ERC20 토큰과 다른 ERC20 토큰의 LP 유동성 풀을 추가할 수 있다는 점입니다. 이는 유동성 제공자에게 더 실용적입니다. 이제 그들은 스테이블코인 거래 쌍을 포함하여 더 다양화된 ERC20 토큰 가격 포지션을 유지할 수 있습니다.
가격 오라클
Uniswap v2는 많은 DeFi 애플리케이션에서 사용할 수 있는 체인 상 가격 정보를 제공합니다. 이러한 가격 정보는 조작하기 어렵기 때문에 매우 가치가 있습니다. 이 메커니즘은 블록 종료 시의 가격을 핵심 계약의 누적 가격 변수에 추가하며, 이 변수는 특정 가격이 지속된 시간의 길이에 따라 가중치가 부여됩니다. 이 변수는 본질적으로 계약의 전체 역사에서 매초 Uniswap 가격의 총합을 나타냅니다.
외부 계약은 이 변수를 사용하여 특정 시간 간격 내의 시간 가중 평균 가격(TWAP)을 정확하게 추적할 수 있습니다. 시간 간격의 시작과 끝에서 ERC20 토큰 쌍의 누적 가격을 읽고 두 값의 차이를 계산한 후 이를 시간 간격의 길이로 나누면 해당 특정 기간의 TWAP을 얻을 수 있습니다.
플래시 스왑
Uniswap v2는 또한 AAVE에서 처음 도입된 플래시 스왑을 도입했습니다. 이 기능은 사용자가 어떤 전제 비용도 없이 풀에서 가능한 한 많은 ERC20 토큰을 인출할 수 있도록 허용합니다. 단, 거래 실행이 끝날 때 동등한 가치의 토큰(수수료 포함)을 반환해야 합니다.
플래시 대출 기능은 종종 DeFi 프로토콜에 대한 다양한 공격과 연관되어 악명 높습니다. 그러나 진정한 문제는 플래시 대출이 아니라 프로토콜 내의 기존 취약점입니다. 플래시 대출의 원자성은 일반적으로 풀 간 차익 거래 및 마진 레버리지와 같은 작업과 관련된 초기 자본 요구 사항을 제거합니다.
문제
이 AMM은 혁신적이며 새로운 시장의 거래와 유동성을 촉진하는 데 유리하지만 여전히 비효율성 문제가 존재합니다. 예를 들어, 저변동성 토큰을 처리할 때는 작은 가격 범위 내에서만 유동성이 필요합니다. 그러나 현재의 설계는 모든 가격 범위에 걸쳐 유동성을 고르게 분배합니다.
v3: 자본 효율성
Uniswap v3는 혁신적인 집중 유동성 설계를 채택하여 가장 유연하고 효율적인 AMM이 되기 위해 노력합니다.
특징
집중 유동성 (CL)
Uniswap v2에서 유동성은 x*y=k 가격 곡선을 따라 고르게 분포되어 전체 0에서 무한대 가격 범위에 유동성을 제공합니다. 그러나 대부분의 풀에서는 유동성이 충분히 활용되지 않았습니다.
Uniswap v3에서는 유동성 제공자가 특정 가격 범위에 자본을 집중할 수 있어 예상 가격 아래에서 더 높은 유동성을 얻을 수 있습니다. 이러한 사용자 정의를 통해 유동성 제공자는 자신의 선호에 맞는 개인화된 가격 곡선을 구축할 수 있습니다. 그런 다음 이러한 개별 포지션은 하나의 풀로 집결되어 통합 곡선을 생성하며, 사용자는 이 곡선을 따라 거래할 수 있습니다. 그 결과는 거래자와 유동성 제공자 모두에게 유리합니다: 사용자 정의 범위 내에서 유동성이 고도로 집중되므로 거래자의 슬리피지가 줄어들고, 유동성 제공자는 더 높은 수수료를 얻을 수 있습니다.
집중 유동성은 스테이블코인 거래 쌍(예: 스테이블코인과 유동성 스테이킹 파생 토큰)에 매우 가치가 있습니다. 이러한 자산은 종종 작은 가격 범위 내에서 거래됩니다. 그러나 변동성이 큰 토큰 쌍의 경우, 집중 유동성은 더 발전된 유동성 관리 기술이 필요합니다. 일반 소매 유동성 제공자가 지속적으로 효과적으로 자신의 포지션을 관리하는 것은 도전적일 수 있습니다.
범위 주문
집중 유동성을 통해 이 버전은 시장가 주문을 보완하는 새로운 주문 유형인 범위 주문을 도입했습니다. 유동성 제공자는 사용자 정의 가격 범위 내에서(현재 가격보다 높거나 낮은) 단일 토큰을 예치할 수 있습니다. 시장 가격이 지정된 범위에 들어가면, 자산을 매도하여 다른 자산으로 교환할 수 있으며, 이 과정에서도 거래 수수료를 벌 수 있습니다.
범위 주문의 기능은 "지정가 주문"과 유사하지만 단점은 가역적이라는 점입니다. 가격이 반전되면 주문도 반전됩니다. 그러나 이 과정에서도 여전히 수수료를 벌 수 있습니다. Barry Fried(@BarryFried1)는 이 게시물에서 범위 주문을 사용하는 방법에 대한 자세한 예를 제공합니다.
다양한 수수료 수준
Uniswap v3는 더 이상 단일 수수료 수준을 사용하지 않고, 각 거래 쌍에 대해 세 가지 개별 수수료 수준(0.05%, 0.30% 및 1.00%)을 도입하여 유동성 제공자가 다양한 위험 수준을 감수함으로써 적절한 보상을 받을 수 있도록 합니다.
고급 오라클
Uniswap v3는 가격 오라클을 크게 개선했습니다. 이 버전은 더 이상 단일 가격 누적 변수를 저장하지 않고, 여러 변수를 저장하여 더 쉽게, 더 저렴하게 고급 오라클을 생성할 수 있도록 합니다. 여기에는 단순 이동 평균(SMA), 지수 이동 평균(EMA), 이상치 필터링 등이 포함됩니다.
문제
유연성 부족
집중 유동성과 수수료 수준이 유동성 제공자에게 더 큰 유연성을 제공하고 새로운 전략의 시행을 촉진했지만, Uniswap v3는 AMM과 시장의 빠르게 변화하는 기능과 혁신에 적응하지 못했습니다. TWAP 주문, 지정가 주문, 고급 오라클 및 동적 수수료와 같은 추가 기능을 통합하기 위해서는 핵심 프로토콜을 재구현할 필요가 있습니다.
Uniswap v2에서 처음 도입된 가격 오라클과 같은 특정 기능을 통해 통합자는 탈중앙화된 체인 상 가격 데이터를 활용할 수 있었습니다. 그러나 그 대가는 교환자의 가스 비용 증가와 통합자가 사용자 정의 옵션 부족이었습니다.
유동성 관리의 복잡성
앞서 언급했듯이, 집중 유동성 관리는 특히 변동성이 큰 거래 쌍에 대해 신규 유동성 제공자에게 도전적입니다. 몇 가지 자동 유동성 관리 프로토콜이 이미 존재하지만, 대부분은 고정 자산에 맞게 설계된 간단한 재조정 전략을 사용합니다. 안타깝게도, 변동성이 큰 거래 쌍의 경우 이러한 전략은 종종 비효율적입니다. 블록 시간의 길이, 가스 비용 증가, 헤지 비용 상승이 그 효과를 제한합니다.
또한, 각 유동성 제공자의 집중 유동성 포지션이 다르기 때문에 LP 토큰은 본질적으로 대체 불가능합니다. 이는 비대체 불가능한 토큰(NFT)으로만 표시될 수 있으며, 이는 다른 DeFi 프로토콜과 통합하려는 경우 도전이 됩니다.
많은 훌륭한 프로젝트가 재조정, 화폐 시장 동적 헤지, 영구 계약 및 옵션을 포함한 다양한 전략을 활용하여 이 문제를 해결하기 위해 적극적으로 노력하고 있습니다. Atis Elsts(@atiselsts_eth)는 LP 전략에 관한 훌륭한 일련의 글을 작성했으며, 강력히 추천합니다.
가치 유출
모든 문제 중에서 가치 유출 문제는 가장 중요한 문제입니다. 이 문제는 Uniswap v3에만 국한된 것은 아니지만, 출시 이후 AMM 거래량이 증가하고 채택률이 높아짐에 따라 주목받고 있습니다. 가치 유출은 주로 DEX 시스템에서 발생하며, 형태는 다음과 같습니다:
- 선행 거래 및 샌드위치 공격으로 인해 거래자는 실제로 필요한 것보다 더 높은 슬리피지를 지불하게 됩니다.
- 유동성 제공자는 CEX-DEX 차익 거래를 통해 가치를 잃게 됩니다(상대 손실 재조정이라고도 함).
위의 문제를 해결하기 위해서는 Uniswap v3보다 더 많은 사용자 정의 기능과 복잡한 설계를 제공해야 합니다. 우리는 더 표현력이 풍부하고 강력한 DEX 플랫폼이 필요합니다.
v4: 궁극적인 플랫폼
Uniswap v4는 이전 세대에서 도입된 AMM 모델을 기반으로 구축되었으며, "후크(hook)"를 도입하여 효율적이고 사용자 정의 가능한 궁극적인 DEX 플랫폼이 되는 것을 목표로 합니다.
효율성
싱글톤(Singleton)
Uniswap v3에서는 각 풀을 공장 계약을 통해 개별 계약으로 생성했습니다. 그러나 Uniswap v4에서는 모든 풀이 단일 스마트 계약(싱글톤이라고도 함) 내에서 공존합니다. 이러한 싱글톤 모델은 풀 생성 및 다중 점프 거래와 관련된 비용을 크게 줄입니다.
플래시 회계(Flash Accounting)
Uniswap v4에서는 싱글톤 모델을 활용하여 자산 이체를 최적화하는 플래시 회계를 사용합니다. v3에서는 자산이 매번 교환 후 풀로 이동했지만, v4 시스템은 순 잔액에 따라 이체를 수행하여 회계 비용을 크게 줄입니다. 순간 저장소(EIP-1153에서 제안됨)를 통해 저장 슬롯 설정 및 해제 비용이 더 낮아지며, 플래시 회계가 효과적으로 작동하려면 저장 슬롯이 필수적입니다.
네이티브 ETH
Uniswap v4는 다시 네이티브 ETH 거래에 대한 지원을 도입하여 몇 가지 이점을 제공합니다: 거래자는 더 낮은 가스 비용을 즐길 수 있으며, 더 낮은 이체 비용을 실현하고 추가 포장 비용을 면제받을 수 있습니다.
사용자 정의
후크
후크 계약(또는 후크)은 풀 실행 중 특정 시점에서 미리 정의된 논리를 실행하는 외부 배포형 계약입니다. 이것이 v4가 매우 표현력이 풍부하고 사용자 정의 가능하게 만드는 이유입니다. 후크를 통해 이전에 프로토콜에 내장된 기능(예: 오라클)과 이전에 독립 프로토콜을 통해 구현해야 했던 새로운 기능을 실현할 수 있습니다.
Uniswap v4는 현재 다음 여덟 가지 후크 콜백 함수를 지원합니다:
- beforeInitialize/afterInitialize
- beforeModifyPosition/afterModifyPosition
- beforeSwap/afterSwap
- beforeDonate/afterDonate
아래 그림은 교환 후크의 논리 흐름을 보여줍니다. 교환 실행 전후에 특정 지점에서 사용자 정의 코드를 실행할 수 있는 전용 부울 플래그가 있습니다. 이는 오라클, 동적 수수료 시스템, 경매 및 고급 주문 유형과 같은 고급 기능을 개발하는 기초가 됩니다. 우리는 아래에서 이러한 개념을 더 깊이 탐구할 것입니다.
오라클
이전 버전에서는 오라클이 Uniswap 핵심 프로토콜에 통합되어 있었습니다. 이는 다른 프로토콜과의 통합을 용이하게 하고 통합 비용을 낮추지만, 그 대가는 사용자 정의 옵션 감소와 교환자 비용 증가입니다. 그러나 후크의 도입으로 오라클의 설계 가능성이 크게 확장되었습니다. 이는 조작에 저항하는 오라클(예: 절단 가격 오라클 및 변동성 오라클)을 생성할 기회를 제공합니다. 또한, 이제 누가 오라클 업데이트 비용을 부담할지 사용자 정의할 수 있습니다. 예를 들어, ETH 잔액이 있는 후크 계약을 사용하여 가스 비용을 지불할 수 있으며, 첫 번째 교환자가 비용을 부담하지 않도록 할 수 있습니다(이 방식은 지속 가능하지 않을 수 있습니다). 최적화되었지만, 오라클 설계는 여전히 도전에 직면해 있습니다. 예를 들어, TWAP 오라클은 때때로 조작에 취약하며, 현재 가격에 비해 지연되는 경우가 많습니다.
Uniswap Labs는 절단 가격 오라클이라는 또 다른 흥미로운 가격 오라클을 출시했습니다. 이 오라클은 유동성 풀 내 자산의 기하 평균 가격을 계산하고 단일 블록 내 가격 변동을 제한합니다. 가격을 절단함으로써, 이 체인 상 오라클은 대규모 거래의 가격 영향을 완화하고 조작 시도의 저항력을 강화합니다.
동적 수수료
Uniswap v3는 유동성 제공자가 선택할 수 있는 추가 수수료 수준을 도입했지만, 이러한 수수료 시스템은 여전히 정적이며 현재 시장 상황을 고려하지 않습니다. 따라서 유동성 제공자의 서비스는 충분히 보상받지 못합니다.
Alex Nezlobin(@0x94305)은 이전 블록의 가격 영향을 고려하고 구매자와 판매자에게 서로 다른 수수료 기준을 적용하는 간단하고 효과적인 동적 수수료 시스템을 제안했습니다. 아래 그림과 같이: CEX 가격이 p*로 이동하여 현재 AMM 가격 p_AMM보다 높아지면, 판매 수수료는 감소하고 δ만큼 구매 수수료는 증가합니다. δ의 값은 AMM 가격의 변화에 비례합니다. 이 동적 수수료 시스템의 목적은 차익 거래자와 무지한 자금 흐름을 구분하는 것입니다. 차익 거래 흐름은 가격 변동과 자기 상관관계가 더 클 가능성이 높습니다.
견고한 동적 수수료 시스템을 설계하는 것은 몇 가지 도전을 제기합니다. 한 가지 도전은 CEX 가격, 유동성 깊이 및 변동성과 같은 체인 외 신호를 통합하는 방법입니다. 또한, 주소, 크기 및 실행 시간과 같은 다양한 체인 상 신호는 정보 흐름과 비정보 흐름을 구분하는 데 신뢰할 수 없을 수 있으므로 그 유효성을 평가하기 어렵습니다. 또한, 유동성 제공자의 손실을 제한하고 수수료가 0 이하로 떨어지지 않도록 하는 것도 중요합니다.
경매
후크는 또한 경매를 구현하는 수단으로 사용될 수 있으며, 이는 유동성 제공자에게 가치를 재분배하는 데 도움이 됩니다. 경매는 시간에 따라 사전 경매와 사후 경매로 나눌 수 있습니다.
사전 경매는 경매 블록 이전에 진행됩니다. 이 개념은 MEV 캡처 AMM(McAMM)에 대한 연구 논문에서 처음 제안되었습니다. 이 방법에서는 블록이 경매되기 전에 AMM에서 첫 번째 교환을 수행할 권리가 주어지며, 이후 입찰 가치가 재분배됩니다. 그러나 이 입찰 과정은 본질적으로 옵션 가격 책정과 관련이 있기 때문에 매우 복잡할 수 있습니다. 또한 블록 제안자가 거래를 포함한 블록을 수용할지 여부에 대한 최종 결정권을 가지므로 검열 문제가 발생할 수 있습니다. 입찰 가치의 공정하고 효과적인 분배를 보장하는 것도 복잡한 작업으로 판명되었습니다. 또한, 입찰자가 첫 번째로 교환 권리를 행사할 수 있다는 보장이 없으므로 다른 거래자의 경험이 악화될 수 있습니다.
사후 경매는 변동성이 실현된 후에 진행되며, 이는 CEX 가격이 변경되었지만 후속 블록이 제출되지 않은 상태를 의미합니다. 이러한 경매의 장점은 효율성을 높이지만, 신뢰할 수 있는 제3자 또는 비신뢰 시스템의 체인 외 기반 구조에 의존해야 하므로 도전이 따릅니다. 신뢰할 수 있는 제3자를 사용할 경우 검열 및 입찰 프라이버시 문제에 직면하게 됩니다. 반면, 비신뢰 시스템을 설계하는 것은 훨씬 더 복잡합니다. 사후 경매는 제안자가 입찰자와 협력하여 조작할 수 있는 문제에 직면할 수 있습니다. 예를 들어, 차익 거래를 즉시 제외하는 것입니다. 또한, 입찰, 낙찰자 합의 및 이러한 입찰을 블록 생성자에게 배포하는 과정에서 지연이 발생할 수 있으며, 모든 과정은 후속 블록 제출 전에 완료되어야 합니다. 마지막으로, 이러한 경매에서 충분한 경쟁 조건을 보장하여 충분한 가치를 확보하는 것이 어려울 수 있습니다. Sorella Labs(@SorellaLabs)는 이러한 도전에 대응하는 데 있어 선도적인 역할을 하고 있습니다.
다이아몬드 후크
다이아몬드 프로토콜은 LVR 최소화를 위한 AMM으로 처음 설계되었습니다. 다이아몬드 프로토콜 하에서, 블록 생성자는 다이아몬드 채굴 풀의 외부 시장 가격과 풀 자체 가격 간의 차익 기회를 포착하기 위해 경매를 진행합니다. 이러한 경매의 수익은 다이아몬드 채굴 풀과 블록 생성자 간에 인센티브 호환 방식으로 공유됩니다.
이 글에서 논의된 바와 같이, 다이아몬드 프로토콜의 한 변형은 블록 생성자가 약속한 가격에 따라 블록 종료 가격을 유지하기 위해 담보 풀을 구현하는 것입니다. 충분한 담보가 있을 때만 약속된 가치로 가격을 복원할 수 있습니다. Arrakis(@ArrakisFinance)는 현재 다이아몬드 프로토콜의 저자 중 한 명인 Conor McMenamin(@ConorMcMenamin9)과 협력하여 v4의 후크 계약을 사용하여 이를 구현하는 작업을 진행하고 있습니다.
고급 주문 유형
후크는 또한 거래자의 경험을 크게 향상시키는 더 고급 주문 유형을 지원합니다. 일부 일반적인 주문 유형에는 지정가 주문, 손절매 주문, 이익 실현 주문 및 TWAP이 포함됩니다.
- 지정가 주문
- 거래자는 후크 계약에 체인 상 지정가 주문을 제출할 수 있습니다. 가격이 지정된 최소 변동 가격에 도달하면 주문이 체결됩니다. 그러나 전통 금융(tradfi) 지정가 주문과 비교할 때 이러한 체인 상 지정가 주문에는 명백한 단점이 있습니다. 이는 체인 상 주문이 가스 비용을 발생시키지 않고 취소할 수 없기 때문입니다. 따라서 주문 거래 비율이 낮아지는 문제가 발생합니다.
- 시간 가중 평균 시장 조성자(TWAMM)
- 실행 가능한 해결책 중 하나는 대규모 주문 실행을 촉진하기 위해 시간 가중 평균 시장 조성자(TWAMM)를 구현하는 것입니다. 이 방법은 대규모 주문을 작은 블록으로 나누고, 이를 첫 번째 거래로 실행하도록 보장하여 샌드위치 공격을 방지합니다. 또한, TWAP 주문 수수료를 낮추는 것도 고려할 수 있습니다. 이는 일반적으로 무지한 프로세스를 포함하기 때문입니다. 그러나 그에 따른 도전 과제는 높은 가스 비용과 이러한 비용을 누가 부담해야 하는지를 결정하는 것입니다.
기타 후크
후크를 사용하여 몇 가지 다른 기능을 구현할 수도 있습니다. 다음은 몇 가지 아이디어입니다:
- 초과 범위 유동성을 화폐 시장에 빌려 자본 효율성을 높이는 수익 생성 후크.
- xy=k 유동성 곡선과 집중 유동성을 모두 갖춘 풀.
- 유동성 제공자에게 인출 수수료를 제공하여 즉각적인 유동성 공격을 줄이는 풀.
Suning(@msfew_eth)은 GitHub에서 후크에 대한 몇 가지 기발한 아이디어를 공유했습니다. Aiden(@aiden0x4)은 훌륭한 후크 오픈 디렉토리도 발표했습니다.
zkAMM 및 zkHooks
ZK 협처리기(ZK Coprocessors)는 스마트 계약이 Dune Analytics가 제공하는 데이터 통찰에 접근할 수 있도록 하며, 이는 제로 지식(ZK) 증명 기술의 적용으로 인해 신뢰도를 저하시키지 않습니다. ZK 협처리기의 AMM 설계에서의 응용은 신흥 연구 분야입니다. 후크를 도입함으로써, 이제 제로 지식 증명을 Uniswap v4에 원활하게 통합할 수 있게 되어 zkAMM의 새로운 시대를 열었습니다.
HyperOracle(@HyperOracle)은 Uniswap v2 기반의 zkAMM 구현을 시연했습니다. 여기서 addLiquidity 계산이 체인 외부로 이전되었습니다. 사용자가 유동성을 추가할 때, 토큰 수, 가격 및 LP 토큰 지분을 계산해야 합니다. 이 특정 구현에서 HyperOracle의 zkGraph는 addLiquidity 이벤트를 캡처하고 필요한 계산을 수행하여 증명을 생성하고 게시합니다. zkAMM의 이러한 구현은 증명을 검증하고 사용자에게 LP 토큰을 발행하기 위한 통합 자동화 계층을 포함합니다.
Diego(@0xfuturistic)는 Uniswap v3 기반의 zkAMM(zkUniswap) 구현을 소개했습니다. 여기서 AMM 교환 계산의 일부가 RiscZero(@RiscZero) zkVM으로 이전되었습니다. 사용자가 풀에서 교환을 수행할 때, 교환을 완료하기 위해 여러 매개변수를 계산해야 합니다. 이러한 매개변수에는 교환할 수량, 수수료 및 교환 후 가격이 포함됩니다. 처음에 이 계산은 EVM에서 Solidity 계약을 통해 수행되었습니다. 그러나 새로운 구현에서는 교환 입력이 중계자에 의해 수집되고 계산이 체인 외부에서 수행됩니다. 그런 다음 중계자는 출력과 증명을 게시합니다. AMM은 이 증명을 검증하고 교환을 정산합니다. zkUniswap은 동시 제어를 보장하기 위해 잠금 경매 메커니즘을 구현했습니다. 현재 성능은 EVM과 유사하지만, 배치 교환의 병렬화를 통해 효율성을 크게 향상시킬 수 있습니다.
거래량 증명은 AMM의 또 다른 용도입니다. Brevis(@brevis_zk)는 사용자 역사 거래량에 따라 수수료 환급 후크를 설계할 수 있는 흥미로운 예를 제공했습니다. 이는 중앙화 거래소(CEX)에서 거래량 기반 수수료 환급과 유사합니다. VIP 거래자는 이제 체인 외부에서 월간 거래량을 계산한 다음, 블록체인에 저렴한 제로 지식 증명을 제출하여 VIP 상태를 비동기적으로 검증할 수 있습니다. 검증이 완료되면, 후속 거래는 교환 후 후크를 통해 제로 지식 협처리기로 채워진 "VIP 수수료 수준표"에 접근할 수 있습니다. 이를 통해 적절한 수수료 환급이 자동으로 적용됩니다. Maru Network(@marunetwork)는 현재 ZK 협처리기 네트워크의 초기 용도로 비신뢰 거래량 오라클을 개발하고 있습니다. 비신뢰 거래량 오라클을 구현함으로써, DEX는 공정하고 투명한 방식으로 보상을 분배할 수 있게 됩니다. 이 방법은 유동성과 사용자 활동을 비례적으로 장려하여 긍정적인 피드백 루프 효과를 생성할 수 있습니다. NEBRA(@nebrazkp) UPA(범용 증명 집합)와 같은 제로 지식 증명 집합 서비스를 사용하면 증명 검증 비용을 낮출 수 있으며, NEBRA UPA는 다양한 루프와 당사자의 증명을 단일 증명으로 집합하여 검증 비용을 절감합니다.
결론적으로, zkAMM 개념은 ZK 협처리기 또는 ZK 오라클을 활용하여 EVM에서 계산을 이전하고 체인 상 계산의 증명을 검증하는 것을 포함합니다. 교환 및 유동성 조정과 관련된 계산에 비해 이러한 계산은 훨씬 더 복잡할 수 있습니다. 예를 들어, 이러한 계산은 최근 시장 변동에 따라 동적 수수료를 계산하거나 특정 풀의 역사적 사용자 수를 증명하거나 복잡한 머신 러닝 알고리즘을 사용하여 재조정 전략을 구현하는 것을 포함할 수 있습니다. 무한한 가능성이 있으며, 모든 계산은 결국 O(1) 검증 비용으로 이어지며, 더 이상 EVM 계산 자원의 제한을 받지 않습니다.
v4 도전 과제
Uniswap v4는 AMM 설계 공간에 효율성과 사용자 정의 기능을 가져와 다양한 특성과 기능을 가진 풀을 생성할 수 있도록 지원합니다. 이는 큰 발전이지만, 예상되는 대가는 풀 수의 급증으로 인한 유동성 단편화입니다. 따라서 라우팅도 더 도전적으로 변하고 있습니다.
UniswapX
UniswapX는 라우팅의 복잡성을 제3자 채우는 자의 개방 네트워크에 아웃소싱하여 유동성 단편화 문제를 해결하는 것을 목표로 합니다. 이러한 채우는 자들은 서로 경쟁하며, 체인 상 유동성(예: AMM 풀 또는 자신의 개인 재고)을 사용하여 교환을 수행합니다. 이 설계는 목표 중심으로, 사용자는 원하는 결과를 선언하고 전문가에게 채우기를 의존합니다.
이 채우는 자들은 고급 에이전트로, 고급 라우팅 알고리즘, 높은 계산 능력 및 대량의 금융 자본을 갖추고 있습니다. 그들은 정해진 경매 메커니즘 하에서 서로 경쟁하여 사용자에게 최상의 실행 방법을 제공합니다. 사용자는 가격 최적화를 통해 Uniswap AMM 풀에서 직접 거래하는 것과 최소한 동일한 효과를 보장받을 수 있습니다.
UniswapX 프로토콜의 아키텍처는 다음과 같습니다. 교환자는 Uniswap API를 통해 의도 주문을 제출하며, 그 구조는 Permit2 실행 가능한 체인 외 서명입니다. Permit2는 사용자가 보유한 토큰의 안전한 이전을 보장하는 잘 설계된 모델입니다. 채우는 자들은 다양한 전략을 설계하여 체인 상 또는 체인 외에서 이러한 주문을 완료하기 위해 사용 가능한 모든 유동성 장소를 사용합니다. 마지막으로, 주문 반응기는 UniswapX 주문을 해결합니다. 그들은 특정 유형의 주문을 검증하고, 이를 입력 및 출력으로 해석하며, 채우는 자의 전략에 따라 주문을 실행하고 주문이 성공적으로 수행되었는지 검증하는 역할을 합니다.
목표 중심 설계는 다음과 같은 이점을 제공합니다:
- 더 적합한 가격을 얻기 위해 유동성 출처를 집계합니다.
- 크로스 체인 교환에서도 가스 토큰이 필요하지 않습니다.
- 가격 최적화를 통해 최대 추출 가치를 내부화합니다.
- 거래 실패 시 비용이 발생하지 않습니다.
도전 과제
- 가격 시스템을 허가 없이 운영하도록 하여 유효한 신뢰 시스템을 사용합니다.
- 더 많은 채우는 자들을 유치하여 경쟁력 있고 허가 없는 경매 환경을 보장합니다.
미래: 무한 게임
DEX의 발전은 여기서 멈추지 않습니다. 암호화 기술이 대규모로 보급되기 위해서는 해결해야 할 몇 가지 다른 문제가 있습니다. PropellerHeads(@PropellerSwap)의 Markus Schmitt(@haikane)는 FrontierResearch(@FrontierDotTech)와 협력하여 훌륭한 기사를 작성하여 우수한 DEX의 구성 요소를 깊이 탐구하고 해결해야 할 문제를 명확히 했습니다. 이 기사의 관점에 따르면, 훌륭한 거래소는 다음을 제공해야 합니다:
- 신뢰: 거래 전, 거래 중 및 거래 후 투명성을 보장하고 관리 위험을 최소화합니다.
- 가장 적합한 가격: 지속적으로 가장 적합하거나 경쟁력 있는 가격을 제공합니다.
- 공정성: 주문 남용을 방지하고 모든 사용자가 가격 책정 및 수수료 측면에서 평등한 대우를 받도록 보장합니다.
- 속도 및 가용성: 빠른 거래 처리를 제공하고 높은 가용성을 유지하여 지연 및 불편을 피합니다.
- 정보: 주문 모니터링, 결제 가격 추정 및 지정가 주문 및 슬리피트에 대한 유용한 조언을 제공하여 사용자가 정보에 기반한 결정을 내릴 수 있도록 돕습니다.
- 유동성: 다양한 자산 쌍 간에 강력한 유동성 풀을 보여주어 유리한 가격을 확보하는 데 신뢰를 제공합니다.
DEX의 스마트 계약이 안전하다고 여겨진다면 신뢰를 구축할 수 있습니다. DEX는 사용자의 자산을 보유하지 않습니다. 현재 거래자가 사용할 수 있는 정보는 상당히 광범위합니다. AMM의 허가 없는 특성은 사용자가 어떤 자산 쌍이든 생성하고 거래할 수 있도록 합니다. 그러나 블록체인의 특성으로 인해 항상 가장 적합한 가격, 공정성, 속도 및 가용성을 보장할 수는 없습니다. 가스 비용, 지연된 가격 및 단편화된 유동성이 사용자 경험에 영향을 미칠 수 있습니다.
이러한 문제를 해결하기 위해 L2 및 L2 기반 DEX의 수가 날로 증가하고 있습니다. 또한 라우팅, 주문 배치 및 가격 요청 시스템도 점점 더 복잡해지고 있습니다. 선행 거래를 방지하고 공정한 가치 분배를 보장하기 위해 MEV 인식 채널이 점점 더 많이 사용되고 있습니다. 또한 DEX 사용자의 가치 유출을 최소화하기 위해 주문 흐름 경매 시장을 개발하기 위해 노력하고 있습니다. 후크와 ZK 협처리기의 도입은 AMM의 설계 가능성을 크게 확장하여 더 복잡한 논리와 무거운 계산을 지원하며, 신뢰도를 저하시키지 않습니다.
또한, AMM 기반 프로토콜이 여러 개 존재하여 "머니 레고"를 효과적으로 쌓아올리고 있습니다. 일부 프로토콜은 초보 사용자가 유동성 재조정을 자동화하거나 레버리지 채굴을 수행하도록 돕습니다. 또 다른 프로토콜은 집중 유동성(CL) 포지션을 활용하여 마진 거래, 영구 거래, 옵션 및 구조적 제품을 생성합니다.
AMM은 허가 없는 상장, 수동 유동성 및 거래 용이성 등의 특성으로 인해 기하급수적으로 성장했습니다. 그러나 이러한 편리함은 앞서 논의한 몇 가지 문제를 초래했습니다. Uniswap은 이러한 문제를 해결하고 사용자 경험을 향상시키기 위해 지속적으로 경계를 넘고 있습니다. Dan Robinson(@danrobinson)이 SBC 23 회의에서 언급했듯이, DEX 설계는 무한 게임입니다. 미래에 DEX가 점점 더 보편화됨에 따라 새로운 도전과 문제가 발생할 수 있으며, 그때 혁신적인 솔루션이 필요할 것입니다.