Motivation
As part of the recent development efforts into the new composable stable pool
and weighted pool
factories a new mechanism for adding existing and future types of protocol fees has been designed called the ProtocolFeePercentagesProvider
. The first new type of protocol fee has been added for the protocol fee on yield, which will determine the percentage of yield the protocol takes as a fee on tokens like wstETH
and bbaUSD
.
Given that the protocol fee is currently set to 50% I propose also initiating the protocol fee on yield to 50%. Governance can freely adjust this percentage in the future as with any other protocol fee.
Note that the existing metastable pools like wstETH, rETH, maticX, and stMATIC do not make any distinction between swap fee and yield fee - a 50% protocol fee is applied no matter the source of the income.
Specification
Ethereum
#1
The DAO Multisig 0x10A19e7eE7d7F8a52822f6817de8ea18204F2e4f
will initiate a transaction with the Authorizer 0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6
calling grantRoles
with the following arguments:
Roles: [β0xbe2a180d5cc5d803a8eec4cea569989fc1c593d7eeadd1f262f360a68b0e842eβ,β0xb28b769768735d011b267f781c3be90bce51d5059ba015bc7a28b3e882fb2083β]
Which corresponds to the roles for setFlashLoanFeePercentage
and setSwapFeePercentage
on the ProtocolFeeCollector
from here.
Account: 0x97207B095e4D5C9a6e4cfbfcd2C3358E03B90c4A
This is the address for the ProtocolFeePercentagesProvider
. This tx allows the new provider to set swap fee and flash loan fee on the fee collector.
#2
The DAO Multisig 0x10A19e7eE7d7F8a52822f6817de8ea18204F2e4f
will initiate a transaction with the Authorizer 0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6
calling grantRole
with the following arguments:
Role: 0x4907aec017cb19a28528e722251b40fd7c5eadd4f4a0f0c6a9bca9888f8a0b7f
This is the role for calling setFeeTypePercentage
on the ProtocolFeePercentagesProvider
which can be found here.
Account: 0x10A19e7eE7d7F8a52822f6817de8ea18204F2e4f
This will allow the DAO Multisig to call the above function.
#3
The DAO Multisig 0x10A19e7eE7d7F8a52822f6817de8ea18204F2e4f
will initiate a transaction with the ProtocolFeePercentageProvider 0x97207B095e4D5C9a6e4cfbfcd2C3358E03B90c4A
calling setFeeTypePercentage
with the following arguments:
feeType: 2
This corresponds to the Yield
fee type which can be verified here.
newValue: 500000000000000000
This sets the fee on yield to 50%
Polygon
#1
The DAO Multisig 0xd2bD536ADB0198f74D5f4f2Bd4Fe68Bae1e1Ba80
will initiate a transaction to the Authorizer 0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6
calling grantRoles
with the following arguments:
Roles: [β0xbe2a180d5cc5d803a8eec4cea569989fc1c593d7eeadd1f262f360a68b0e842eβ,β0xb28b769768735d011b267f781c3be90bce51d5059ba015bc7a28b3e882fb2083β]
Which corresponds to the roles for setFlashLoanFeePercentage
and setSwapFeePercentage
on the ProtocolFeeCollector
from here.
Account: 0x42AC0e6FA47385D55Aff070d79eF0079868C48a6
This is the address for the ProtocolFeePercentagesProvider
. This tx allows the new provider to set swap fee and flash loan fee on the fee collector.
#2
The DAO Multisig 0xd2bD536ADB0198f74D5f4f2Bd4Fe68Bae1e1Ba80
will initiate a transaction to the Authorizer 0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6
calling grantRole
with the following arguments:
Role: 0x716d6b6afc33d645e9c2c78937fc28afcca38a4ef927fb307679e9709b73214e
This is the role for calling setFeeTypePercentage
on the ProtocolFeePercentagesProvider
which can be found here.
Account: 0xd2bD536ADB0198f74D5f4f2Bd4Fe68Bae1e1Ba80
This will allow the DAO Multisig to call the above function.
#3
The DAO Multisig 0xd2bD536ADB0198f74D5f4f2Bd4Fe68Bae1e1Ba80
will initiate a transaction with the ProtocolFeePercentageProvider 0x42AC0e6FA47385D55Aff070d79eF0079868C48a6
calling setFeeTypePercentage
with the following arguments:
feeType: 2
This corresponds to the Yield
fee type which can be verified here.
newValue: 500000000000000000
This sets the fee on yield to 50%
Arbitrum
#1
The DAO Multisig 0x6207ed574152496c9B072C24FD87cE9cd9E17320
will initiate a transaction to the Authorizer 0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6
calling grantRoles
with the following arguments:
Roles: [β0xbe2a180d5cc5d803a8eec4cea569989fc1c593d7eeadd1f262f360a68b0e842eβ,β0xb28b769768735d011b267f781c3be90bce51d5059ba015bc7a28b3e882fb2083β]
Which corresponds to the roles for setFlashLoanFeePercentage
and setSwapFeePercentage
on the ProtocolFeeCollector
from here.
Account: 0x5ef4c5352882b10893b70DbcaA0C000965bd23c5
This is the address for the ProtocolFeePercentagesProvider
. This tx allows the new provider to set swap fee and flash loan fee on the fee collector.
#2
The DAO Multisig 0x6207ed574152496c9B072C24FD87cE9cd9E17320
will initiate a transaction to the Authorizer 0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6
calling grantRole
with the following arguments:
Role: 0xa0ace5c52c8f0974c521244ccf49a5a7166a9a6fcef623779b42d55fb2c5fbbe
This is the role for calling setFeeTypePercentage
on the ProtocolFeePercentagesProvider
which can be found here.
Account: 0x6207ed574152496c9B072C24FD87cE9cd9E17320
This will allow the DAO Multisig to call the above function.
#3
The DAO Multisig 0x6207ed574152496c9B072C24FD87cE9cd9E17320
will initiate a transaction with the ProtocolFeePercentageProvider 0x5ef4c5352882b10893b70DbcaA0C000965bd23c5
calling setFeeTypePercentage
with the following arguments:
feeType: 2
This corresponds to the Yield
fee type which can be verified here.
newValue: 500000000000000000
This sets the fee on yield to 50%
Optimism
#1
The DAO Multisig 0x043f9687842771b3dF8852c1E9801DCAeED3f6bc
will initiate a transaction to the Authorizer 0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6
calling grantRoles
with the following arguments:
Roles: [β0xbe2a180d5cc5d803a8eec4cea569989fc1c593d7eeadd1f262f360a68b0e842eβ,β0xb28b769768735d011b267f781c3be90bce51d5059ba015bc7a28b3e882fb2083β]
Which corresponds to the roles for setFlashLoanFeePercentage
and setSwapFeePercentage
on the ProtocolFeeCollector
from here.
Account: 0xacAaC3e6D6Df918Bf3c809DFC7d42de0e4a72d4C
This is the address for the ProtocolFeePercentagesProvider
. This tx allows the new provider to set swap fee and flash loan fee on the fee collector.
#2
The DAO Multisig 0x043f9687842771b3dF8852c1E9801DCAeED3f6bc
will initiate a transaction to the Authorizer 0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6
calling grantRole
with the following arguments:
Role: 0xc590d1824cb11a50f3d081768a616d291aa32f60faa7f4a4be551885a96e2eea
This is the role for calling setFeeTypePercentage
on the ProtocolFeePercentagesProvider
which can be found here.
Account: 0x043f9687842771b3dF8852c1E9801DCAeED3f6bc
This will allow the DAO Multisig to call the above function.
#3
The DAO Multisig 0x043f9687842771b3dF8852c1E9801DCAeED3f6bc
will initiate a transaction with the ProtocolFeePercentageProvider 0xacAaC3e6D6Df918Bf3c809DFC7d42de0e4a72d4C
calling setFeeTypePercentage
with the following arguments:
feeType: 2
This corresponds to the Yield
fee type which can be verified here.
newValue: 500000000000000000
This sets the fee on yield to 50%