
Whirlpool Builder 프로젝트가 시작된 지 2주가 지났고 수많은 해저 활동을 목격했습니다! 🐳
확인하다확인하다!)
지금까지 우리는 많은 수의 응용 프로그램과 혁신적인 아이디어를 선보인 것에 대해 기쁘게 생각합니다. 이 게시물에서는 공동 창립자 Yutaro와의 Q&A에서 Whirlpools 스마트 계약 및 향후 계획을 살펴봅니다!
우편우편。
말하자면, 제쳐두고 ...
Yutaro, 먼저: 우리는 왜 월풀에서 개발합니까?
우리는 월풀의 기본 구조가 솔라나 생태계에서 유동성을 창출하는 주요 방법이 될 것이라고 믿습니다. 월풀은 솔라나에서 지배적인 DEX가 될 것입니다. 지난 6개월 동안 작업한 작업이며 3월에 베타 버전을 출시했습니다.
표준(또는 "일정 부피 제품") 플로우 셀에 비해 월풀 셀의 장점은 무엇입니까?
즉, Vortex Pool은 유동성이 높은 블루칩 토큰(예: SOL 및 USDC)과 롱테일 토큰 모두에 대해 사용자에게 더 나은 거래 경험을 제공합니다.
SOL 및 USDC와 같은 블루칩 토큰을 거래할 때 사용자에게 더 나은 경험을 제공하는 이유는 유동성 공급자가 제공하는 유동성의 양과 거래자가 해당 쌍을 거래하려는 시기를 더 잘 제어할 수 있기 때문입니다. 가장 중요한 것은 이것이 유동성 공급자에게 더 효율적이라는 것입니다. 따라서 전반적으로 더 적은 비용을 할당하여 사용자에게 더 나은 경험을 제공할 수 있습니다.
Whirlpool은 Solana 생태계의 훌륭한 빌딩 블록입니다. 얼마나 견고하고 단일 장애 지점이 없으며 실제로 유지 관리가 거의 필요하지 않습니다. 보다 구체적으로 말하면 극단적인 유동성 이벤트 중에 매개변수를 조정해야 하는지 확인하기 위해 관리 키가 필요하지 않습니다.
Whirlpool은 포크입니까 아니면 기존 스마트 계약의 수정입니까?
Uniswap v3에서 도입된 아이디어에서 영감을 받았지만 수학 라이브러리까지 모든 것이 처음부터 만들어졌습니다. Uniswap v3에 익숙하다면 Solana VM의 설계 철학과 고유한 제약 조건에 따라 몇 가지 주요 차이점이 있지만 작동 방식에 대한 아이디어를 얻을 수 있습니다.
모든 것이 처음부터 시작된 이유 원래 수학 라이브러리는 어떻게 되었습니까?
월풀 스마트 계약에서는 256비트 계산을 수행해야 합니다. Rust는 자체적으로 또는 표준 라이브러리에서만 128비트 수학만 지원합니다. 실제로 Parity라는 Rust로 작성된 Ethereum 클라이언트용으로 작성된 256비트 라이브러리가 있습니다. Parity는 이미 대량 생산 중이므로 그들이 작성한 라이브러리는 안전합니다. 다른 많은 프로젝트에서 이를 사용하지만 사용 시 비용이 매우 많이 든다는 사실을 알게 되었습니다. 따라서 긴 곱셈 또는 긴 나눗셈을 수행하려면 일반적으로 하나의 곱셈 또는 나눗셈을 수행하는 데 10,000개의 컴퓨팅 유닛이 필요합니다. 이제 Solana 버전에 따라 명령 또는 트랜잭션당 최대 200,000개의 컴퓨팅 유닛이 있을 수 있습니다. 기본적으로 소진되기 전에 10틱 순회만 수행할 수 있지만 일반적으로 다른 작업을 위해 일부 예산을 할당해야 합니다.
그래서 우리는 우리가 원하는 만큼 산술을 할 수 없습니다. 우리는 약간의 연구를 수행했고 많은 곱셈과 나눗셈이 최적화되지 않았다는 것을 발견했습니다. 이는 기본적으로 컴퓨터에서 직접 실행할 수 있는 것으로 컴파일되기 때문에 Parity에는 중요하지 않을 수 있습니다. 그리고 우리에게는 Solana 가상 머신에서 실행되어야 합니다. 직접 재구현을 테스트했고 라이브러리를 직접 재구현했을 때 5배 더 저렴하고 5배 더 효율적이라는 사실을 발견했습니다. 그것은 우리에게 흥미로운 우회로였습니다. 256비트 라이브러리는 솔라나랩스 사람들이 작성한 솔라나 라이브러리를 포함해 실제로 많은 사람들이 사용하고 있기 때문에 누구나 사용할 수 있도록 반드시 오픈소스화 하겠습니다.
PDA란 무엇이며 어떻게 "PDA 중심 설계"가 월풀을 더 효율적으로 만들 수 있습니까?
PDA는 솔라나만의 고유한 의미에서 프로그램에서 파생된 주소입니다. Solana의 모든 데이터는 기본적으로 계정 위치에 대한 포인터인 주소와 연결된 계정으로 저장됩니다. 계정에 대해 이 주소를 생성하는 한 가지 방법은 개인 키를 임의로 생성하고 연결된 공개 키를 파생시킨 다음 해당 공개 키를 주소로 사용하는 것입니다. 또 다른 방법은 계정을 생성한 프로그램의 주소에서 파생된 주소를 허용한 다음 일반적으로 프로그램 자체에 정의된 값을 시드할 수 있는 PDA를 사용하는 것입니다.
여기서 핵심은 계정(Solana에서 정렬된 데이터)이 프로그램 자체에 포함되거나 프로그램 자체에 의해 정의된 값에서 파생되도록 허용한다는 것입니다. 우리는 이것을 스마트 계약 구조에서 매우 훌륭하고 깨끗한 속성으로 사용할 수 있습니다.
일반적으로 SOL/USDC 풀이 있다고 가정합니다. SOL/USDC 풀에는 특정 계정이 있습니다. 간단한 방법은 임의의 개인 키로 계정을 생성한 다음 개인 키를 버리고 이 임의의 계정을 얻는 것입니다.
월풀을 사용하면 결정론적 방식으로 프로그램에서 파생할 수 있습니다. 따라서 SOL/USDC 풀 주소는 SOL 및 USDC의 민트 주소를 포함하여 월풀 프로그램에서 파생될 것이라고 말할 수 있습니다. 이를 통해 누군가 월풀 프로그램 주소와 짝을 이룬 민트 주소 이외의 다른 정보 없이 월풀에 있는 모든 쌍의 주소를 결정할 수 있습니다.
이것은 주어진 거래 쌍에 대해 하나의 풀만 있을 수 있다는 불변성을 시행하기 때문에 본질적으로 허가가 없는 풀에 특히 유용합니다. 생성된 모든 풀에 대해 이 중앙 저장소가 실제로 필요하지 않거나 프로그램에서 생성된 계정을 검색할 필요가 없습니다. 정말로 필요한 것은 코인의 민트 주소입니다. 거래를 원하면 교환할 수 있는 풀 주소를 얻습니다.
Whirlpool 스마트 계약을 소스로 제공하는 이유는 무엇입니까?
오픈 소스를 사용하면 개발자, 커뮤니티 구성원 및 기타 모든 사람이 먼저 프로그램을 직접 검토하고 이해하여 이를 기반으로 구축할 수 있습니다.
우리는 월풀을 가장 기본적인 빌딩 블록으로 간주합니다. 그 위에 구축할 수 있는 많은 애플리케이션이 있으며 오픈 소스는 이를 실현하기 위한 첫 번째 단계입니다. 우리는 Kudelski와 Neodyme이 스마트 계약을 감사할 수 있어서 운이 좋았으므로 오픈 소스 계약에 익숙해진 것은 행운입니다.
오픈 소스 SDK에 대해 알려주세요.
알겠습니다. 이것도 공유하게 되어 기쁩니다.
운 좋게도 훌륭한 엔지니어가 몇 명 있었지만 초기 엔지니어의 첫 번째 과제 중 하나는 초기 AMM용 TypeScript SDK를 만드는 것이었습니다. 그는 그것을 훌륭하게 해냈고 사람들이 그것을 얼마나 좋아하고 얼마나 사용하기 쉬운지에 대한 만장일치의 피드백을 보는 것이 좋습니다. 또한 AMM 사용에 관심이 있는 사람들이 더 쉽게 액세스할 수 있도록 함으로써 우리에게 가져올 수 있는 가치를 확인했습니다. 우리는 기본적으로 이를 두 배로 늘렸습니다. 기본적으로 리팩터링된 Whirlpool SDK와 작동 방식에 관한 수많은 문서를 마무리했습니다. Whirlpool 내부는 이전 풀에 비해 더 복잡하기 때문입니다.
거래 확인 논리를 담당하던 우리의 또 다른 엔지니어는 이러한 네트워크 정체 문제를 목격했습니다. 그는 더 깊이 파고들기 시작했고 Solana SDK가 거래를 보내고 확인하는 방식과 관련하여 몇 가지 알려진 문제를 발견했습니다. 이를 위해 그는 매우 유용한 일련의 변경 작업을 수행했습니다. 우리는 앱을 사용하는 동안 앱의 응답성이 극적으로 변하는 것을 보았습니다. 그는 또한 동시에 여러 트랜잭션에 서명하고 전송하는 것이 보다 효율적이 되도록 하는 것과 같은 몇 가지 다른 사항을 추가했습니다. 모든 사람의 네트워크 요청에는 많은 비효율이 있습니다.
이러한 것들은 SDK에도 포함되어 Orca만을 위한 것이 아니라 Solana 생태계의 모든 사람이 사용할 수 있는 일반적인 개선 사항이기도 합니다.
앞으로 몇 달 안에 소용돌이 위에 무엇을 짓고 싶습니까?
아마도 가장 실행 가능한 아이디어로 시작한 다음 반복하거나 좀 더 비현실적인 아이디어에 약간의 시간을 할애할 수 있습니다. 가장 기본적인 것은 본질적으로 SOL/mSOL 풀 및 SOL/stSOL 풀에 대한 자동화된 전략입니다. 이것은 마리네이드와 리도의 약속된 유동성 토큰입니다.
기본적으로 mSOL의 가치는 상당히 예측 가능한 방식으로 시간이 지남에 따라 SOL의 가치에 비해 항상 증가해야 합니다. 이 때문에 월풀에서 유동성을 제공하면 시간이 지남에 따라 점점 더 많은 SOL을 얻게 됩니다. 거래 쌍의 가치가 낮을수록 스테이킹한 SOL이 적어지기 때문입니다.
당신이 할 수 있는 것은 유동성 토큰을 얻기 위해 매리네이드나 리도에 스테이킹할 수 있는 순수한 SOL을 점점 더 많이 얻을 수 있도록 프로세스를 구축하고 다시 풀에 넣을 수 있다는 것입니다. 수익을 극대화하기 위해 항상 최소한의 규모로 유동성을 제공하는 자동화된 방식으로 이를 수행할 수 있습니다. 이것은 비교적 간단한 아이디어처럼 보입니다. 더 큰 규모로 유동성을 공급하거나 수동으로 전환하는 현재의 방식보다 확실히 나을 것입니다.
제가 생각하기에 매우 흥미로운 또 다른 잠재적 솔루션은 대출 계약을 살펴보고 Solend를 예로 들어 보겠습니다. USDC 또는 USDT를 제공하면 토큰을 빌려주기 때문에 약간의 수입을 얻게 됩니다. USDC 또는 USDT를 제공하는 대가로 C라는 토큰을 받게 됩니다. 기본적으로 토큰을 담보로 두는 토큰일 뿐이며 지속적으로 수입을 얻을 수 있습니다.
한 가지 가능한 점은 USDC/USDT 소용돌이 풀 대신 cUSDC/cUSDT 소용돌이 풀을 생성할 수 있다는 것입니다. USDC와 USDT를 거래하려는 사람은 누구나 자동으로 USDC를 거래하는 사람을 cUSDC로 변환하고 풀에 넣고 cUSDT를 돌려받고 한 번의 거래에서 일반 USDT로 분할할 수 있기 때문에 이 풀을 사용할 수 있습니다. 유동성 공급자의 경우 토큰을 빌려 수입을 얻고 거래 수수료도 받습니다.
빌더 프로그램을 시작하는 이유는 무엇입니까?
우리는 이전에 Whirlpool이 Solana 생태계의 핵심 DEX가 될 것이라고 말했습니다. 또한 상당히 유연한 구조이며 다른 사람들이 그 위에 자신의 아이디어를 구축할 수 있는 많은 기회가 있습니다. 그래서 우리는 소용돌이 위에 건물을 짓고자 하는 모든 사람을 격려하고 지원할 빌더 프로그램을 갖게 될 것입니다. 이를 위해 Orca 공급의 일정 비율을 다시 확보할 계획이며 물론 창립자로서 팀 전체가 구축을 원하는 모든 사람을 지원할 것입니다. 우리는 또한 피드백을 제공할 수 있습니다. 나는 무엇을 만들 수 있는지에 대해 점점 더 많은 아이디어를 생각해 낼 수밖에 없다고 생각합니다. 네, 결과가 정말 기대됩니다.
신청에 관심이 있는 신진 건축업자를 위한 조언이 있습니까?
첫 번째는 저희 Discord에서 대화를 나누는 것입니다. 저희는 개발자 지원을 매우 진지하게 생각합니다. 우리는 문서화와 같은 것에 중점을 두지만 직접 이야기하는 것은 제품과 질문에 대해 배울 수 있는 좋은 방법입니다.
제품 아이디어 측면에서 생각해 볼 수 있는 한 가지 방법은 "지속 가능한 혜택을 보다 효율적으로 생성할 수 있도록 구축할 수 있는 것이 있습니까?"입니다.
이전에 생각했던 아이디어처럼: 그들은 이미 존재하는 수율을 더 쉽게 생성할 수 있는 요소를 가지고 있지만 본질적으로 그것을 자동화합니다. 거래가 더 저렴하고 설계할 여지가 더 많기 때문에 특히 솔라나에서 할 일이 많다고 생각합니다. 사람들이 어떤 아이디어를 낼지 기대됩니다.
고마워 유타로!
빌더 프로젝트를 즐기시기 바랍니다.
우편우편. 함께 행복한 발전! 🐳
이 게시물은 OrcaPod의 최근 에피소드에서 수정되었습니다.