LIP: fee estimation algorithm for the dynamic fee system
This article deals with a new LIP: a fee estimation algorithm for dynamic fee system based on the priority of the transaction for users and the recent history of the blockchain.
The proposed system of dynamic tariffs ensures that the protocol requires a minimum fee and users will be able to set any commission between the minimum supplied and the limit allowed by the balance of their account. This has two effects on users. The first is that they need to know the exact minimum amount for their transactions, based on size and type, to assign a valid fee to them. The second is the need to give users some information about which commission they have to choose for their transactions, based on their priority.
The proposed rate estimation algorithm has several features. The first is that the output is in relation to the information contained in the blockchain, for example the commission charged for confirmed transactions. The third is that the most recent data will have more importance in the calculation. The fourth is that the system will recommend the minimum fee required if the last blocks have space for further transactions. The fifth is that the algorithm provides different estimations based on the priority users assign to their transactions. Finally, the output cannot be higher than the static rates of the current protocol. However, it must be clear to the user that the estimation of the commission calculated based on this algorithm is only a suggestion and not a rule provided by the protocol.
The proposed rate estimation algorithm is based on an exponential moving average (EMA). With this system, the data taken into consideration, at a theoretical level, can expand infinitely towards the past while their importance decreases exponentially.
Regarding the idea of transaction priority, proposers think that the economic interest of the delegates may be to choose the transactions with the highest commissions per byte to be included first in the blocks. Doing so at higher bytes rates will correspond higher priorities. Three different transaction priority levels are considered: low priority, medium priority and high priority. Each level corresponds to a commission level per byte.
To conclude we can see that the algorithm is fairly simple conceptually as it does not foresee future conditions but considers conditions of the recent past.