블록체인6기 주병현 RSS 태그 관리 글쓰기 방명록
uniswap docs (5)
2023-03-20 01:28:13

보호글입니다.
비밀번호를 입력하셔야 내용을 보실 수 있습니다.


2023-03-19 17:38:39

보호글입니다.
비밀번호를 입력하셔야 내용을 보실 수 있습니다.


2023-03-19 16:20:28

보호글입니다.
비밀번호를 입력하셔야 내용을 보실 수 있습니다.


2023-03-19 15:44:37

보호글입니다.
비밀번호를 입력하셔야 내용을 보실 수 있습니다.


2023-03-19 12:57:27

참고사이트 : Introducing Uniswap V3

개요

유니스왑 v1은 2018년 11월 누구나 자산을 모아 공유 시장 조성 전략에 

참여할 수 있는 일종의 거래소인 자동화된 시장 조성자(AMM)를 위한 개념 증명으로 출시되었습니다.

2020년 5월, 유니스왑 v2는 새로운 기능과 최적화를 도입하여 

AMM 채택이 기하급수적으로 증가할 수 있는 발판을 마련했습니다. 

출시 1년도 채 되지 않아 v2는 1,350억 달러 이상의 거래량을 촉진하며 

세계에서 가장 큰 암호화폐 현물 거래소 중 하나로 자리매김했습니다.

이제 유니스왑은 탈중앙화 금융의 핵심 인프라로서 

개발자, 트레이더, 유동성 공급자가 안전하고 견고한 금융 시장에 

참여할 수 있도록 지원하고 있습니다.

5월 5일에 L1 이더리움 메인넷 출시를 목표로 하고 있으며

곧이어 옵티미즘에 L2가 배포될 예정입니다.

Uniswap V3

유동성이 집중되어 개별 LP가 자본이 할당되는 가격 범위를 세밀하게 제어할 수 있습니다.

개별 포지션이 단일 풀로 합산되어 사용자가 거래할 수 있는 하나의 결합된 곡선을 형성합니다.

다양한 수수료 계층을 통해 LP가 다양한 수준의 위험을 감수하는 것에 대해 적절한 보상을 받을 수 있습니다.

유니스왑 v3는 지금까지 설계된 AMM 중 가장 유연하고 효율적입니다

LP는 유니스왑 v2 대비 최대 4000배의 자본 효율로 유동성을 제공하여 

자본에 대한 더 높은 수익을 얻을 수 있습니다.

자본 효율성은 중앙화된 거래소와 스테이블코인 중심의 AMM을 능가하는 

낮은 손실률의 거래 체결을 위한 기반을 마련합니다.

LP는 선호 자산에 대한 노출을 크게 늘리고 하방 리스크를 줄일 수 있습니다.

LP는 시장가보다 완전히 높거나 낮은 가격대에 유동성을 추가하여 

한 자산을 다른 자산에 매도할 수 있으며, 

이는 부드러운 곡선을 따라 체결되는 수수료 수익 제한 주문에 근접합니다.

 

이제 유니스왑의 오라클을 훨씬 더 쉽고 저렴하게 통합할 수 있습니다. 

V3 오라클은 지난 ~9일 이내의 모든 기간에 대해 온디맨드 방식으로 

시간 가중 평균 가격(TWAP)을 제공할 수 있습니다. 

따라서 통합자가 이전의 값을 확인할 필요가 없습니다.

이러한 획기적인 설계 개선에도 불구하고 이더리움 메인넷에서 

v3 스왑의 가스 비용은 v2보다 약간 저렴합니다.

 옵티미즘 배포에서 이루어진 거래는 훨씬 더 저렴할 것입니다

유니스왑 v3에 대한 자세한 내용을 읽어보시기 바랍니다. 

더 자세한 기술 개요는 유니스왑 v3 코어 백서

유니스왑 v3 코어 스마트 콘트랙트에서 확인하실 수 있습니다.

집중된 유동성

유니스왑 v2에서 유동성은 0에서 무한대 사이의 모든 가격에 대해 

자산이 예약되어 있는 x*y=k 가격 곡선을 따라 균등하게 분배됩니다. 

대부분의 풀에서 이 유동성의 대부분이 사용되지 않습니다. 

예를 들어, v2 DAI/USDC 쌍은 LP가 가장 많은 거래량을 보고 

결과적으로 가장 많은 수수료를 받을 것으로 예상되는 가격대인 

0.99달러에서 1.01달러 사이의 거래를 위해 자본의 ~0.50%만 보유합니다.

