BTC
ETH
HTX
SOL
BNB
ดูตลาด
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

การอภิปรายเชิงลึกเกี่ยวกับกลไกการให้ยืมและการชำระบัญชีของ DeFi และหลักการดำเนินการ ความเส

区块律动BlockBeats
特邀专栏作者
บทความนี้มีประมาณ 4554 คำ การอ่านทั้งหมดใช้เวลาประมาณ 7 นาที
บทความนี้เป็นบทความที่สองในชุดบทความที่แนะนำการให้ยืม DeFi โดยเน้นที่แนวคิดของการชำระบัญ
สรุปโดย AI
ขยาย
บทความนี้เป็นบทความที่สองในชุดบทความที่แนะนำการให้ยืม DeFi โดยเน้นที่แนวคิดของการชำระบัญ

ชื่อเดิม: "แนวคิดการให้ยืม DeFi ตอนที่ 2: การชำระบัญชี"

การรวบรวมต้นฉบับ: Kxp, BlockBeats

การรวบรวมต้นฉบับ: Kxp, BlockBeats

ชื่อระดับแรก

หลักประกันเกินราคาและหนี้สูญ

คุณอาจจำได้จากบล็อกโพสต์ก่อนหน้าของเราว่าผู้ใช้โปรโตคอลสามารถให้ยืมหรือยืมสินทรัพย์ตามเปอร์เซ็นต์ของหลักประกันที่พวกเขาให้กับโปรโตคอลเท่านั้น สิ่งนี้สมเหตุสมผลเนื่องจากโปรโตคอลจำเป็นต้องตรวจสอบให้แน่ใจว่าสามารถกู้คืนสินทรัพย์ (หรือสินทรัพย์อื่น ๆ ที่มีมูลค่าเท่ากัน) จากคุณได้หากคุณไม่ชำระหนี้ กระบวนการจำนองสินทรัพย์นี้เริ่มต้นในระบบการเงินแบบดั้งเดิม เช่น ในปัจจุบัน ซึ่งบุคคลสามารถนำบ้านหรือ Lamborghini มาเป็นหลักประกันการชำระคืนเงินกู้ได้

การจำนองขึ้นอยู่กับเงื่อนไขเบื้องต้นว่าราคาของหลักประกันยังคงรักษามูลค่าไว้ - แม้ว่าราคาของบ้านหรือ Lamborghini จะไม่ได้รับการรับประกัน แต่มูลค่าที่เกี่ยวข้องนั้นค่อนข้างผันผวนน้อยกว่าและมีเสถียรภาพมากกว่าสินทรัพย์เช่น ERC 20 หรือ NFT

ในโปรโตคอลการให้ยืมของ DeFi ส่วนใหญ่ สินทรัพย์เงินกู้ที่มีหลักประกันของคุณต้องมีมูลค่ามากกว่ามูลค่าเงินกู้ของคุณ ซึ่งเรียกว่าการค้ำประกันมากเกินไป

การปล่อยสินเชื่อที่มีหลักทรัพย์ค้ำประกันมากเกินไปจะเป็นประโยชน์หากโปรโตคอลการให้กู้ยืมต้องการรักษาเสถียรภาพทางการเงิน ลองนึกภาพว่าคุณวางทรัพย์สินบางอย่างเป็นหลักประกัน และจู่ๆ มูลค่าของทรัพย์สินเหล่านั้นก็ต่ำกว่ามูลค่าของทรัพย์สินที่คุณยืมมาจากโปรโตคอล ตอนนี้ หลักประกันของคุณมีค่าน้อยกว่าที่คุณเป็นหนี้โปรโตคอล และคุณไม่มีแรงจูงใจในการชำระคืน ท้ายที่สุด ในกระบวนการชำระคืนเงินกู้ หลักประกันที่คุณจะค้ำประกันมีมูลค่าน้อยกว่าจำนวนเงินที่ต้องใช้จริงในการชำระคืนเงินกู้ เงินกู้นี้ล้มละลายแล้ว

