Chainlink could upgrade their Aggregators and RoundIDs will not be chronologically ordered. Fee reclamation / exchanging would be blocked if the RoundID’s were wiped and the trades are not settled.
Ensure keeper system to incentivise
Exchange.settle()is called to settle fee reclamation in a timely manner.
Unsettled trades cause an in-determinate effect on the debt pool.
SNX incentive to be paid out proportional to the
trade amount size and exchange fees paid to make it not economically profitable to create multiple small exchanges for settlement to drain the incentives pool. The optimal balance would be that the USD value of the keeper rewards would be less than the
exchange fees paid + gas cost cost of an exchange transaction, so this would discourage gaming of the keeper’s rewards.
exchange transaction costs ~8x the amount of gas of
settle, so given that the keeper’s reward for settling exchange entries is less than multiples of the gas costs for
settle(), it would incentivise genuine keepers to settle exchanges.
For exchange entries with $0 fee paid, these will not earn any keeper rewards if settled.
In the case where the keeper reward is less than the cost of settling exchange entries (due to gas price costs and congestion) then this could be covered by the protocol which can settle the remaining entries.
Configurable Values (Via SCCP)
Each action that a keeper could perform will have a configurable amount of USD value / SNX / token rewards that are paid to cover gas costs and running a keeper system.
gas: currency/eth rate : 235.00 usd/eth
|Action||Est Gas Cost||Gas Price||$USD Cost||$USD Reward|
|2. Settle Exchange 1x entry||51,860||35 gwei/gas||0.4265485||0.75|
|2a. Settle Exchange 2x entries||98,886||35 gwei/gas||0.81333735||1.50|