V2 LP는 자본의 일부에 대해서만 수수료를 받으므로, 

두 토큰의 재고를 대량으로 보유함으로써 발생하는 가격 위험("비영구적 손실")을 

적절히 보상하지 못할 수 있습니다. 또한 유동성이 모든 가격대에 걸쳐 얇게 분산되어 있기 때문에 

트레이더는 종종 높은 수준의 손실률을 겪을 수 있습니다.

유니스왑 v3에서 LP는 사용자 지정 가격 범위 내에서 자본을 집중하여 

원하는 가격에 더 많은 양의 유동성을 제공할 수 있습니다. 

이를 통해 LP는 자신의 선호도를 반영한 개별화된 가격 곡선을 구성할 수 있습니다.

 

LP는 단일 풀 내에서 여러 개의 개별 집중 포지션을 결합할 수 있습니다. 

예를 들어, 이더리움/DAI 풀의 LP는 $1,000-$2,000 가격대에 100달러를 할당하고

$1,500-$1,750 가격대에 50달러를 추가로 할당할 수 있습니다.

이를 통해 LP는 자동화된 시장 조성자 또는 활성 호가창의 형태를 대략적으로 예측할 수 있습니다.

사용자는 유동성 공급자당 가스 비용 증가 없이 모든 개별 곡선의 유동성을 

합산하여 거래할 수 있습니다. 특정 가격대에서 징수된 거래 수수료는 

해당 가격대에 기여한 유동성 양에 비례하여 LP가 비례 배분합니다.

자본 효율성

LP는 유동성을 집중함으로써 지정된 가격 범위 내에서 

v2와 동일한 유동성 깊이를 제공하면서 훨씬 적은 자본을 위험에 노출시킬 수 있습니다. 

절약한 자본은 외부에 보유하거나, 다른 자산에 투자하거나, 다른 곳에 예치하거나

지정된 가격 범위 내에서 노출량을 늘려 더 많은 거래 수수료를 받는 데 사용할 수 있습니다.

예를 들어봅시다.

앨리스와 밥은 모두 유니스왑 v3에서 ETH/DAI 풀에 유동성을 제공하고자 합니다. 

둘은 각각 100만 달러를 보유하고 있습니다. 

현재 이더리움의 가격은 1,500 DAI입니다.

앨리스는 유니스왑 v2에서와 마찬가지로 전체 가격 범위에 걸쳐 

자본을 배치하기로 결정합니다. 

그녀는 500,000 DAI와 333.33 ETH(총 100만 달러 상당)를 예치합니다.

대신 밥은 집중 포지션을 생성하여 1,000에서 2,250 사이의 가격 범위 내에서만 예치합니다. 

그는 91,751 DAI와 61.17 ETH를 예치하여 총 약 183,500달러를 예치합니다. 

나머지 81만 6,500달러는 본인이 직접 보유하며 원하는 방식으로 투자합니다.

 

앨리스는 밥보다 5.44배 많은 자본을 예치했지만

이더리움/다이아 가격이 1,000~2,250 범위 내에서 유지되는 한 두 사람은 동일한 수수료를 받습니다.

밥의 사용자 지정 포지션은 유동성에 대한 일종의 손절매(stop-loss) 역할도 합니다. 

이더리움 가격이 0달러로 떨어지면 앨리스와 밥의 유동성은 모두 ETH로 표시됩니다. 

그러나 밥은 159,000달러, 앨리스는 1백만 달러의 손실을 입게 됩니다. 

밥은 추가로 확보한 81만 6,500달러를 사용하여 하방 노출에 대한 위험 

또는 다른 가능한 전략에 투자할 수 있습니다.

자세한 내용은 참고 사이트를 방문해주시길 바랍니다.

유동성 활성화

시장 가격이 LP가 지정한 가격 범위를 벗어나면 해당 유동성은 풀에서 

실질적으로 제거되며 더 이상 수수료를 받을 수 없습니다. 

이 상태에서는 시장 가격이 지정된 가격 범위로 돌아오거나 

현재 가격을 고려하여 범위를 업데이트할 때까지 

LP의 유동성은 두 자산 중 가치가 낮은 자산으로만 구성됩니다.

 

v3에서는 이론적으로 특정 가격대에 유동성이 존재하지 않을 수 있습니다. 

그러나 합리적인 LP는 현재 시장 가격을 반영하여 가격 범위를 지속적으로 조정할 것으로 예상합니다.

범위 주문