เงินกู้ที่ผิดนัดทุกครั้งจะส่งผลเสียต่อข้อตกลงที่มีอยู่ หนี้ที่เกิดจากสินเชื่อที่มีหนี้สินล้นพ้นตัวสร้างองค์ประกอบของความไม่มั่นคงในโปรโตคอล หลังจากนั้น จำนวนหนี้คือจำนวนสินทรัพย์ที่ผู้ให้กู้ไม่สามารถกู้คืนจากโปรโตคอลได้ หากต้องการเน้นย้ำว่าหนี้เสียเหล่านี้เลวร้ายเพียงใด: หากมีบางอย่างเช่น "การดำเนินการของธนาคาร" ทางการเงินแบบดั้งเดิมบนโปรโตคอล ผู้ใช้คนสุดท้ายที่จะถอนทรัพย์สินออกจากโปรโตคอลจะไม่สามารถทำได้

ชื่อระดับแรก

เกณฑ์การชำระบัญชีและการชำระบัญชี

เราได้พิสูจน์แล้วว่าเมื่อหลักประกันเงินกู้มีมูลค่าน้อยกว่าหนี้ที่มีดอกเบี้ยของผู้กู้ (หรือที่เรียกว่า undercollateralization) หนี้ของผู้กู้จะเป็นภัยคุกคามต่อความสมบูรณ์ของสัญญากู้ยืมที่วางไว้ เพื่อป้องกันไม่ให้การถือครองหลักทรัพย์ที่มีหลักประกันเพิ่มขึ้น โปรโตคอลอนุญาตให้บุคคลที่สาม (ไม่จำเป็นต้องเป็นผู้ใช้โปรโตคอล) เพื่อชำระหนี้ที่มีหลักประกัน โดยการชำระหนี้ที่ต่ำกว่าหลักประกัน บุคคลที่สามเหล่านี้หรือที่เรียกว่าผู้ชำระบัญชีมีสิทธิที่จะเรียกร้องให้คืนหลักประกันของลูกหนี้ที่มีส่วนลด กระบวนการนี้เรียกว่าการชำระบัญชี

คุณอาจสงสัยว่าเหตุใดโปรโตคอลจึงพึ่งพาบุคคลที่สามในการชำระสถานะที่ไม่แข็งแรง ท้ายที่สุดแล้ว โปรโตคอลสามารถเข้ารหัสกลไกการชำระบัญชีอัตโนมัติลงในรหัสของมันได้

ค่าใช้จ่ายในการส่งรายการหักบัญชีสูงมาก หากโปรโตคอลส่งธุรกรรมราคาแพงเหล่านี้โดยอัตโนมัติ ต้นทุนก๊าซที่เกิดขึ้นจะเพิ่มต้นทุนการดำเนินงาน ซึ่งส่งผลให้กำไรลดลง

นอกจากนี้การออกแบบระบบชำระบัญชีอัตโนมัติยังทำได้ยากมาก โปรโตคอลต้องพิจารณาไม่เพียงแต่ว่าตำแหน่งควรได้รับการชำระบัญชีโดยอัตโนมัติหรือไม่ แต่ควรพิจารณาเมื่อใด และในอัตราที่สะท้อนถึงความผันผวนของตลาด โดยการจูงใจให้บุคคลที่สามที่อุทิศตนเพื่อยุติตำแหน่งเหล่านี้ กระบวนการจะง่ายขึ้นมาก

การชำระบัญชีไม่ได้สร้างผลกำไรโดยเนื้อแท้ - สำหรับกระบวนการนี้ หลักประกันของลูกหนี้จะต้องมีมูลค่ามากกว่าจำนวนเงินที่เป็นหนี้ หากผู้ชำระบัญชีไม่รับประกันว่ากระบวนการจะทำกำไรได้ พวกเขาจะไม่เลิกกิจการ

ดังนั้นตำแหน่งสามารถชำระบัญชีได้เมื่อใด เงื่อนไขนี้กำหนดโดยโปรโตคอลและเป็นฟังก์ชันของเกณฑ์การชำระบัญชีที่กำหนดให้กับสินทรัพย์แต่ละรายการ

เวลาเป็นสิ่งสำคัญมากเมื่อพูดถึงเกณฑ์การชำระบัญชี ดังที่เราทราบ หากมูลค่าหนี้ของสถานะเกินมูลค่าหลักประกัน การชำระสถานะเหล่านี้จะไม่เกิดผลกำไรสำหรับผู้ชำระบัญชี และโปรโตคอลจะเผชิญกับหนี้เสียด้วย ดังนั้นเกณฑ์การชำระบัญชีที่ปลอดภัยจึงให้เวลาเพียงพอสำหรับผู้ชำระบัญชีในการชำระสถานะก่อนที่จะถึงสถานะล้มละลาย

