Summary:
This proposal is to continue incentives to the set of Arbitrum pools that were already receiving ARB. Proposing to distribute the remaining ARB (1,421,611.166666666666472534 ARB) over 80 days, approx. 17,770 ARB per day.
Abstract:
Some background because I’m not sure there’s any previous proposals on the forum related to ARB distributions. Curve received 3,476,795 ARB to the DAO vault on Arbitrum on June 6, 2023 as part of an airdrop to DAOs/ecosystem partners. There were a couple of votes that passed to begin distribution of the ARB tokens to Curve pools on Arbitrum:
Vote ID 563 | Executed 1/13/2024:
Distribute ~1,150,000 ARB from Arbitrum grant to arbitrum LPs over ~8 weeks (60 days) with the initial set of receivers as follows:
- 2pool (0x7f90122bf0700f9e7e1f688fe926940e8839f353),
- crvUSD/USDC.e (0x3adf984c937fa6846e5a24e0a68521bdaf767ce1),
- tricrypto-crvUSD (0x82670f35306253222f8a165869b28c64739ac62e),
- crvUSD/USDT (0x73af1150f265419ef8a5db41908b700c32d49135),
- crvUSD/USDC (0xec090cf6dd891d2d014bea6edada6e05e025d93d),
- crvUSD/FRAX (0x2fe7ae43591e534c256a1594d326e5779e302ff4), and
- crvUSD/MIM (0x4070C044ABc8d9d22447DFE4B032405970878d06).
The set of receivers can be increased with future votes by the Parameter DAO.
Vote ID 631 | Executed 3/4/2024:
Enable ARB rewards for crvUSD/CRV/ARB tricrypto gauge and disable ARB rewards for the MIM/crvUSD gauge. Disperse 85K ARB to co-incentivize the MIM/crvUSD gauge over 30 days with the MIM team.
Vote ID 649 | Executed 3/19/2024:
Extend ARB rewards by adding an additional 811,252 ARB to the reward streamer, to be distributed over 42 days (approx. 19,315 per day).
The list of current ARB incentive receivers (Curve pools), which receive an equal portion of the stream, are:
Pool Name | Address |
---|---|
Tricrypto-crvUSD (3c-crvUSD) | 0x82670f35306253222F8a165869B28c64739ac62e |
crvUSD/USDC (crvUSDC) | 0xec090cf6DD891D2d014beA6edAda6e05E025D93d |
crvUSD/USDT (crvUSDT) | 0x73aF1150F265419Ef8a5DB41908B700C32D49135 |
crvUSD/USDC.e (crvUSDC.e) | 0x3aDf984c937FA6846E5a24E0A68521Bdaf767cE1 |
Curve.fi USDC/USDT (2CRV) | 0x7f90122BF0700F9E7e1F688fe926940E8839F353 |
crvUSD/Frax (crvUSDFRAX) | 0x2FE7AE43591E534C256A1594D326e5779E302Ff4 |
TriCRV-ARBITRUM (crvUSDARB…) | 0x845C8bc94610807fCbaB5dd2bc7aC9DAbaFf3c55 |
The RewardStream contract linearly vests the tokens in the contract evenly to all designated rewards_receivers over a specified reward_duration. In the case of this proposal, the 7 receivers will each receive approx. 17,770 ARB each week for an ~11 week distribution period. This will spend the remainder of the ARB in the DAO vault.
Motivation:
Proposing to spend the remainder because it’s a hassle to continue creating multiple votes for an inherently finite reward program. The incentives are overall a useful way to bootstrap crvUSD on Arbitrum and Curve Lending on Arbitrum, which requires sufficient crvUSD liquidity to process liquidations and pool liquidity where pool oracles are employed in lending markets. Not anticipating any major departure in strategy that would require adjustments to the reward distribution, so this proposal prefers to distribute all over a reasonable timeframe that slightly reduces the overall rewards to each pool so as not to shock the markets too much when ARB incentives end around early August.
Specification:
The vote requires several calls as a series of arguments to the Arbitrum Broadcaster (the contract that relays cross chain messages to the DAO agent on Arbitrum via Arbitrum Bridge):
Call via agent (0x40907540d8a6C65c637785e8f8B742ae6b0b9968):
├─ To: 0xb7b0FF38E0A01D798B5cd395BbA6Ddb56A323830
├─ Function: broadcast
└─ Inputs:
0x25877b9413Cc7832A6d142891b50bd53935feF82 (Arbitrum Vault)
{
"name": "transfer",
"params": [
{
"name": "_token",
"value": "0x912ce59144191c1204e64559fe8253a0e49e6548",
"type": "address"
},
{
"name": "_to",
"value": "0x452030a5d962d37d97a9d65487663cd5fd9c2b32",
"type": "address"
},
{
"name": "_value",
"value": "1.421611e24",
"type": "uint256"
}
]
}
(Transfer ARB to the agent)
0x912CE59144191C1204E64559FE8253a0e49E6548 (ARB token)
{
"name": "approve",
"params": [
{
"name": "spender",
"value": "0xf968e2e28460a8f419877df2ec86574636e8262c",
"type": "address"
},
{
"name": "amount",
"value": "1.421611e24",
"type": "uint256"
}
]
}
(Approve RewardStream to spend the amount of ARB tokens)
0xF968E2e28460a8F419877Df2Ec86574636e8262c (rewardStream)
{
"name": "set_reward_duration",
"params": [
{
"name": "_duration",
"value": "6912000",
"type": "uint256"
}
]
}
(set the reward duration to 80 days)
0xF968E2e28460a8F419877Df2Ec86574636e8262c (RewardStream)
{
"name": "notify_reward_amount",
"params": [
{
"name": "_amount",
"value": "1.421611e24",
"type": "uint256"
}
]
}
(begin distribution of the received amount to the RewardStream reward_recipients)