Perpetual Protocol V2学习
Perpetual Protocol 是除了@dydx之外另一个明星的链上永续合约交易所,目前V2版本运行在 @optimismFND上。主要的特点是协议主要负责利润计算和爆仓清算,交易的部分和流动性的部分都集成了 @Uniswap V3
2 Vault模块
https://optimistic.etherscan.io/address/0xad7b4c162707e0b2b5f6fddbd3f8538a5fba0d60 该模块负责存放用户的保证金的充值和提现,还有清算。结算的币种是USDC,利润和亏损都是计算在USDC上。如果爆仓或关仓后USDC为负数,则必须充值进去补上才能提现其他币种。有5个币种可以作为保证金,权重和折算如图。
3 CollateralManager 模块
https://optimistic.etherscan.io/address/0x8Ac835C05530f10595C8015467339523154b4D85
管理抵押物的币种、计价来源、权重、封顶和折算比例,这个模块是一个配置的模块,上线后暂时没有调整过配置。
4 DelegateApproval模块
https://optimistic.etherscan.io/address/0xfd7bB5F6844a43c5469c972640Eddfa99597a547 ,该模块用来支持用户将操作权限,比如开单权限授权给第三方。这样的方式可以吸引更多生态项目建立,也方便DeFi乐高的堆叠。
5 ClearingHouse模块
6 InsuranceFund模块
https://optimistic.etherscan.io/address/0x1C9a192DF3936cBF093d8afDc352718bCF834EB6,该模块提供协议的保险资金,初始资金100,000 USDC。用来支付协议的清算缺口。该合约还有一个分发手续费收入的功能,可以把这部分钱从vault中转到 SurplusBeneficiary
7 SurplusBeneficiary模块
8 MarketRegistry模块
9 VirtualToken模块
在perp上交易的所有token,都会由ClearingHouse模块发行相应的vToken,包括vUSD、vETH等,然后vToken实际的交易撮合发生在Uniswap V3。vToken的作用更多是为了记账,vToken只会出现在ClearingHouse、和Uniswap Pool里面,并不会转到用户的地址里。
10 Exchange模块
11 OrderBook模块
12 AccountBalance模块
13 小结
该贴只是个很简单过了一下各个合约是干什么的,要理解还是需要更多的研究。ClearingHouse是该协议最重要的模块,基本操作的入口都是该模块。很久没有学习DeFi的合约代码了,现在的项目确实复杂度越来越高。所有逻辑堆在一个合约里的小作坊时代一去不复返了。https://github.com/perpetual-protocol/perp-curie-contract