V3의 LP 맞춤형 기능은 시장 주문을 보완하는 새로운 주문 기능을 제공하며

저희는 이를 'range order'라고 부릅니다.

LP는 단일 토큰을 현재 가격보다 높거나 낮은 사용자 지정 가격 범위에 예치할 수 있으며

시장 가격이 지정한 범위로 진입하면 부드러운 곡선을 따라

한 자산을 다른 자산으로 매도하고 그 과정에서 스왑 수수료를 받습니다.

좁은 범위로 입금하는 것은 기존 지정가 주문과 비슷하게 작동합니다. 

예를 들어 현재 DAI 가격이 1.001 USDC 미만인 경우 앨리스는 

1.001 - 1.002 DAI/USDC 범위에 1,000만 달러 상당의 DAI를 추가할 수 있습니다.

DAI가 1.002 DAI/USDC 이상으로 거래되면 앨리스의 유동성은 USDC로 완전히 전환됩니다. 

앨리스는 유동성이 1.002 이하에서 거래되기 시작하면 

DAI로 자동 전환되는 것을 피하기 위해 유동성을 인출하거나 

타사 서비스를 사용하여 대신 인출해야 합니다.

완전히 체결된 지정가 주문의 평균 체결 호가는 최소 가격과 최대 가격의 기하평균입니다. 

앨리스의 경우 체결 호가는 1.001499 DAI/USDC로 총 \$1,001,499에 해당합니다. 

이 체결가에는 1.001 - 1.002 DAI/USDC 범위 내에서 

가격이 거래되는 기간 동안 발생하는 추가 스왑 수수료는 포함되지 않습니다.

더 넓은 범위의 지정가 주문은 차익 실현, 저가 매수, 1차 발행 이벤트에 특히 유용할 수 있습니다. 

이후 사용 사례에서 발행자는 단일 자산에 유동성을 예치하고 

토큰을 판매하고자 하는 정확한 가격 범위를 지정할 수 있게 되었습니다.

대체 불가능한 유동성

LP별 맞춤 가격 곡선의 부산물인 유동성 포지션은 더 이상 대체할 수 없으며

핵심 프로토콜에서 ERC20 토큰으로 표시되지 않습니다.

대신 LP 포지션은 대체 불가능한 토큰(NFT)으로 표시됩니다. 

그러나 일반적인 공유 포지션은 주변 계약이나 다른 파트너 프로토콜을 통해 

대체 가능(ERC20)하게 만들 수 있습니다. 

또한 거래 수수료는 더 이상 LP를 대신해 풀에 자동으로 재투자되지 않습니다.

시간이 지남에 따라 점점 더 정교한 전략이 토큰화되어 

LP가 수동적인 사용자 경험을 유지하면서 참여할 수 있게 될 것으로 예상합니다. 

여기에는 멀티 포지션, 시장 가격에 집중하기 위한 

자동 재조정(rebalancing), 수수료 재투자, 대출 등이 포함될 수 있습니다.

유연한 수수료

유니스왑 v3는 LP에게 페어당 0.05%, 0.30%, 1.00%의 세 가지 개별 수수료 등급을 제공합니다. 이러한 다양한 옵션을 통해 LP는 예상되는 페어 변동성에 따라 마진을 조정할 수 있습니다

ETH/DAI와 같이 상관관계가 없는 쌍에서는 LP가 더 많은 위험을 감수하고

반대로 USDC/DAI와 같이 상관관계가 있는 쌍에서는 최소한의 위험을 감수하는 것입니다.

뚜렷한 수수료 계층은 어느 정도의 유동성 세분화로 이어질 수 있지만

대부분의 쌍은 '명백한' 수수료 계층으로 조정될 것이며

이는 표준 시장으로 작용할 것으로 예상합니다.

동종 자산 쌍은 0.05% 수수료 티어에 모이고, 이더리움/다이아몬드와 같은 쌍은

0.30%를 사용할 것으로 예상하며, 이색 자산은 1.00% 스왑 수수료가 더 적절할 수 있습니다.

거버넌스는 필요에 따라 추가 수수료 등급을 추가할 수 있습니다.

유니스왑 v2는 프로토콜 수수료 전환을 도입하여 거버넌스에 따라 

고정 5 베이시스 포인트(LP 수수료의 16.66%) 수수료를 설정할 수 있도록 했습니다. 

유니스왑 v3 프로토콜 수수료는 훨씬 더 유연합니다. 

수수료는 기본적으로 꺼져 있지만, 거버넌스에서 풀 단위로 켜고 