ชื่อระดับแรก

สารประกอบ: สภาพคล่องของบัญชี

สารประกอบเกี่ยวข้องกับพารามิเตอร์ที่เรียกว่า AccountLiquidity ซึ่งคำนวณเกณฑ์การชำระบัญชีใน Comptroller ซึ่งเป็นสัญญาหลักของ Compound

Comptroller มีฟังก์ชันชื่อ getAccountLiquidity() ซึ่งจะส่งคืนข้อมูลเกี่ยวกับสภาพคล่องของบัญชี ภายใน ฟังก์ชันนี้เรียก getHypotheticalAccountLiquidityInternal():

เราเห็นที่นี่ว่าตรรกะหลักของฟังก์ชันนั้นอยู่ในขอบเขตสำหรับลูป สิ่งนี้แสดงให้เห็นว่าการคำนวณสภาพคล่องของบัญชีทำได้โดยการวนซ้ำในตลาดทั้งหมดที่บัญชีเข้าร่วม กล่าวอีกนัยหนึ่ง เมื่อคำนวณสภาพคล่องของบัญชี ทรัพย์สินทั้งหมดที่ผู้ใช้ยืมหรือใช้เป็นหลักประกันจะถูกนำมาพิจารณาด้วย

จำได้จากโพสต์บล็อกก่อนหน้าของเราว่า cTokenBalance คือจำนวนของสินทรัพย์อ้างอิงที่ผู้ใช้จัดหาเพื่อเป็นหลักประกัน ในตัวอย่างนี้ เรายังสามารถเห็นการยืมบาลานซ์และ exchangeRateMantissa ลึกลับบางอย่าง ซึ่งทั้งคู่ส่งคืนจาก getAccountSnapshot()

ในตัวแปร exchangeRate ทั่วไปที่กล่าวถึงในบล็อกโพสต์ก่อนหน้านี้ เราเขียนว่า:

"อัตราดอกเบี้ยตามอำเภอใจสามารถเพิ่มจำนวนโทเค็นที่สร้างได้ หากอัตราแลกเปลี่ยน < 1 จะสามารถลดจำนวนโทเค็นได้ หากอัตราแลกเปลี่ยน > 1 ก็จะสามารถเพิ่มจำนวนโทเค็นได้"

นอกจากนี้ยังนำไปใช้กับ exchangeRateMantissa ซึ่งแสดงถึงอัตราแลกเปลี่ยนระหว่าง cToken และสินทรัพย์อ้างอิง

ดังที่เราเห็นในตัวอย่างนี้ หลังจากได้รับพารามิเตอร์สามตัวที่กล่าวถึงข้างต้นแล้ว Comptroller จะได้รับ collateralFactor ของตลาดเฉพาะที่กำลังวนซ้ำอยู่ก่อน ข้อมูล collateralFactor นี้เป็นตัวบ่งชี้ว่าผู้ใช้สามารถยืมหลักประกันของตนได้เท่าใด จากคำจำกัดความนี้ เราสามารถสันนิษฐานได้ว่าเงินฝากค้ำประกันแต่ละรายการสามารถค้ำประกันด้วยจำนวนการกู้ยืมที่แตกต่างกัน

เหตุผลที่จำนวนนี้แตกต่างกันระหว่างสินทรัพย์ส่วนใหญ่เนื่องจากสินทรัพย์แต่ละรายการมี "ความเสี่ยง" ของตัวเองในสายตาของโปรโตคอล โดยปกติจะหมายถึงระดับที่มูลค่าของสินทรัพย์ผันผวนเมื่อเวลาผ่านไป

การกำกับดูแลของ Compound จะเปลี่ยนปัจจัยการค้ำประกันตามเงื่อนไขของตลาด แต่ ณ จุดใดก็ตาม ปัจจัยการค้ำประกันของพวกเขาจะต้องไม่เกิน 0.9 — มากถึง 90% ของหลักประกันที่คุณฝากสามารถให้ยืมได้:

จากนั้น เราจะเห็นการเรียกไปยัง oracle.getUnderlyingPrice(asset) ซึ่งเรียกสัญญาภายนอกที่เรียกว่า Oracle

