1
Around block 564815 (2019-02-26 23:40 UTC), the mempool was empty. I noticed that my two nodes are giving very different estimates for transaction fees to be used:
Node 1
- Version: 17.1.0
- Number of peers: 21
- Synched for: about three weeks
- Prunned: 3GB
// see how many transactions are there in the mempool
>bitcoin-cli getrawmempool | wc -l
4027
>bitcoin-cli estimatesmartfee 5 {
“feerate”: 0.00021195,
“blocks”: 5 }
>bitcoin-cli estimatesmartfee 5 ECONOMICAL {
“feerate”: 0.00009715,
“blocks”: 5 }
Node 2
- Version: Bitcoin core 17.0.0
- Number of peers: 8
- Synched for: about 5 hours
- Prunned: 3GB
# see how many transactions are there in the mempool
>bitcoin-cli getrawmempool | wc -l
3999
>bitcoin-cli estimatesmartfee 5
{
“feerate”: 0.00008823,
“blocks”: 5
}
>bitcoin-cli estimatesmartfee 5 ECONOMICAL
{
“feerate”: 0.00001000,
“blocks”: 5
}
The node that has been synchronized for only 5 hours and is less well connected seems to be estimating the fee better than the one that has been synchronized for three weeks. Why is the "best" node the one that gives the worst fee? Why are the fee estimates so different and what can be done to make them more accurate?
I was wondering if I copied .bitcoin/fee_estimates.dat from the node with higher uptime to the node with lower uptime, it would make them equal? If not, is there any way of exporting the feerate estimate data from one node to another? And how long is enough for the fees to become accurate? I assume there is a cap after some days of running, no? – Pedro – 2019-02-28T09:58:17.930
It seems that the trick I suggested really works, as morcos said here: https://bitcoin.stackexchange.com/questions/59854/where-are-the-new-smart-fee-estimate-data-saved-can-the-file-be-re-used
I was wondering what happens if a node hsa been running for a very long time and then it's stopped and restarted one month later. Are the estimates from one month ago decayed so much they are negligible or they still bear a heavy wait because it was "just before it restarted"? Also, is there a way to deserialize the information in fee_estimates.dat? I'd like to take a look at the information inside.