Protocol Contracts
Core Contracts
Core contracts include the Controller, SetTokenCreator, and the Integration Registry. Each performs a critical function to verify Set permissions and enables shared resources such as oracle access. The PriceOracle and SetValue are resource contracts that provide on-chain pricing for SetToken contracts.
Contracts | Address |
SetTokenCreator | |
Controller | |
IntegrationRegistry | |
PriceOracle | |
SetValuer | |
ProtocolViewer |
Modules
Modules extend SetToken functionality by adding fees as well as accessing the rest of DeFi (Uniswap, 0x, Aave, Compound, etc.) with tokens in your Set e.g. trading, accepting capital, lending, and margin trading. Each module can be added and removed at any time, including after the SetToken has been created.
Contract | Address |
BasicIssuanceModule | |
StreamingFeeModule | |
NavIssuanceModule | |
TradeModule | |
WrapModule | |
GovernanceModule | |
DebtIssuanceModule | |
CompoundLeverageModule | |
GeneralIndexModule | |
CustomOracleNavIssuanceModule | |
AaveLeverageModule | |
DebtIssuanceModuleV2 | |
ClaimModule | 0xf5DE26509C70F95D02BBa09A06960d1cEFbd0C27 |
AirdropModule | 0x0e1fD036506c1129e9F2A05c1a01DDCfa813b0Aa |
Adapter Contracts
Adapters interface with external protocols and are used in modules to gather and validate transaction parameters.
Contracts | Module | Address |
ZeroExApiAdapterV5 | Trade | |
UniswapV2ExchangeAdapter | Trade, CompoundLeverageModule, AaveLeverageModule | |
SushiswapExchangeAdapter | Trade, CompoundLeverageModule, AaveLeverageModule | |
KyberExchangeAdapter | Trade | |
OneInchExchangeAdapter | Trade | |
AAVEMigrationWrapAdapter | Wrap | |
AaveV1WrapAdapter | Wrap | |
AaveGovernanceAdapter | Governance | |
CompoundGovernanceAdapter | Governance | |
UniswapGovernanceAdapter | Governance | |
CompoundLibrary | Library | |
AaveGovernanceV2Adapter | Governance | |
CompoundBravoGovernanceAdapter | Governance | |
SnapshotGovernanceAdapter | Governance | |
UniswapTransferFeeExchangeAdapter | Trade | |
YearnWrapAdapter | Wrap | |
CompoundWrapAdapter | Wrap | |
UniswapV2IndexExchangeAdapter | General Index | |
SushiswapIndexExchangeAdapter | General Index | |
BalancerV1IndexExchangeAdapter | General Index | |
UniswapV3ExchangeAdapter | Trade / CompoundLeverageModule, AaveLeverageModule | |
UniswapV3ExchangeAdapterV2 | Trade / CompoundLeverageModule, AaveLeverageModule | |
KyberV3IndexExchangeAdapter | General Index | |
UniswapV3IndexExchangeAdapter | General Index | |
AMMSplitterExchangeAdapter | Trade / CompoundLeverageModule, AaveLeverageModule | |
AMMSplitterIndexExchangeAdapter | General Index | |
CompClaimAdapter | Claim | 0xE1e13a7E9344d0abE6C9027698972E8C53f63b76 |
Oracle Adapter Contracts
Oracle adapter contracts return prices for derivative assets such as cTokens, aTokens and Yearn vaults. These perform calculations based on an underlying oracle (Chainlink, Maker etc)
Contracts | Address |
UniswapPairPriceAdapter | |
CTokenOracle-DAI | |
CTokenOracle-USDC | |
CTokenOracle-WBTC | |
CTokenOracle-WETH | |
CTokenOracle-USDT | |
CTokenOracle-WBTCV2 | |
YearnVaultOracle-DAI | |
YearnVaultOracle-USDC | |
YearnVaultOracle-WETH | |
YearnVaultOracle-WBTC | |
YearnVaultOracle-USDT | |
YearnVaultOracle-DAIV2 |
Last updated