Oracles เป็นกลไกที่น่าสนใจที่ควรค่าแก่การโพสต์บล็อกโดยเฉพาะ (คอยติดตาม) เพื่อความกระชับ สิ่งที่เรากำลังอธิบายในตอนนี้คือ oracle เป็นสัญญาที่ใช้เพื่อให้ได้มาซึ่งราคาของสินทรัพย์ในโปรโตคอลการให้ยืม โดยปกติจะเป็นสกุลเงินสาธารณะบางสกุลที่ใช้โดยโปรโตคอล (โดยปกติคือ USD, ETH หรือ Stablecoin ใช้โดยโปรโตคอล) เป็นพื้นฐาน

ตอนนี้เราได้ครอบคลุมปัจจัยทั้งหมดที่ส่งผลต่อสถานะของตลาดแต่ละแห่งแล้ว เราจะเขียนสมการเพื่อคำนวณ AccountLiquidity สำหรับตลาดแต่ละแห่ง:

หมายเหตุ: ใน Compound ราคาสินทรัพย์จะเป็นสกุลเงินดอลลาร์สหรัฐ (USD)

นี่เป็นรายการตัวแปรที่ค่อนข้างยาว แต่ถ้าคุณพยายามจำส่วน Compound จากบทความ "Share Token" คุณจะพบนิพจน์ต่อไปนี้:

มันแสดงถึงมูลค่าสินทรัพย์พื้นฐานของ cToken ของผู้ใช้

นอกจากนี้ ตัวแปร loanBalance_{user} ดังที่คุณเห็นที่นี่ คือยอดรวมของสินทรัพย์ที่ผู้ใช้ยืม รวมถึงดอกเบี้ยค้างรับด้วย

ชื่อระดับแรก

Maker 

โปรโตคอลอื่นที่กำหนดเกณฑ์สำหรับการชำระบัญชีสถานะที่มีหลักประกันคือ Maker

ลองตรวจสอบสัญญาสองฉบับที่ปรับใช้โปรโตคอลเพื่อจัดการการชำระบัญชี:

สุนัข: ปรับใช้หลังจากย้ายไปยังการชำระบัญชี 2.0 (สิ่งที่การกำกับดูแลของ Maker เรียกว่า) ฟังก์ชันการชำระบัญชีที่นี่คือเปลือกไม้ ()

· Cat:liquidations 1.2 ,bite()。 

grab(): สัญญา VAT ใช้เป็นวิธีการชำระบัญชีก่อนที่จะมีการปรับใช้สัญญา cat

ลองดูตัวอย่างใน bite():

และตัวอย่างที่คล้ายกันจากbark():

คุณอาจสังเกตเห็นว่าข้อความทั้งสองมีข้อความที่ไม่ปลอดภัยเหมือนกัน ดังนั้น ข้อกำหนดด้านความปลอดภัยของ Vault จึงเหมือนกันสำหรับฟังก์ชันการชำระบัญชีแต่ละรายการ และสามารถแสดงด้วยสมการต่อไปนี้:

เราสามารถใช้สมการนี้เพื่อกำหนดความไม่เท่าเทียมกันเพื่อให้ Vault (ชื่อ Maker ใช้สำหรับตำแหน่ง) ยังคงปลอดภัย:

เพิ่มประสิทธิภาพ:

เราแนะนำให้ผู้อ่านไปที่อภิธานศัพท์ MakerDAO เพื่อขยายข้อมูลที่เราให้เกี่ยวกับชื่อตัวแปรและคำศัพท์ต่างๆ ในระบบนิเวศของ Maker

หรือคุณสามารถเชื่อถือสิ่งที่เราระบุไว้ที่นี่:

• spot_{ilk} ใช้ในอสมการนี้เป็นราคาของหลักประกัน ซึ่งมีหน่วยเป็น DAI หารด้วยอัตราส่วนการชำระบัญชีของหลักประกัน (กำหนดโดยการกำกับดูแล)

• ink_{urn} คือยอดคงเหลือของตำแหน่ง

• rate_{ilk} คือความรับผิดสะสมสำหรับหลักประกันประเภทใดประเภทหนึ่ง เมื่อคูณด้วย art_{urn} ซึ่งเป็นจำนวนหนี้ปกติที่ยืมโดยโพสิชัน เราจะได้หนี้รวมในหน่วย DAI