LP 수수료의 10%에서 25% 사이로 설정할 수 있습니다.

향상된 오라클

유니스왑 v2는 시간 가중 평균 가격(TWAP) 오라클을 도입했습니다.

이러한 오라클은 디파이 인프라의 핵심적인 역할을 하며

컴파운드와 리플렉서를 포함한 수십 개의 프로젝트에 통합되었습니다.

V2 오라클은 유니스왑 페어 가격의 누적 합계를 초 단위로 저장하는 방식으로 작동합니다. 

이러한 가격 합계는 기간 시작 시점과 종료 시점에 한 번씩 확인하여 

해당 기간 동안의 정확한 TWAP을 계산할 수 있습니다.

유니스왑 v3는 TWAP 오라클을 크게 개선하여 단 한 번의 온체인 호출로 

지난 9일 이내의 모든 최근 TWAP을 계산할 수 있습니다. 

이는 하나의 누적 합계가 아닌 여러 개의 누적 합계 배열을 저장함으로써 가능합니다.

이러한 과거 가격 누적 기능 덕분에 

단순이동평균(SMA), 지수이동평균(EMA), 이상값 필터링 등을 포함하는 향상된 오라클을 

훨씬 더 쉽고 저렴하게 생성할 수 있습니다.

이러한 주요 개선에도 불구하고 유니스왑 트레이더가 

오라클을 최신 상태로 유지하는 데 드는 가스 비용은 버전 2에 비해 약 50% 감소했습니다. 

외부 스마트 계약에서 TWAP을 계산하는 데 드는 비용도 훨씬 저렴해졌습니다.

감사 및 버그 포상금

저희 팀은 보안을 가장 중요하게 생각하며,

수백 시간의 테스트를 거쳐서야 Uniswap v3를 출시할 수 있었습니다.

  • v3에 대한 보안 프로세스는 다음과 같습니다:
  • Trail of Bits의 전수 감사
  • ABDK의 전수 감사
  • 샘즈썬의 전체 감사(보고서 없음)
  • 엔지니어링 팀의 감사 및 검토 프로세스 자동화된 도구인 에키드나와 맨티코어를 포함한 포괄적인 테스트 스위트

테스트 및 감사 프로세스의 일부로 발견된 주요 버그가 수정되었습니다. 

그러나 유니스왑 v3는 매우 복잡한 프로토콜이므로 

모든 버그가 이미 발견되어 해결되었다고 보장할 수는 없습니다.

공개 버그 바운티는 공개 취약점을 찾기 위해 향후 30일 동안 진행되며

중요한 버그에 대해 최대 50만 달러가 지급됩니다

공개 버그 포상금에 대한 자세한 내용은 여기에서 확인할 수 있습니다.

출시 세부 정보

유니스왑 v3 스마트 콘트랙트는 향후 롭스텐, 린케비, 코반, 괴리 테스트넷에 배포될 예정이며,

개발자들은 공식 출시 전에 프로토콜을 실험해볼 수 있는 시간을 가질 수 있습니다.

유니스왑 v3 코어 저장소에는 프로토콜을 구동하는 필수적인 

저수준 스마트 컨트랙트가 포함되어 있습니다.

유니스왑 v3 핵심 저장소에는 사용자가 핵심 콘트랙트와 쉽게 상호작용할 수 있도록

설계된 스마트 콘트랙트 모음이 포함되어 있습니다.

출시와 함께 유동성 공급자 마이그레이션 포털이 제공될 예정이며, 

이를 통해 v2 LP는 유동성을 새로운 프로토콜로 원활하게 이전할 수 있습니다.

그 동안 완료해야 할 과제가 몇 가지 남아 있습니다:

파트너와 통합은 메인넷 출시를 준비하기 위해 즉시 유니스왑 v3를 기반으로 구축을 시작할 수 있습니다!

 

인터페이스, 분석 사이트, API, 개발자 SDK는 유니스왑 v3와 함께 작동하도록 재설계되고 있습니다.

초기 유니스왑 v3 라우터와 포지션 매니저 계약이 거의 완료되었습니다. 

아직 변경될 수 있지만, 여기에서 확인하실 수 있습니다.

문서, 가이드, 추가 예시가 준비 중입니다.

메인넷 출시 후 유니스왑 랩이 유니스왑 커뮤니티와 함께 

대체 가능한 포지션, 유동성 채굴, 더 복잡한 전략 및 기타 다양한 사용 사례를 지원하기 위한 

추가 인프라를 구축할 예정입니다.