저자: bHeau
출처: bHeau의 뉴스레터
머리말
이전에 P2P, 수수료 없는 자산 교환으로 알려진 NFT 거래소인 SudoSwap은 최근 NFT AMM(Automated Market Maker)을 출시했습니다. 이 움직임은 많은 과대 광고를 불러일으켰지만 약간의 혼란을 야기하기도 했고 사람들로 하여금 "그래서 이것이 또 다른 NFT 시장이 아닌 이유는 무엇입니까?"라는 질문을 하게 만들었습니다.
토론을 시작하기 전에 SudoSwap의 AMM 모델에 대해 다음 사항에 주의해야 합니다.
1. 매수/매도를 위한 즉각적인 유동성
2. 완전한 온체인(중앙 집중식 주문 없음).
3. 때때로 가격이 더 저렴합니다.
단 0.5%의 시장 수수료
로열티 없음(당연히 이것은 다소 논란의 여지가 있음)
애그리게이터는 SudoSwap의 가격을 활용할 수 있으며 SudoSwap에 익숙하지 않은 사용자도 기회가 있을 때 더 나은 가격을 얻을 수 있습니다.
4. 커져가는 매력
아마 트위터에서 들었을거야
몇 가지 인상적인 볼륨: Based Ghouls 730 ETH, Webaverse 755 ETH, CloneX 245 ETH
Dune 에 따르면 총 거래량은 5k+ ETH를 초과합니다.
5. 거래 수수료를 받을 수 있습니다.
6. DCA로 NFT 시리즈 자동 매수/매도 가능
이 글은 4부분으로 나누어져 있습니다:
NFT 교환: 주문서 대 AMM
SudoSwap AMM 아키텍처
개발자 참고 사항
SudoSwap에 대한 생각
NFT 교환: 주문서 대 AMM
OpenSea 및 LooksRare와 같이 과거에 익숙했던 대부분의 NFT 마켓플레이스는 효율적인 가스 거래를 촉진하기 위해 오프체인 주문서에 의존합니다. 이것이 의미하는 바를 이해하는 데 도움이 되도록 다음 예를 살펴보겠습니다.
Bored Ape(BAYC) 1개를 100ETH에 판매하려고 합니다. OpenSea와 같은 거래소에 가서 판매를 위해 나열합니다.
OpenSea를 사용하면 BAYC를 100ETH에 판매하고 싶다는 메시지에 지갑에 서명할 수 있습니다. 분명히 주문이 더 복잡해질 수 있지만 이 예에서는 간단하게 유지하고 너무 자세히 설명하지 않습니다.
서명된 주문은 오프체인 주문서에 저장되고 거래소에서 데이터베이스에 호스팅되며 잠재 구매자가 찾아볼 수 있도록 인터페이스에 표시됩니다(API를 통해 노출됨).
BAYC가 판매되거나 주문을 취소하기로 결정할 때까지 주문이 유지됩니다.
구매: 누군가 귀하의 BAYC를 좋아하고 100 ETH에 구매하기로 결정하고 귀하의 주문(해당 거래소의 오프체인 주문서에서 가져옴)을 받고 거래를 제출하여 이를 채웁니다. 그들은 NFT를 받고 당신은 100 ETH(교환 수수료 + 로열티 수수료 제외)를 받습니다.
취소: 주문을 취소하려면 트랜잭션을 제출해야 합니다. 당신의 주문은 오프체인 오더북에 저장되어 있기 때문에 거래소의 스마트 컨트랙트에 "이봐, 이 주문을 유효하지 않은 것으로 표시하고 싶다. 누군가 주문을 채우려고 하면 t 그들이 그렇게 하도록 두십시오."
이 모델에는 사용자가 NFT를 나열하거나 입찰하기 위해 가스 요금을 지불할 필요가 없다는 점(NFT 이동에 대한 교환 계약을 처음 승인한 후)을 포함하여 몇 가지 장점이 있습니다. 가스 요금은 실행에 대해서만 지불할 수 있습니다. 단점은 일부 개발자가 OpenSea API 키를 얻을 때 겪었던 문제에서 알 수 있듯이 거래소가 전체 주문서를 오프체인에서 호스팅하므로 모든 주문을 받기가 더 어려워질 수 있다는 것입니다.
또 다른 단점은 모든 가격이 "활성화"되어야 한다는 것입니다; "내 첫 번째 NFT가 1 ETH에 팔리면 다음 NFT를 1.3 ETH에 팔아 보세요"와 같은 것을 지정할 수 없습니다. 오더북 기반 거래소에서는 목록을 수동으로 조정해야 합니다(거래소에 개인 키를 제공하고 새 주문을 취소/서명할 만큼 거래소를 신뢰하지 않는 한 - BAYC 보유자가 개인 키를 가지고 있는 경우 거래소는 그들을 위해 이것을 조사하십시오).
SudoSwap은 오프체인 주문서 대신 온체인 AMM 모델을 사용하여 완전히 다른 경로를 취합니다. 주문서 대신 AMM을 사용하여 BAYC 하나를 100 ETH에 판매하는 위와 같은 예를 들어 보겠습니다.
AMM을 통해 100 ETH에 1 BAYC를 판매하려고 합니다. SudoSwap을 선택했습니다.
SudoSwap을 사용하면 NFT를 "풀" 스마트 계약에 예치하고 판매할 가격을 지정할 수 있습니다.
다른 사람들은 풀 계약을 쿼리하여 NFT 가격을 얻을 수 있습니다.
귀하의 NFT는 구입하거나 취소하기로 결정할 때까지 그대로 있습니다.
구매: 누군가 SudoSwap에 와서 BAYC를 구매하려고 합니다. 그들은 그것을 구매하기 위해 트랜잭션을 제출하고 풀에서 제거하고 100 ETH를 제공합니다(마이너스 0.5% 트랜잭션 수수료, 로열티 없음).
취소: 풀에서 NFT를 인출합니다.
AMM 모델에서는 NFT를 나열하기 위해 가스 요금을 지불해야 하지만 모두 체인에 있으며 공개적으로 쿼리할 수 있습니다. 그러나 전반적으로 두 모델은 지금까지 비슷해 보입니다. 그러나 AMM 기반 모델을 사용하면 오더북을 사용하면 할 수 없는 몇 가지 흥미로운 작업을 수행할 수 있습니다. 이를 이해하기 위해 SudoSwap이 실제로 어떻게 작동하는지 살펴보겠습니다.
SudoSwap 아키텍처
Uniswap V2에 익숙한 경우 SudoSwap의 NFT AMM은 대략 "Uniswap V2이지만 동일한 토큰에 대한 여러 사용자 지정 유동성 풀"로 생각할 수 있습니다. 여기서 토큰 = NFT 시리즈, 사용자 지정 유동성 풀 = 다양한 옵션 가격 곡선 및 현물 가격입니다. 이러한 차이점은 NFT와 ERC20의 대체 불가능, 대체 불가능 특성을 고려할 때 의미가 있습니다.
이해가 안 되시면 좀 더 간단하게 설명하려고 노력하고, SudoSwap에서 NFT 시리즈가 어떻게 작동하는지에 집중하겠습니다. Base Ghouls를 예로 사용하겠습니다. SudoSwap에서 Based Ghouls 페이지를 열면 다음이 표시됩니다.
위의 4가지 데이터는 무엇을 의미합니까? "하한 가격"은 얻을 수 있는 가장 저렴한 가격(0.226 ETH)입니다. "최고의 제안"은 0.219이며, 이는 SudoSwap에서 즉시 0.219 ETH에 하나의 Base Ghoul을 판매할 수 있음을 의미합니다(작동 방식은 나중에 설명됨). "Offer TVL"은 SudoSwap 유동성 풀에서 36.23 ETH 상당의 Based Ghouls를 의미하며(다시 설명함), "거래량"은 단순히 지금까지 SudoSwap에서 Based Ghouls의 ETH 거래량을 나타냅니다.
이제 가격 하한선 NFT를 보면 AMM 모델과 오더북 모델의 차이가 분명해지기 시작합니다. 글을 쓰는 시점에 0.226 ETH에 대해 나열된 21개의 기반 구울이 있습니다. 이것은 OpenSea 또는 LooksRare와 매우 다릅니다. 일반적으로 1-3개의 자산이 가격 하한선에 나열되어 있는 것을 볼 수 있습니다.
이 가격 책정의 이유는 SudoSwap에서 거래되는 NFT의 경우 유동성 풀을 통해 구매 및 판매가 이루어지기 때문입니다. 이러한 가격 하한선 자산의 대부분은 동일한 유동성 풀에 있을 수 있으며 가격은 NFT를 구매함에 따라 동적으로 변경됩니다(현재 21개의 가격 하한선 NFT를 각각 0.226의 가격으로 구매하는 것은 불가능합니다).
다시 말하지만 전체 "풀" 상황은 예를 통해 가장 잘 보여줍니다. SudoSwap에는 "토큰", "NFT" 및 "교환"의 세 가지 유형의 유동성 풀이 있습니다. "NFT" 유동성 풀부터 시작하겠습니다. 이 유형의 거래 쌍은 시리즈에서 하나 이상의 NFT를 판매하는 데 사용할 수 있습니다. 저는 Base Ghoul NFT가 없지만 Tubby Cat이 있으므로 Tubby Cat에 대한 NFT 판매 풀을 만들려고 하면 무엇이 표시됩니까?
첫 번째 NFT를 10 ETH("시작 가격" = 10 ETH)에 판매하도록 유동성 풀을 설정했으며 매 판매마다 다음 NFT의 가격이 0.1 ETH("델타 "=0.1 ETH")씩 증가합니다. 즉, 누군가 내 첫 번째 Tubby Cat NFT를 구입하면 10 ETH를 지불하고 두 번째 것을 원하면 10.1 ETH를 지불합니다 — — 앞서 언급했듯이 가격은 NFT가 판매됨에 따라 업데이트됩니다. 또한 델타를 "-0.5"(두 번째 NFT를 9.5 ETH에 판매) 등으로 설정할 수 있습니다.풀 설정 방법에 따라 다릅니다.
각 NFT 시리즈는 여러 개의 풀을 가질 수 있습니다. 이것은 사용자마다 NFT 보유량에 따라 다른 가격과 델타를 원할 수 있다는 점을 고려할 때 의미가 있습니다.
이제 이 모든 것이 여러분에게 몇 가지 질문을 남겼을 것입니다. 다음은 상황을 이해하는 데 도움이 되는 몇 가지 Q&A입니다.
1. 내 NFT를 같은 가격에 팔고 싶다면?
델타를 0으로 설정하면 모든 NFT가 유동성 풀의 시작 가격으로 판매될 수 있습니다.
2. 내가 희귀 NFT를 소유하고 있다면? 가격 하한선 NFT보다 높은 가격으로 판매하려면 어떻게 해야 하나요?
희귀 NFT에 대해 별도의 유동성 풀을 생성하고 가격 하한선 NFT보다 높은 시작 가격을 설정할 수 있습니다.
3. 사람들이 내 수영장에서 구매하는 것을 어떻게 알 수 있습니까?
나는 이것이 특히 좋은 질문이라고 생각합니다. SudoSwap의 스마트 계약은 거래를 안내할 가장 저렴한 풀을 자동으로 찾지 않습니다. 대신 사람들은 두 가지 방법으로 풀에서 구매하는 방법을 알게 됩니다.
그들은 귀하의 NFT를 구매하기를 원하며 이 NFT는 귀하의 풀에서만 나올 수 있으므로 귀하의 풀에서 구매해야 합니다.
그들은 10개의 NFT를 일회성으로 구매할 때 가장 저렴한 가격인 "바닥 청소"를 하고 있으며 귀하의 가격은 시리즈에서 가장 저렴한 10개의 NFT와 일치합니다. 그렇다면 SudoSwap(또는 애그리게이터)은 사용자에게 최상의 가격을 제공하고 풀을 통해 일부 거래를 라우팅하기 위해 모든 시리즈의 가격을 추적하므로 이를 알게 됩니다.
4. NFT를 그냥 파는 대신 사고 싶다면?
NFT를 구매하기 위한 풀("토큰" 풀이라고 함)을 만들고 ETH로 자금을 조달할 수 있습니다. NFT를 구매할 가격과 델타를 설정하여 각 거래 후 제안을 조정할 수 있습니다. 첫 구매 시 5 ETH, 다음 구매 시 델타 -1로 4 ETH를 제공할 수 있습니다. 설정은 NFT 판매를 위한 풀과 매우 유사합니다.
5. SudoSwap에서 즉시 NFT를 판매할 수 있다고 생각했습니까?
가장 높은 입찰 제안을 제공하는 "NFT 구매 풀"("토큰" 풀)에 NFT를 판매하면 됩니다. 0.2 ETH에 대한 제안을 하려면 0.2 ETH가 포함된 풀을 만들고 "이 시리즈의 모든 NFT를 0.2 ETH에 구매하겠습니다"라고 지정하면 됩니다. 그런 다음 누군가가 NFT를 0.2 ETH에 풀에 판매하여 NFT를 제공할 수 있습니다.
6. DCA는 어떻습니까?
DCAing과 유사한 작업을 수행하려는 경우 초기 구매 가격으로 풀을 생성하고 델타를 원하는 방향으로 DCA로 이동할 수 있습니다. 정해진 시간 간격으로 사고 파는 것이 아니라 최소한 정해진 가격으로 사고 파는 것이기 때문에 DCA가 아니라고 말할 수 있습니다. 필요할 경우 구매 사이의 "시간 잠금"을 포함하는 결합 곡선이 향후에 배치될 수 있습니다.
7. 거래 수수료는 어떻게 됩니까?
특정 가격으로 NFT를 구매하고 NFT를 약간 더 낮은 가격으로 판매하는 "거래" 풀을 생성하는 경우 각 거래에 대한 수수료 비율을 지정할 수 있습니다.
개발자 참고 사항
개발자가 아니거나 SudoSwap의 AMM이 하위 수준에서 작동하는 방식에 관심이 없다면 이 섹션을 건너뛰십시오.
뒤에서 SudoSwap의 LSSVMPairFactory 계약은 새 풀(계약 수준에서 "쌍"이라고 함)을 생성하고 있으며, 각 풀은 LSSVMPair라는 이름의 계약이며 풀 생성자가 소유하고 쌍 유형(토큰, NFT , 또는 거래), 결합 곡선 유형(현재 선형 또는 지수만), 현물 가격, 델타 등 그런 다음 자산의 쌍 및 시세를 모니터링할 수 있습니다(아래 그림과 같이 'getBuyNFTQuote'를 호출하여 얻음).
LSSVMRouter 계약은 토큰 승인(승인을 하나의 계약으로 결합) 및 교환에 사용됩니다. 여러 스왑 유형("로버스트" 및 "노멀")이 있으며, 각 스왑 유형은 "슬리피지 또는 빠른 가격 변동으로 인해 이 거래를 실행할 수 없는 경우 어떻게 합니까?"를 처리합니다. 과도한 미끄러짐이 발생하면 유형이 되돌아갑니다. 또한 개발자로서 스왑 기능이 사용되지 않은 토큰의 양을 직접 반환한다는 사실에 감사합니다.
애그리게이터 포괄성, MEV 등과 같은 다양한 이유로 가격을 직접 확인하고 싶을 수 있습니다. 이렇게 하려면 다음을 수행해야 합니다. 모든 풀 추적(LSSVMPairFactory의 NewPair 이벤트를 통해) 풀의 NFT 추적(LSSVMPairFactory의 NFTDeposit 이벤트 또는 풀의 getAllHeldIds 기능을 통해) 풀의 자산 추적( 풀 TokenDeposit 및 TokenWithdrawal 이벤트를 통해) 가격을 가져옵니다(풀의 getBuyNFTQuote 및 getSellNFTQuote 기능을 통해). 잊고 있는 것이 있을지 모르지만 요점은 다음과 같습니다.
SudoSwap에 대한 생각
저는 신제품의 "정신적 모델"을 구축하여 시장 환경에서 어디에 적합한지, 무엇과 비교할 수 있는지 파악하는 것을 좋아합니다. 사실 멘탈모델이 뭔지도 모르고 그냥 최근에 많이 들었는데 제가 하는거랑 비슷하게 들리네요.
SudoSwap을 주문서가 아닌 AMM을 사용하는 NFT 거래소 경쟁자로 생각하는 것이 적절해 보입니다. SudoSwap은 "증가된 가스 요금이지만 완전한 온체인" 대 "신규 사용자에게는 틀림없이 더 복잡하지만 즉각적인 유동성 추가"와 같은 절충안을 만들고 있으며 다양한 상황에서 교환 유형을 선호하는 사용자를 결정하는 것은 사용자에게 달려 있습니다.
또한 많은 NFT 사용자/거래자에게 AMM/DeFi는 관심이 없다는 것을 충분히 이해합니다. 즉, Sudowap은 애그리게이터와의 통합(사실 Flip.xyz에서 직접 하고 있습니다), Sudo의 낮은 거래 수수료 및 일반적으로 바닥 가격에 집중되는 유동성을 통해 더 많은 볼륨을 얻을 수 있는 좋은 위치에 있습니다. 일부 NFT 시리즈의 경우 Sudowap 풀을 통해 배치 트랜잭션의 일부 또는 전부를 라우팅하면 실행 비용이 저렴해지고 사용자는 Sudowap을 배우거나 이해할 필요조차 없습니다.
앞서 언급했듯이 Sudoswap은 거래에 로열티 수수료도 포함하지 않습니다. 흥미로운 선택이며 논쟁을 불러일으켰습니다. "NFT 시리즈는 SudoSwap에서 컬렉션용 LP를 만들고 LP 수수료를 받을 수 있습니다." 일반적으로 "당신은 컬렉션과 재무부를 함정에 빠뜨리고 있습니다"라고 반박합니다. 나는 이것에 대해 확고한 의견을 가지고 있지 않습니다; 어느 쪽(왕족인지 아닌지)이 굴복하는지 또는 컬렉션이 실제로 SudoSwap을 적극적으로 피하려고 하는지를 보는 것은 흥미로울 것입니다.
전반적으로, 새로운 프로토콜 디자인인 NFT AMM이 어느 정도 견인력을 얻고 실제 세계에서 NFT AMM과 주문서 간의 장단점을 보여주는 것을 보는 것은 좋은 일입니다.