เพื่อลดความซับซ้อนของสิ่งที่เราเพิ่งกล่าวถึง โดยไม่ใช้คำศัพท์ของ Maker เราจะนำเสนอในลักษณะนี้:

ชื่อระดับแรก

AAVE V2 - ปัจจัยด้านสุขภาพ

AAVE V2 ยังกำหนดเกณฑ์ HealthFactor ของตัวเองด้วย ผู้ใช้ที่มีค่าปัจจัยสุขภาพ H_{f} < 1 สามารถชำระบัญชีได้

กำหนดไว้ดังนี้

เห็นได้ชัดว่า เมื่อผู้ใช้ไม่มีหนี้สิน ตำแหน่งของพวกเขาจะไม่สามารถชำระบัญชีได้ ดังนั้นปัจจัยด้านสุขภาพจึงเริ่มต้นเป็นประเภท (uint 256) สูงสุด

มิฉะนั้น ปัจจัยด้านสุขภาพถูกกำหนดเป็น:

ชื่อระดับแรก

การวิเคราะห์ตำแหน่งล้มละลาย

ตอนนี้เราได้พูดถึงแนวคิดเรื่องหนี้เสียแล้ว เราจะยกตัวอย่างในโลกแห่งความเป็นจริงเพื่อเน้นย้ำถึงความสำคัญของหนี้เสีย

ตำแหน่งที่เราจะพูดถึงคือบัญชีต่อไปนี้บน AAVE V2: 0x 227 cAa 7 eF 6 D 955 A 92 F 483 d B2B D 01172997 A 1 a 623

ตรวจสอบสถานะปัจจุบันของโปรโตคอลการให้ยืม AAVE V2 โดยเรียกใช้ฟังก์ชัน getUserAccountData บนโปรโตคอล:

ตอนนี้เรามาดูรายละเอียดข้างต้นและดูว่าตำแหน่งนี้ไม่ดีอย่างไร:

· ETH ที่เป็นหนี้ทั้งหมด: 17.83508595148699 ETH

· ETH ที่จำนำทั้งหมด: 0.013596360502551568 ETH

นั่นคือทั้งหมดที่เราต้องรู้ ตำแหน่งนี้กำลังมีปัญหา - หลักประกันมีมูลค่าเพียงเศษเสี้ยวของที่เป็นหนี้อยู่

แล้วตำแหน่งนี้มีปัญหาได้อย่างไร?

เพื่อตอบคำถามนี้ เราสามารถดูการกระทำล่าสุดที่ดำเนินการโดยผู้ใช้รายนี้ใน AAVE:

ทุกอย่างดูเหมือนจะดีจนกระทั่งบล็อก 13514857 ซึ่งผู้ใช้ให้ยืมทรัพย์สินบางอย่างจาก AAVE มาดูกันว่าพวกเขาทำอะไร:

ลูกหนี้ได้ยืม MANA 700,000 MANA การดูราคา MANA ของ USD อย่างรวดเร็วเผยให้เห็นว่าราคาคือ:

0.00032838 ETH ต่อหน่วย MANA

โดยการคูณอย่างง่าย เรารู้ว่าผู้ใช้รายนี้ได้เพิ่มหนี้ของโปรโตคอลโดย: 0.00032838 * 700000 = 229.866 ETH

เป็นมูลค่าการกล่าวขวัญว่าราคา USD ที่บล็อกนั้นคือ $4417.40

โปรดสังเกตการดำเนินการฝากเงินที่เกิดขึ้นในภาพด้านบน ที่บล็อก 13517657 ไม่กี่ชั่วโมงหลังจากการยืม มาดูกันว่ามีอะไรในตลาดที่ทำให้ความเชื่อมั่นของผู้ใช้ของเราสั่นคลอนหรือไม่:

ด้านบนคือการเรียก RPC ที่ส่งไปยังออราเคิลราคา AAVE V2 เพื่อรับค่า wei สำหรับ 1 หน่วย MANA ในบล็อกที่ระบุ

หากเราแปลงราคาข้างต้นโดยใช้ข้อมูลนี้ เราจะเห็นว่าเกิดอะไรขึ้น:

0.00033625 * 700000 = 235.375 ETH

