เขียนโดย: Ricky Li, Siddharth Lalwani, Hongxu Yan ที่ Altonomy Ventures
ชื่อเรื่องรอง
โมเดลราคาและค่าคงที่
ผู้ที่เข้าร่วมในกลไกผู้ดูแลสภาพคล่องอัตโนมัติมีสองบทบาทที่แตกต่างกัน: ผู้ให้บริการสภาพคล่อง (LP) และผู้ค้า ผู้ให้บริการสภาพคล่องฝากเงินเข้ากลุ่ม และผู้ค้าแลกเปลี่ยนสกุลเงินหนึ่งจากกลุ่มเป็นโทเค็นอื่น ปัญหาแรกที่โปรโตคอล AMM ต้องแก้ไขคือการตั้งราคาอย่างไร ยกตัวอย่าง two-currency pool เป็นตัวอย่าง นั่นคือ วิธีใช้ปริมาณของโทเค็น 2 (t2) เพื่อแสดงราคาของโทเค็น 1 (t1 ).
สมมติว่าปริมาณของสองสกุลเงินในกลุ่มคือ R1 และ R2 ตามลำดับ เทรดเดอร์ต้องการใช้ Δ2 ปริมาณ t2 เพื่อซื้อ Δ1 ปริมาณ t1 ในการทำธุรกรรม เราสามารถใช้ฟังก์ชันธุรกรรม ψ เพื่ออธิบายโปรโตคอล AMM ซึ่งต้องเป็นไปตามค่าฟังก์ชันก่อนและหลังธุรกรรม ค่าคงที่ แสดงเป็น:
ตามสมการนี้ เราสามารถอนุมาน Δ2 จาก Δ1 (หรือในทางกลับกัน) และการทำธุรกรรมนี้จะส่งผลกระทบต่อราคาในเวลาเดียวกัน เนื่องจากจำนวนโทเค็นทั้งหมดในกลุ่มจะเปลี่ยนแปลงหลังจากการทำธุรกรรม เนื่องจากมีช่องว่างระหว่างราคาธุรกรรมของสมาร์ทพูลและราคาของตลาดอ้างอิงภายนอก arbitrageurs จะยังคงซื้อขายต่อไปจนกว่าส่วนต่างของราคาจะกลับมา AMM ใช้กลไกนี้เพื่อแก้ไขราคาธุรกรรมในพูล ราคาเฉลี่ยต่อธุรกรรมถูกกำหนดเป็น:
คำอธิบายภาพ
ตารางที่ 1 ราคาส่วนเพิ่ม
Uniswap V3
ฟังก์ชันธุรกรรมของ Uniswap กำหนดไว้ดังนี้:
จากนี้สามารถรับค่าคงที่ได้ดังนี้:
การแสดงออกของ Δ2 ได้มาจาก:
ราคาส่วนเพิ่มคือ:
เมื่อ Δ1->0,
ในเวอร์ชั่นใหม่ V3 เนื่องจากความหนาแน่นของสภาพคล่องในช่วงราคาต่างๆ นั้นแตกต่างกัน จึงจำเป็นต้องคำนวณแยกกันสำหรับพื้นที่ขนาดเล็กแต่ละแห่งที่มีความหนาแน่นของสภาพคล่องเท่ากัน เมื่อข้ามขอบเขตของช่วงเวลา จำเป็นต้องมีการคำนวณที่คล้ายกันสำหรับช่วงเวลาถัดไป
Balancer V2
ฟังก์ชันการทำธุรกรรมของ Balancer ถูกกำหนดดังนี้:
จากนี้สามารถรับค่าคงที่ได้ดังนี้:
การแสดงออกของ Δ2 ได้มาจาก:
ราคาส่วนเพิ่มคือ:
เมื่อ Δ1->0,
น้ำหนัก ω1 และ ω2 ยังแสดงถึงสัดส่วนของมูลค่าตลาดรวมของโทเค็นทั้งสอง หากระบุ ω1=ω2=1/2 พูลจะเทียบเท่ากับพูล Uniswap
โดยเฉพาะอย่างยิ่ง Balancer อนุญาตให้มีกลุ่มโทเค็นผสมได้สูงสุด 8 โทเค็น เมื่อมีโทเค็นมากกว่า 2 ประเภท ฟังก์ชันการทำธุรกรรมของมันจะขยายเป็น:
ขั้นตอนการสืบสกุลอื่นๆ สามารถขยายไปยังสถานการณ์หลายเหรียญได้ในทำนองเดียวกัน และข้ามขั้นตอนการรับมาที่นี่
Curve V2
ฟังก์ชันการทำธุรกรรมของโปรโตคอล Curve เป็นการรวมกันเชิงเส้นของฟังก์ชันผลรวมคงที่และฟังก์ชันผลคูณคงที่:
ชื่อเรื่องรอง
ผลกระทบของราคาและการคลาดเคลื่อน
ตามสูตรราคาส่วนเพิ่มที่ได้รับในขั้นตอนที่แล้ว เราสามารถกำหนดผลกระทบด้านราคาของธุรกรรมนี้ได้โดยการเปรียบเทียบการเปลี่ยนแปลงของราคาส่วนเพิ่มก่อนและหลังธุรกรรมเดียว การเปรียบเทียบผลกระทบด้านราคาของโปรโตคอลทั้งสามเราสามารถสรุปได้ดังต่อไปนี้: สมมติว่าโทเค็น 1 จำนวนเท่ากันถูกซื้อขาย พูล Balancer ที่มี ω1 สูงกว่าจะถูกตั้งค่าให้มีผลกระทบด้านราคามากขึ้น ถ้า ω1>1/2 ดังนั้น ผลกระทบด้านราคาจะมากกว่าผลกระทบของธุรกรรมเดียวกันในกลุ่ม Uniswap และในทางกลับกัน และอยู่ใกล้จุดดุลยภาพ (นั่นคือ การเบี่ยงเบนของราคาไม่รุนแรง) Curve V2 มีผลกระทบต่อราคาน้อยที่สุด
ในตัวอย่างต่อไปนี้ เราเปรียบเทียบผลกระทบของราคาธุรกรรมเดียวในสี่กลุ่มที่แตกต่างกัน โดยสมมติว่าจำนวนโทเค็นทั้งหมดในกลุ่มเริ่มต้นคือ R1=R2=10000:
พูล Uniswap V3 ที่มีราคาเริ่มต้นที่ 1
พูล Balancer V2, ω1=0.4, ω2=0.6 ราคาเริ่มต้นคือ 0.666
พูล Balancer V2, ω1=0.6, ω2=0.4 ราคาเริ่มต้นคือ 1.5
พูล Curve V2, α=1, β=3, ราคาเริ่มต้นคือ 1
คำอธิบายภาพ
รูปที่ 1 เส้นกราฟผลกระทบราคา
เห็นได้ชัดว่าสำหรับโทเค็น 1 ที่มีการซื้อขายเท่ากัน Δ1 ลำดับผลกระทบต่อราคาจะเป็นดังนี้: Balancer V2 w1=0.6 > Uniswap V3 > Balancer V2 w1=0.4 > Curve V2
คำอธิบายภาพ
การสูญเสียที่ไม่ถาวร
ตารางที่ 2 การสูญเสียอนิจจัง
สำหรับ Uniswap V3 สภาพคล่องจากผู้ให้บริการรายเดียวจะอยู่ในช่วงปิด เมื่อราคาของ Token ลดลง ความเสี่ยงของ LP ต่อโทเค็นนั้นจะค่อยๆ เพิ่มขึ้น จนกว่าราคาจะมาถึงขอบเขตของช่วงเวลา ในขณะนี้ LP มีการเปิดรับความเสี่ยงต่อโทเค็นนี้เท่านั้น และมีการเปิดรับโทเค็นอื่นเป็น 0 หากราคายังคงเคลื่อนไหวไปในทิศทางเดียวกัน การเปิดเผยจะไม่เปลี่ยนแปลง
คำอธิบายภาพ
รูปที่ 2 ผลกระทบของการเปลี่ยนแปลงราคาสัมพัทธ์ของกลุ่ม Balancer ภายใต้การกำหนดค่าน้ำหนักที่แตกต่างกันต่อการสูญเสียที่ไม่แน่นอน
ชื่อเรื่องรอง
การถอนและการฝากเงิน
คำอธิบายภาพ
ตารางที่ 3 การถอนและการฝาก
สำหรับ Uniswap V3 อัตราส่วนของสองโทเค็นที่ฝาก ณ เวลาที่ฝากจะพิจารณาจากปัจจัยสองประการ (1) ขอบเขตสองช่วงของช่วงเวลา (2) ราคาธุรกรรมปัจจุบัน หากราคาซื้อขายปัจจุบันเท่ากับค่าเฉลี่ยทางเรขาคณิตของราคาขอบเขตทั้งสอง LP จะต้องฝากโทเค็นทั้งสองในจำนวนเท่ากันที่ 50:50 หากราคาปัจจุบันมีความโน้มเอียงไปด้านใดด้านหนึ่งมากขึ้น โทเค็นที่ถูกกว่าจะมีสัดส่วนที่สูงกว่าของโทเค็นที่ LP ต้องการฝาก หากราคาปัจจุบันอยู่นอกช่วง LP จะต้องระบุโทเค็นที่ถูกกว่าเท่านั้น
วิธีการคำนวณเฉพาะมีดังนี้:
เมื่อถอนเงิน จำนวนเงินที่ถอนหลักของโทเค็นทั้งสองสามารถคำนวณได้ในทำนองเดียวกัน ส่วนของค่าคอมมิชชั่นที่ได้รับจะถูกเรียกเก็บและถอนออกในประเภทโทเค็น ณ เวลาที่ทำธุรกรรม
สำหรับ Balancer V2 LP จำเป็นต้องจัดเตรียมโทเค็นทุกประเภทในพูลเสมอเมื่อทำการฝากเงิน และอัตราส่วนการจับคู่จะเป็นตัวกำหนดการตั้งค่าน้ำหนักของพูล
สำหรับ Curve เมื่อฝากเงิน LPs สามารถฝากโทเค็นในสัดส่วนใดก็ได้ หรือฝากโทเค็นประเภทเดียวเท่านั้น อย่างไรก็ตาม หากอัตราส่วนเงินฝากไม่ตรงกับอัตราส่วนโทเค็นทั้งหมดในกลุ่มปัจจุบัน LP จะต้องสูญเสีย (หรือรางวัล) ในระดับหนึ่ง เนื่องจากเมื่อ LP ได้รับโทเค็น LP จำนวนที่ได้รับจะถูกคำนวณโดยสูตรต่อไปนี้:
การรวมสภาพคล่อง
การรวมสภาพคล่อง
คำอธิบายภาพ
ตารางที่ 4 วิธีการรวมสภาพคล่อง
Uniswap V3 ช่วยให้ LP แต่ละรายสามารถกำหนดช่วงสภาพคล่องได้ตามอำเภอใจ เพื่อให้คาดว่าสภาพคล่องโดยรวมจะรวมกันในช่วงที่มีความเคลื่อนไหวมากที่สุด อย่างไรก็ตาม ตามทฤษฎีแล้ว สภาพคล่องสามารถกำหนดเป็นการกระจายตามอำเภอใจได้ตามการตัดสินใจโดยอิสระของแต่ละ LP
คำอธิบายภาพ
รูปที่ 3 การกระจายสภาพคล่อง Uniswap V2
ซึ่งหมายความว่าหาก LP ทั้งหมดตั้งค่าช่วงสภาพคล่องเป็นช่วงสูงสุดที่เป็นไปได้ พูล Uniswap V3 จะเทียบเท่ากับ V2
คำอธิบายภาพ
รูปที่ 4 เส้นกราฟการกระจายสภาพคล่อง
อย่างไรก็ตาม ตัวเลขข้างต้นเป็นเพียงการประมาณของ Curve V3 ซึ่งจริง ๆ แล้วซับซ้อนกว่านั้น เนื่องจากสภาวะตลาดเปลี่ยนแปลงและช่วงราคาที่ใช้งานมากที่สุดเบี่ยงเบนจากจุดสมดุลเดิมมากเกินไป Curve V3 จะปรับจุดสมดุลและเส้นโค้งราคาใหม่ตาม Oracle ในตัว
คำอธิบายภาพ
รูปที่ 5 Liquidity Distribution Balancer V2
คำอธิบายภาพ
ชื่อเรื่องรอง
คำอธิบายภาพ
ตารางที่ 5 ค่าธรรมเนียมการทำธุรกรรม
Uniswap V3
แต่ละคู่การซื้อขายมีกลุ่มการไล่ระดับค่าธรรมเนียมสามกลุ่มสำหรับ LP ให้เลือก: 0.05%, 0.3% และ 1% ตามสัญชาตญาณ LPs มีแนวโน้มที่จะใช้พูลที่มีค่าธรรมเนียมสูงมากกว่า แต่เมื่อกิจกรรมการทำธุรกรรมของพูลที่มีค่าธรรมเนียมสูงนั้นต่ำกว่าพูลที่มีค่าธรรมเนียมต่ำมาก LPs จะต้องเข้าร่วมในพูลที่มีค่าธรรมเนียมต่ำ ผู้ค้าชอบพูลค่าธรรมเนียมต่ำ แต่เมื่อสภาพคล่องของพูลค่าธรรมเนียมต่ำมีน้อยเกินไปและการเลื่อนหลุดสูงเกินไป ผู้ค้าถูกบังคับให้ซื้อขายจากพูลค่าธรรมเนียมสูง
จากการสังเกตการณ์จริง สำหรับคู่การซื้อขาย Stablecoin กลุ่มที่มีค่าธรรมเนียม 0.05% นั้นมีความเคลื่อนไหวมากที่สุด สำหรับคู่การซื้อขายอื่นๆ กลุ่มค่าธรรมเนียมสูงจะมีการใช้งานมากขึ้นเมื่อตลาดมีความผันผวนสูง และกลุ่มค่าธรรมเนียมต่ำจะมีการใช้งานมากขึ้นเมื่อความผันผวนต่ำ
Balancer V2
โปรโตคอล Balancer เรียกเก็บค่าธรรมเนียมสองรายการ: (1) ค่าธรรมเนียมการทำธุรกรรมซึ่งเรียกเก็บจากผู้ค้าเป็นเปอร์เซ็นต์ของจำนวนการทำธุรกรรม (2) ค่าธรรมเนียมการถอนซึ่งเรียกเก็บตามจำนวนเงินที่ถอนเมื่อ LP ถอนตัวจากข้อตกลง
ค่าธรรมเนียมการทำธุรกรรมสามารถตั้งค่าได้ระหว่าง 0.05% ถึง 1% ค่าเริ่มต้นกำหนดโดยผู้สร้างพูลและปรับแบบไดนามิกโดยโปรโตคอลตามปัจจัยหลายประการ ปัจจัยต่างๆ ได้แก่: ความผันผวน ปริมาณธุรกรรม การสูญเสียที่ไม่ถาวร สภาพคล่องรวม สภาพคล่อง การขุดทางเพศ รางวัล ฯลฯ
โปรโตคอลสามารถกำหนดค่าธรรมเนียมการถอนได้ แต่ยังไม่ได้นำมาใช้
Curve V2
สรุปแล้ว
สรุปแล้ว
จากการเปรียบเทียบต่างๆ จะเห็นได้ว่าแต่ละโปรโตคอลใช้วิธีที่แตกต่างกันเพื่อตอบสนองความต้องการที่หลากหลายของ LPs และเทรดเดอร์
Uniswap V3 ให้ LP มีความยืดหยุ่นสูงสุด พารามิเตอร์เกือบทั้งหมดสามารถกำหนดโดย LP ได้อย่างอิสระ และทีมงานไม่ได้เพิ่มคุณสมบัติเสริมเพื่อให้โปรโตคอลเรียบง่าย ในทางกลับกัน LPs จำเป็นต้องจัดการความเสี่ยงของตนเอง
ในอดีต Curve มุ่งเน้นไปที่คู่การซื้อขายของ Stablecoin และเวอร์ชั่นใหม่นี้ V2 มีเป้าหมายเพื่อขยายความหลากหลายของเหรียญที่ครอบคลุม ซึ่งแตกต่างจาก stablecoins ราคากลางในตลาดของคู่การซื้อขายที่ไม่เสถียรอาจเปลี่ยนไปยังช่วงที่ใช้งานใหม่ ดังนั้นโปรโตคอลนี้จึงสามารถปรับช่วงการรวมสภาพคล่องตามฟีดราคาของ Oracle ในตัว โดยไม่จำเป็นต้องใช้ LPs เพื่อปรับใช้ใหม่ ช่วงสภาพคล่องของตัวเอง การออกแบบนี้เป็นมิตรกับนักลงทุนรายย่อยมากกว่า แต่จะจำกัดความเป็นไปได้ในการพัฒนากลยุทธ์การทำการตลาดแบบกำหนดเองที่ซับซ้อนมากขึ้น
Balancer V2 รองรับโทเค็นมากกว่าสองประเภทในกลุ่มสภาพคล่องเดียวกัน และให้น้ำหนักที่แตกต่างกัน ซึ่งตรงกับความต้องการของ LPs บางส่วนในการจัดการความเสี่ยงของโทเค็นประเภทต่างๆ ที่แตกต่างกัน โดยการเพิ่มความผันผวนของความเสี่ยงด้านหนึ่ง ความเสี่ยงด้านอื่น ๆ จะลดลง
การอ้างอิง
[1] G. Angeris, A. Evans, T. Chitra; When does the tail wag the dog? Curvature and market making, 2020.
[2] Hayden Adams, Noah Zinsmeister, Moody Salem, River Keefer, and Dan Robinson. Uniswap v3 Core. (2021).
[3] Michael Egorov, Curve Finance (Swiss Stake GmbH). Automatic market-making with dynamic peg (2021)
[4] Fernando Martinelli, Nikolai Mushegian. Balancer Whitepaper (2019)
