AAVE V3合约概览
- AAVE协议V3:Contracts Overview=合约概览
- AAVE V3,主要有2个仓库
- aave-v3-core
- 托管核心协议V3合约,其中包含供应,借贷,清算,闪贷,a/s/v令牌,门户portal,pool池配置,预言机和利率策略的逻辑。
- aave-v3-periphery
- 奖励、UI数据提供商、激励数据提供商、钱包余额提供商、WETH网关。
- aave-v3-core
- aave-v3-core 协议合约
- 配置=Configuration
- ACLManager == Access Control List Manager
- Aave协议V3实现了访问控制列表,以隔离可以分配给协议上不同实体的权力和/或利益。角色和持有者在ACLManager中进行管理。它跟踪各个角色及其持有者。
- 详见:https://docs.aave.com/developers/core-contracts/aclmanager
- PoolAddressesProvider
- 协议的主地址寄存器,包含核心协议合约地址和ACL管理地址。它充当代理工厂并管理这些代理。本合同的所有人有权设置/更新可升级合同的执行情况。应该通过进行适当的调用从该合同中检索最新的合同地址。
- 详见:https://docs.aave.com/developers/core-contracts/pooladdressesprovider
- PoolAddressesProviderRegistry
- 包含针对不同市场的活动PoolAddressProvider地址列表。它用于索引所有Aave协议的市场。
- 详见:https://docs.aave.com/developers/core-contracts/pooladdressesproviderregistry
- PriceOracleSentinel
- Oracle Sentinel根据PriceOracle运行状况验证是否允许操作。一旦PriceOracle在中断/停机后重新启动,用户可以在宽限期内保持其头寸健康。
- 详见:https://docs.aave.com/developers/core-contracts/priceoraclesentinel
- ACLManager == Access Control List Manager
- 池的逻辑=Pool logic
- DefaultReserveInterestRateStrategy
- 根据储备状态实现利率的计算。本合约包含计算和更新与特定流动性池相关的收益率所需的信息。
- 每个合约使用每个资产的相应参数存储优化的基本曲线。这意味着有一个数学函数决定每个流动性池的收益率,收益率根据借入资金的数量和池的总流动性(即利用率)而变化。
- Pool
- 进入Aave协议的主要入口点。大多数用户与Aave协议的交互都是通过Pool合约进行的。池由特定市场的PoolAddressesProvider拥有。所有管理函数都可以由PoolConfigurator合约调用,该合约在PoolAddressesProvider中定义。
- 详见:https://docs.aave.com/developers/core-contracts/pool
- PoolConfigurator
- 池配置的提供程序配置方法。该合约的写方法只能由ACLManager管理的具有相应权限的系统角色的地址调用。
- 详见:https://docs.aave.com/developers/core-contracts/poolconfigurator
- DefaultReserveInterestRateStrategy
- Tokenization=代币化
- AToken
- 产生收益的代币,在供应和撤回资产时被铸造和燃烧到拥有池
- 详见:https://docs.aave.com/developers/tokens/atoken
- DelegationAwareAToken
- 一种特殊类型的代币,在具有与之相关的投票权(可以委托)的资产的供应和撤回时被铸造和燃烧。
- 详见:https://docs.aave.com/developers/tokens/delegationawareatoken
- StableDebtToken
- 不可转让的计息、稳定利率的代币化借款。
- 详见:https://docs.aave.com/developers/tokens/debttoken
- VariableDebtToken
- 不可转让的计息、可变利率的代币化借款。
- 详见:https://docs.aave.com/developers/tokens/debttoken
- AToken
- Misc=其他
- AaveOracle
- 合同获取资产价格,管理价格来源并更新备用oracle。
- 详见:https://docs.aave.com/developers/core-contracts/aaveoracle
- AaveProtocolDataProvider
- 外围设备负责从池中收集和预处理信息。
- 详见:https://docs.aave.com/developers/core-contracts/aaveprotocoldataprovider
- AaveOracle
- 配置=Configuration
- aave-v3-periphery 协议合约
- Rewards
- RewardsController
- 该合约负责配置不同的奖励和索赔流程。
- 详见:https://docs.aave.com/developers/getting-started/contracts-overview#rewardscontroller
- Transfer Strategies=转移策略
- 这些是管理索赔时奖励转移程序的孤立合同。这允许RewardsController支持任何自定义奖励,如Staked Aave, 普通的ERC20甚至NFT。
- RewardsController
- Misc
- UiIncentiveDataProviderV3
- 获取激励数据的助手合同。它被Aave UI用于奖励余额信息。
- 详见:https://docs.aave.com/developers/getting-started/contracts-overview#uiincentivedataproviderv3
- UiPoolDataProviderV3
- 辅助合约,由Aave UI使用,获取池数据,如储备列表,所有储备数据,如流动性,令牌地址,利率策略等。
- 详见:https://docs.aave.com/developers/getting-started/contracts-overview#uipooldataproviderv3
- WETHGateway
- 只有ERC20令牌可以从Aave协议V3池中提供和借用。为了方便使用链上的原生代币(如以太坊上的ETH或多边形上的Matic),使用辅助合约来支持单个tx的供应,借贷,偿还和提取。
- 详见:https://docs.aave.com/developers/getting-started/contracts-overview#wethgateway
- WalletBalanceProvider
- 用于获取一个用户地址的多个令牌余额。该合约由Aave后端使用,以减少获取用户余额的区块链调用数量。
- 详见:https://docs.aave.com/developers/getting-started/contracts-overview#walletbalanceprovider
- UiIncentiveDataProviderV3
- Rewards
- AAVE V3,主要有2个仓库