ในเวลาเพียงไม่กี่ชั่วโมง หนี้เพิ่มขึ้น 5.5 ETH มูลค่า 24,000 ดอลลาร์

เนื่องจากเราทราบจุดสิ้นสุดของเรื่องราวสำหรับตำแหน่งนี้ เรารู้ว่าตำแหน่งนี้จะสามารถชำระได้ ณ จุดหนึ่ง ดังนั้น เรามาตรวจสอบว่ามี liquidationCall ที่เกี่ยวข้องกับที่อยู่ผู้ใช้นี้หรือไม่:

เมื่อเราพบเหตุการณ์การชำระบัญชีครั้งแรก เราจะเข้าใจว่าทำไมผู้ใช้จึงฝากสินทรัพย์หลังจากยืมไม่นาน:

เราจะเห็นว่าการชำระบัญชีครั้งแรกเกิดขึ้นที่บล็อก 13520838 การชำระบัญชีนี้เกิดขึ้นก่อนที่ผู้ใช้จะฝากเงิน (ประมาณ 7 นาทีก่อนธุรกรรมการฝากเงิน)

จากนั้น ระหว่างบล็อก 13520838-13522070 มีการชำระบัญชีจำนวนเล็กน้อยที่จบลงด้วยมูลค่าค่อนข้างมาก:

เรามาตรวจสอบประเภทสินทรัพย์ค้ำประกันทั้งหมดที่ยึดโดยผู้ชำระบัญชีจากผู้ใช้ระหว่างช่วงเหล่านี้:

เราจะเห็นว่ามีเพียง 2 สินทรัพย์คือ DAI (stablecoin) และ ETH

และจำนวนของพวกเขา:

~ 50 ETH 

~ 387663 DAI 

อาจมีคนถามว่าทำไมการชำระบัญชีจึงแบ่งออกเป็นก้อนเล็ก ๆ เช่นนี้?

เมื่อสถานะขนาดใหญ่เช่นนี้ถูกชำระบัญชีในครั้งเดียว ตลาดจะตีความการซื้อหลักประกันขนาดใหญ่ดังกล่าวเป็นสัญญาณขายสำหรับสินทรัพย์ประเภทเหล่านี้ ข้อควรจำ: สินทรัพย์ที่ได้มาจากการชำระบัญชีจะถูกซื้อในราคาส่วนลดตามนโยบายรางวัลการชำระบัญชีของโปรโตคอล

การชำระบัญชีจำนวนมากก่อให้เกิดการชำระบัญชีและเมื่อเกิดแรงกดดันในการขาย ผู้เข้าร่วมตลาดรายอื่นอาจขายสินทรัพย์ของตน ทำให้ราคาสินทรัพย์ "พุ่งชน" มากขึ้น ซึ่งจะนำไปสู่การปิดสถานะอื่นๆ ในโปรโตคอลมากขึ้น

ด้วยเหตุนี้ โปรโตคอลโดยทั่วไปจึงจำกัดจำนวนสินทรัพย์ที่สามารถยึดได้โดยการชำระบัญชีเพียงครั้งเดียว ข้อจำกัดของเวอร์ชัน AAVE ในฐานะตัวแปรมีดังนี้:

อย่างที่เราเห็น เปอร์เซ็นต์ขีดจำกัดคือ 50% ซึ่งหมายความว่ามีเพียงครึ่งหนึ่งของหนี้ของตำแหน่งเท่านั้นที่ได้รับอนุญาตให้ชำระคืนในการชำระบัญชีครั้งเดียว

ผู้ชำระบัญชีมีแรงจูงใจที่จะแบ่งการชำระบัญชีออกเป็นส่วนย่อยๆ หากมีสภาพคล่องในตลาดไม่เพียงพอที่จะจัดหาสินทรัพย์ค้ำประกันในเวลาที่ทำการชำระบัญชี ดังนั้น การแบ่งการชำระบัญชีออกเป็นชิ้นเล็ก ๆ ผู้ชำระบัญชีมีแนวโน้มที่จะได้รับสินทรัพย์ที่ชำระบัญชีและกำไรจากการชำระบัญชี

