Search…
⌃K

Mainnet

Angle smart contracts on Ethereum

General Protocol Contracts

Contracts
Code
Addresses
ANGLE
Github
veANGLE
Github
agEUR
Github
Github
Github
Github
Github
Github
MerkleRoot Distributor
Github
Github
Github
Github
AngleRouter (V1)
Github
Github
Team/Investors/Advisors Vesting Contract
Angle Labs Multisig
Github
Github
Github
Github
Github

Core Module

Base Contracts

agEUR Collaterals

Contracts implementations can be found in the Core repo.
All tokens use 18 decimals, unless indicated otherwise. sanTokens have the same number of decimals as the collateral they correspond to.

agEUR Strategies

Different collateral types may rely on different strategy contracts in the Core module. Contracts implementations for the different strategies can be found in the Strategies repo.

Borrowing Module

Common Contracts

agEUR Collateral Types

Contracts implementations can be found in the Borrowing module repo.

Algorithmic Market Operations

Contracts
Code
Addresses
AMOMinter
Github
Curve agEUR-EUROC Staker (MultiStakerCurveAgEURvEUROCAMO)
Github
Curve AMO Keeper (BPAMOJob)
Github

Gauges

Liquidity gauges are a type of staking contracts used for type 0 gauges.
Type 0 gauges are on Angle Ethereum mainnet. veANGLE holders can boost their rewards for these pools.
Type 1 gauges are used for Angle Perpetuals rewards. Rewards on these gauges cannot be boosted with veANGLE.
Type 2 gauges are all the external staking contracts, either on other protocols (like Convex or Curve) or chains (like Polygon or Avalanche), that are incentivized with ANGLE rewards. Rewards on these gauges cannot usually be boosted with veANGLE.

Type 0 gauges

Reference contracts: LiquidityGaugeV4, MerkleRootDistributor
Following this governance vote, liquidity from the Gelato/Arrakis Uni-V3 agEUR/USDC and agEUR/ETH has been migrated from lower fees pools. Addresses of the new corresponding G-UNI tokens can be found here for agEUR/USDC and here for agEUR/ETH. These are the tokens which need to be staked in these gauges. Liquidity gauge addresses did not change and if you were staking in the contracts before the migration, your liquidity has automatically been migrated.
Following this governance vote, liquidity on Gelato/Arrakis in the Uni-V3 agEUR-USDC (on Polygon and on Ethereum) and agEUR-ETH (Ethereum) is no longer the only source of incentives for the UniV3 liquidity providers of these pools. While total rewards going to liquidity providers can still be voted at the specified gauge addresses, the allocation of these rewards is now computed off-chain according to a methodology specified here. In few words, rewards depend on both how useful the liquidity provided is (how much fees are generated) and how many agEUR are in the LP.
Rewards can be claimed on our MerkleRoot Distributor contract. The Merkle root is updated every week by a bot, and you can check how much you've accumulated from your past weeks liquidity by looking at the IPFS address stored in the MerkleRoot contract (IPFS Hash), or more simply by looking into the Angle App. Rewards do not expire and you can come and claim them anytime you want. G-UNI token holders (whether they have staked their tokens or not) are still eligible to rewards and do not need to take any action.
Rewards for liquidity providers are still boosted which means that the more veANGLE you have the more ANGLE rewards you'll get for a similar amount of liquidity provided.

Type 1 gauges

Following this governance vote, perpetual gauges were killed in October 2022, which means that they no longer receive ANGLE rewards, and that votes for perpetual related gauges are not taken into consideration by the system. All previously accumulated rewards can still be claimed on Angle app.
For the reference, here are the addresses of the gauge contracts corresponding to perpetuals.
Gauges
Addresses
DAI/agEUR Perpetuals*
USDC/agEUR Perpetuals*
FRAX/agEUR Perpetuals*
/* These gauge contracts have been removed from the system, and it is no longer possible to vote for it.

Type 2 gauges

Type 2 gauges' addresses are identifiers to be used only for voting purposes.
To support a Type 2 gauge, you should vote for the corresponding Gauge Address in the GaugeController contract. Yet to receive ANGLE rewards associated to these gauges, since they're associated to external staking contracts, you should stake your tokens on the corresponding Staking Platform given in the table below.
Names
Gauge Addresses
Types
Staking platforms
Staking addresses
Curve agEUR/ibEUR
0xfdA462548Ce04282f4B6D6619823a7C64Fdc0185
2
Curve (Ethereum)
Curve 3EUR
0x5EB715d601C2F27f83Cb554b6B36e047822fB70a
2
Convex (Ethereum)
Curve Bribes
0x957c66E97870e42301081217fBB1Aac45bc4eb4D
2
NA
UniV3 agEUR/USDC (0.01% - Polygon)* - Boosted
0x4EA4C5ca64A3950E53c61d0616DAF92727119093
2
Angle (Polygon)
Like the UniV3 gauges on Ethereum mainnet, rewards for UniV3 LPs on Polygon are no longer only distributed to Gelato LPs, but to all liquidity providers. Rewards can be claimed from the Polygon MerkleRoot distributor contract on the Angle App. The gauge address to vote on to reward UniV3 LPs is the same as the address that was used for G-UNI LPs, and G-UNI token holders do not need to take any action with their tokens if they still want to be eligible for rewards.
This gauge now gives boosted rewards to veANGLE holders.
Contract
Address
UniswapV3 agEUR/FRAX
SushiSwap ANGLE/ETH
Yearn 3EUR Pool Vault
Olympus Pro ANGLE Bonds

Deprecated

Contracts
Addresses
sanFEI-EUR Gauge
Uni-V2 agEUR/FEI Gauge
FEI/agEUR Perpetuals Gauge
Governor
RewardsDistributor
Timelock
agEUR staking
sanDAI-EUR staking
sanUSDC-EUR staking
sanFEI-EUR staking
sanFRAX-EUR staking
Gelato Uni-V3 agEUR/USDC staking
Gelato Uni-V3 agEUR/wETH staking
SushiSwap agEUR/ANGLE staking
Uni-V2 agEUR/FEI staking
Quickswap agEUR/USDC Staking (Polygon)