Bitcoin Forum

Bitcoin => Bitcoin Discussion => Topic started by: haploid23 on August 11, 2011, 09:07:00 PM



Title: how to calculate BTC/day from hash rate and difficulty?
Post by: haploid23 on August 11, 2011, 09:07:00 PM
there are a bunch of bitcoin calculators online to project profit after plugging all numbers. so i'm just curious, what's the equation to figure out how many coins you theoretically get using the difficulty and hash rate?


Title: Re: how to calculate BTC/day from hash rate and difficulty?
Post by: kjj on August 11, 2011, 09:27:38 PM
(Hash Rate) / (Difficulty * 2^32) = blocks found per unit time, ignoring changes in difficulty, stales, and other complications.

Current Difficulty is 1888786.705...
So, multiply that by 2^32 and you get 8.1122E+15.

Say you get 250 Mhash/sec, or 250,000,000 hashes per second.  You should then expect to find 0.0000000308 blocks per second, or 0.00266 blocks per day.  Multiply by about 50 BTC per block, and you have 0.1331 BTC per day.

If you are using a pool (and you probably should be), don't forget to subtract the pool fee.


Title: Re: how to calculate BTC/day from hash rate and difficulty?
Post by: phillipsjk on August 11, 2011, 09:30:47 PM
The odds of processing the next block: (your (or your pool's) hash rate)/(everybody's hash rate)

One block is supposed to be generated every 10 minutes on average. At the moment, each block mints 50 coins. Within 2 years, that will drop to 25 coins.

If you are solo mining, the any "BTC/day" formula is fairly pointless. You can get lucky and process a block right away, or you can get unlucky and never process a block as the network hash rate outpaces your hash rate.

With pooled mining, people pool thier hash rate to get a more reliable, but smaller pay-out. This has some risk, as the mining pools must be trusted not to tamper with the network.


Title: Re: how to calculate BTC/day from hash rate and difficulty?
Post by: haploid23 on August 12, 2011, 07:01:14 AM
(Hash Rate) / (Difficulty * 2^32) = blocks found per unit time
thanks, this is exactly what i was looking for  :D



If you are solo mining, the any "BTC/day" formula is fairly pointless. You can get lucky and process a block right away, or you can get unlucky and never process a block as the network hash rate outpaces your hash rate.
yup, i understand that, but i don't think it's all pointless. i'm guessing you think it doesn't apply because the variance for solo mining is too large since it's all based on probability. but statistically, solo mining and pool mining should give the same output if you were to be mining for an eternity, and also assuming there's no pool fees, downtime, etc.

that formula should still apply for a theoretical output, even for solo mining


Title: Re: how to calculate BTC/day from hash rate and difficulty?
Post by: Departure on August 12, 2011, 09:43:29 AM
(Hash Rate) / (Difficulty * 2^32) = blocks found per unit time, ignoring changes in difficulty, stales, and other complications.

Current Difficulty is 1888786.705...
So, multiply that by 2^32 and you get 8.1122E+15.

Say you get 250 Mhash/sec, or 250,000,000 hashes per second.  You should then expect to find 0.0000000308 blocks per second, or 0.00266 blocks per day.  Multiply by about 50 BTC per block, and you have 0.1331 BTC per day.

If you are using a pool (and you probably should be), don't forget to subtract the pool fee.

Hmm my decimal is ending up in the wrong place and therefor not calculating out very well

1888786.705 * (2^32) = 8112277127094599.68

250000000 / 8112277127094599.68 = 3.0817487628105370016654421548356e-8

43200 * 3.08174876281 = 133131.546553392


Title: Re: how to calculate BTC/day from hash rate and difficulty?
Post by: Meni Rosenfeld on August 12, 2011, 10:03:43 AM
I discuss this, among other things, in Analysis of Bitcoin pooled mining reward systems (http://bitcoil.co.il/pool_analysis.pdf).