นอกจากนี้ หากมีสภาพคล่องในตลาดไม่เพียงพอที่จะได้มาซึ่งสินทรัพย์ที่เป็นหนี้ ผู้ชำระบัญชีอาจเสียค่าใช้จ่ายจำนวนมากในการได้มาซึ่งหนี้ที่ต้องชำระคืนให้กับผู้ใช้ที่ไม่มีหลักประกันในตอนแรก

สุดท้าย ลองจินตนาการถึงการพยายามเลิกใช้โทเค็นบางประเภทจำนวนมากโดยไม่ได้เป็นเจ้าของโทเค็นจำนวนมาก หากคุณไปที่ DEX และพยายามแลกเปลี่ยน WETH หรือสินทรัพย์อื่นๆ เพื่อรับโทเค็นนี้ คุณอาจพบกับค่าธรรมเนียมก๊าซที่สูงมาก ซึ่งจะทำให้การชำระบัญชีของคุณไม่ได้กำไร

กลับมาที่ตัวอย่างของเรา เพื่อตรวจสอบพารามิเตอร์ตำแหน่งหลังจากการชำระบัญชีหลายครั้งในห่วงโซ่ เราจำเป็นต้องแยกวิเคราะห์ข้อมูลที่ส่งกลับมาให้เราจาก getUserAccountData:

จากนั้นเราสอบถาม chain โดยใช้ cast:

ผลลัพธ์การแยกวิเคราะห์ขั้นสุดท้าย:

ที่นี่เราเห็นผลของการชำระบัญชีในตำแหน่ง: แทบไม่มีหลักประกันเหลืออยู่ 0.6 ETH เพื่อความแม่นยำ แต่สิ่งที่เกี่ยวกับหนี้? สูงถึง 45.26716296709878 ETH

ราคา MANA สำหรับบล็อคนี้คืออะไร?

0.000862110734985458 ETH。

หากคุณจำได้ ผู้ใช้ของเราได้ยืม MANA เมื่อไม่กี่ชั่วโมงก่อนเป็นจำนวน 0.00032838 ETH นี่เทียบเท่ากับการเปิดตำแหน่งสั้นในหุ้นที่ราคาเพิ่มขึ้น 2.65 เท่า

ผู้ชำระบัญชีเหล่านี้ไม่สามารถชำระสถานะทั้งหมดได้ทันเวลาก่อนที่ราคาจะตกลงสู่ระดับที่ไม่ทำกำไร และเราถูกทิ้งให้อยู่ในสถานะล้มละลาย

สรุป

สรุป

แม้ว่าเราจะไม่แน่ใจว่ามีสมการที่กำหนดเกณฑ์สภาพคล่องสำหรับตำแหน่งหรือไม่ แต่เราสามารถเห็นความคล้ายคลึงกันระหว่างโปรโตคอลได้อย่างแน่นอน:

โปรโตคอลทั้งหมดกำหนดเกณฑ์เป็นฟังก์ชันของหลักประกันเทียบกับหนี้สินบางประเภท (ไม่ว่าจะเป็นอัตราส่วนหรือความแตกต่าง)

โปรโตคอลทั้งหมดออกจากพื้นที่สำหรับการกำกับดูแลเพื่อตัดสินใจมูลค่าของพารามิเตอร์ความเสี่ยงหลักประกันแต่ละรายการโดยอิงตามสภาวะตลาดที่เปลี่ยนแปลง เนื่องจากสินทรัพย์บางอย่างมีความผันผวนมากกว่าสินทรัพย์อื่นๆ

โปรโตคอลทั้งหมดใช้ออราเคิลเพื่อกำหนดราคาหลักประกันและตราสารหนี้ในสกุลเงินที่ยอมรับอย่างกว้างขวาง (เช่น ETH, USD, DAI)

ลิงค์ต้นฉบับ

ลิงค์ต้นฉบับ

DeFi
ETH
AI
Compound
ความปลอดภัย
สกุลเงินที่มั่นคง
ยินดีต้อนรับเข้าร่วมชุมชนทางการของ Odaily
กลุ่มสมาชิก:
https://t.me/Odaily_News
กลุ่มสนทนา:
https://t.me/Odaily_GoldenApe
บัญชีทางการ:
https://twitter.com/OdailyChina
ค้นหา
สารบัญบทความ
ดาวน์โหลดแอพ Odaily พลาเน็ตเดลี่
ให้คนบางกลุ่มเข้าใจ Web3.0 ก่อน
IOS
Android