Author

Topic: A small pool is (almost) as profitable as a big pool, regardless of difficulty (Read 1047 times)

newbie
Activity: 7
Merit: 0
Compare:

Quote
standard deviation for 50% pool, 15% increase, total btc after 4 months = +/- 1.11%

std dev for 20% pool, 15% increase, total btc after 4 months = +/- 2.03%

with:

Quote
standard deviation for 50% pool, no increase, total btc after 4 months = +/- 0.79%

std dev for 20% pool, no increase, total btc after 4 months = +/- 1.58%

The exponential difficulty increase doesn't affect the variance all that much.
newbie
Activity: 7
Merit: 0
Over the long run, (assuming no difficulty changes) all pools will generate the same amount of BTC. The problem is that if a small pool has even a little bit of bad luck early on then the miners will likely never recover when taking into consideration difficulty increases.

That's true. But on the other hand, if you have even a little bit of good luck early on, the bad luck later on won't catch up.

In the end, it mostly averages out. The average outcome (expected value) under exponentially increasing difficulty remains the same for all pool sizes. The variance (randomness in the total btc after N months) is only slightly bigger compared to constant difficulty (and, as always, is higher for smaller pools).
sr. member
Activity: 448
Merit: 250
It's Money 2.0| It’s gold for nerds | It's Bitcoin
Over the long run, (assuming no difficulty changes) all pools will generate the same amount of BTC. The problem is that if a small pool has even a little bit of bad luck early on then the miners will likely never recover when taking into consideration difficulty increases.
newbie
Activity: 7
Merit: 0
What the above means, is that roughly 16% (1 sigma = 98.16%, close to 100%) of the 0.01% pools won't mine a single block during a 4 month period, and that roughly 0.15% of the 0.1% pools (3 sigma = 93.12%, close to 100%) also won't mine a single block
The upside is that the other 16% of the 0.01% pools will earn twice their (probably rather small) expected reward Smiley

newbie
Activity: 7
Merit: 0
It would be interesting if you could narrow pool sizes down further in your simulations, e.g. 10%, 5%, 1% and solo mining.  Things tend to fall rapidly apart in practice whereas the theoretical model would hold.

standard deviation after 4 months, 15% difficulty increases:

10% pool - 2.99%
5% pool - 4.29%
1% pool - 9.77%
0.1% pool - 31.04%
0.01% pool - 98.16%

What the above means, is that roughly 16% (1 sigma = 98.16%, close to 100%) of the 0.01% pools won't mine a single block during a 4 month period, and that roughly 0.15% of the 0.1% pools (3 sigma = 93.12%, close to 100%) also won't mine a single block

(How standard deviations work: https://en.wikipedia.org/wiki/68%E2%80%9395%E2%80%9399.7_rule)

hero member
Activity: 686
Merit: 500
FUN > ROI
It would be interesting if you could narrow pool sizes down further in your simulations, e.g. 10%, 5%, 1% and solo mining.  Things tend to fall rapidly apart in practice whereas the theoretical model would hold.

Also slight side-note that I didn't see pointed out in the reddit thread, but which shouldn't affect the simulation anyway (just puts a 'knee' in your graphs, I'd think); after 36 months from now, the reward will already have halved.
newbie
Activity: 7
Merit: 0
I was asked by a reddit user to post this here http://www.reddit.com/r/Bitcoin/comments/282tsb/mining_in_a_small_pool_is_statistically_as/

Quote
I've performed the following simulations in response to http://www.reddit.com/r/Bitcoin/comments/2828s9/i_own_a_large_mining_operation_ill_explain_why_i/, where it was claimed that exponentially increasing difficulty shifts the advantage towards larger pools.

Variance for a smaller pool is bigger: http://imgur.com/PX4WEpT

but average earnings are the same: http://imgur.com/d7kUOPu

Code: http://pastebin.com/vighJ8MZ

Update: there doesn't seem to be that big of a difference in variance for pools of different sizes either:

standard deviation for 50% pool, 15% increase, total btc after 4 months = +/- 1.11%

std dev for 20% pool, 15% increase, total btc after 4 months = +/- 2.03%

std dev for 50% pool, 15% increase, total after 36 months = +/- 0.97%

std dev for 20% pool, 15% increase, total after 36 months = +/- 1.7%

Update: as it was pointed out, this is a simplified model. In practice, larger pools benefit slightly from network latency (regardless of changes in difficulty), and I attempted to estimate this effect in my reply:

Quote
an 8 second network-wide lag would cause 8/600 = 1.33% orphaned block rate. In turn, assuming all pools are honest and not withholding blocks, this would make the 50% pool mine ~0.4% faster than the 20% pool (0.0133 * (0.5-0.2) = 0.00399)
Jump to: