Set Uniswap oracles for UDT and most used ERC20 tokens
ID 854130...3593
ID 854130...3593
Proposed on: May 2nd, 2024
Proposed on: May 2nd, 2024
Votes
Proposal
Proposal
onyl calls!
Goal of the proposal
This proposal sets Uniswap oracle in Unlock factory contracts across the following chains: Polygon.
The goal is twofold: 1) enable the distribution of UDT for referrers when buying keys and 2) better calculation of the Gross Network Product (GNP) by taking into accounts the most commonly used tokens.
About this proposal
On each chain, wrappers for Uniswap oracle contracts have been deployed. An oracle is used to guess the current exchange rate of a specific token pair (for instance ETH/USDC).
The same oracle contract can be used for any pairs, with the limitation that there needs to be an existing / active Uniswap pool for that pair. Three different contracts are used to query the rate for the three tiers of Uniswap pool fees. Fee amounts are hundredths of the basis point so 100 fee unit is 0.01%, 500 is 0.05%, and 3000 is 0.3%.
For each token, the working oracle is selected and added to the Unlock contract
using the setOracle function.
How it works
The proposal uses a cross-chain proposal pattern that, once passed, will send the calls to multiple chains at once. This pattern has been introduced and tested in a previous proposal.
Here, the calls for each chain have been packed with Gnosis Multicall contract to be executed at once on the destination chain.
The calls
This DAO proposal contains 1 calls :
Polygon (137) 7 calls (packed in a single multicall)
- Oracle for WETH (0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619)
setOracle(0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619,0xfA3F427d2691ce680f96E6916a9Dac6c9042CBd2)(fee: 500) - Oracle for DAI (0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063)
setOracle(0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063,0x8c0AC149FabEeC9b759a43fC7d301B1a1D8DE0d0)(fee: 100) - Oracle for USDT (0xc2132D05D31c914a87C6611C10748AEb04B58e8F)
setOracle(0xc2132D05D31c914a87C6611C10748AEb04B58e8F,0xfA3F427d2691ce680f96E6916a9Dac6c9042CBd2)(fee: 500) - Oracle for USDC (0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359)
setOracle(0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359,0xfA3F427d2691ce680f96E6916a9Dac6c9042CBd2)(fee: 500) - Oracle for WBTC (0x1BFD67037B42Cf73acF2047067bd4F2C47D9BfD6)
setOracle(0x1BFD67037B42Cf73acF2047067bd4F2C47D9BfD6,0x8c0AC149FabEeC9b759a43fC7d301B1a1D8DE0d0)(fee: 100) - Oracle for USDC (0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174)
setOracle(0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174,0xfA3F427d2691ce680f96E6916a9Dac6c9042CBd2)(fee: 500) - Oracle for IXT (0xE06Bd4F5aAc8D0aA337D13eC88dB6defC6eAEefE)
setOracle(0xE06Bd4F5aAc8D0aA337D13eC88dB6defC6eAEefE,0x86399725a83bB14C47bB5ce8311Ed25378BAa162)(fee: 3000)
Onwards !
The Unlock Protocol Team