Transaction Fees on BTC and BCH

Encounter a problem related to the pool or have a request for a feature? Post your issue here and we will help you out.
Forum rules
Welcome to the System Support forum! Encounter a problem related to the pool? Post your issue here and we will help you out.

Keep in mind that the forums are monitored by PROHASHING less closely than the official support channels, so if you have a pressing issue, please submit an official support ticket so that our Support Analyst can look into your issue in a timely manner.

We cannot answer financial questions related to your account on a public forum, so those questions should always be submitted through the orange Support button on prohashing.com/about.

For the full list of PROHASHING forums rules, please visit https://prohashing.com/help/prohashing- ... rms-forums.
Locked
robinsoz
Posts: 25
Joined: Wed Jan 16, 2019 10:05 am

Transaction Fees on BTC and BCH

Post by robinsoz » Wed Jan 30, 2019 10:33 pm

I am wondering if there is an issue with the server including transaction fees in Bitcoin and Bitcoin cash blocks.

If you look on the main page, under "Live Coin Status" you will see that the value of the transactions listed for bitcoin is consistently way below the value of the transaction in the average bitcoin block.

If you check the bitcoin cash blocks mined by prohashing on the coin.dance website - you will see that blocks mined by prohashing consistently have far fewer transactions than the average bitcoin cash block.

The value of the transactions in a bitcoin cash block tends to be minuscule - but the value of transactions in a bitcoin block is substantial.
User avatar
Steve Sokolowski
Posts: 4585
Joined: Wed Aug 27, 2014 3:27 pm
Location: State College, PA

Re: Transaction Fees on BTC and BCH

Post by Steve Sokolowski » Thu Jan 31, 2019 8:45 am

Great find. This issue has to do with how the system manages work restarts. It costs money to send miners a work restart, because ASICs waste as long as a second before starting mining a new block. To reduce work restarts, the pool only ever sends a new block to miners once. That means that miners can mine a bitcoin block for 10 or 20 minutes or longer without restarting work.

An alternate way to mine is to send new blocks to miners as additional transactions arrive. If that were done, then the pool would receive the transaction fees from the transactions, but miners would suffer losses due to the additional work restart.

When the networks are full and congested, there are always enough transactions to fill up a block even right after the previous block was found and the two methods are equivalent. Now, the networks are empty, so every transaction is included in every block, leaving few in the mempool to be included in the next right after the previous block was found.

Whether or not it is economical to include additional transactions and risk a work restart can be determined by multiplying the block reward times the amount of time that would be wasted restarting. If it takes 0.5s to process a work restart, and we send work restarts every minute to get new transactions, then 1/120 of the mining time is wasted. Since blocks are worth 12.5 bitcoins, that means that the transaction fees would have to be worth 0.1 bitcoins in order for us to justify issuing restarts to include them.

The fees are not that high currently, so the mining server does not issue restarts for these transactions. The server has code to detect when the fees are high enough to justify the lost mining time. If transaction fees on the network rise above 0.1 bitcoins per block, or whatever the actual work restart average time causes that number to be, then the mining server will begin to send work restarts to customers to include new transactions.

It's also worth noting it's not quite this simple. If transaction fees rise above 0.1 bitcoins, it's likely that the network will always be full. The calculation is between existing fees and new fees available since the last block, and it would still be rare that available fees would increase from 0.1 to 0.2 bitcoins in the course of one block. Additionally, the system is configured such that additional money is required above that, because we've determined that customers tend to react strongly to seeing lower hashrates on their miners, even if they are earning more money at that lower hashrate. Therefore, we require the amount of fees to be 50% higher to satisfy customer perceptions. As far as I'm aware, this number has never been met on any of the large networks.
Locked