What is current recommended stack size and how long does it take to stake ?
I was intending to ask the same thing, re. optimal stack size.
The network difficulty target hovers around 200*2^224, meaning that on average it takes an output of weight N CLAM-days
2^256 / (N*200*2^224) = 2^32 / 200N = 21474836/N seconds = 248/N days to stake (assuming it never gets any weightier, which it of course will)
So a 5 CLAM output that is a week old (weight = 35) takes around 7 days to stake if it keeps that weight.
This looks like a dead end. Skip it if you like...
I guess the first thing to do is to find out how to calculate the expected time-to-stake taking the constant ageing into account:
Suppose we have an output with value V, and a network difficulty target of 200*2^224
For the first 1/V days it has a weight of 0 (weights are rounded down to an integer number of CLAM-days), so it can't stake.
ie. the probability of it staking in the first 1/V days is 0.
For the 2nd 1/V days it has a weight of 1, and has a 200*2^224/2^256 = 200/2^32 probability of staking each second.
The probability of it staking in the 2nd 1/V days is 1-(probability of it not staking in that period)
1/V days is 86400/V seconds, so that's:
= 1 - ((1-(200/2^32))^(86400/V))
For the 3rd 1/V days, weight = 2, probability of staking in any given second is 2*200/2^32,
and so the probability of it staking in the 3rd 1/V days is (1 - ((1-(400/2^32))^(86400/V)))
... and this feels like it's going nowhere.
Can someone with a clue help me out please?
The big picture:
No output gains any "weight" for the first 4 hours - it has 4 hours taken off its age before the weight calculation is done.
No output can stake until it is 'mature'. Staking makes it immature. It needs 500 confirmations after staking before it can stake again. 500 confirmations should take over 8 hours, so the 4 hours in the previous point should never be the limiting factor other than for recently moved (as opposed to staked) outputs. This probably puts an
upper limit on the optimal output size. If I put all my CLAMs into a single large output, it will probably stake not long after it has its 500 confirmations, but then I have to wait another 8 hours for it to get another 500 confirmations, so I'm limited to staking a few times per day.
Weights are rounded down to the next integer CLAM-day. So if you split your outputs into 0.001 CLAM pieces, each one will take 1000 days before it reaches a weight of 1, and so won't be able to stake for a few years. This puts a
lower limit on the optimal output size.
Perhaps this means that the optimal size is that which reaches 1 CLAM-day of weight just as the 500 confirmations are reached? 500 confirmation is meant to take 8.3333 hours, and 4 hours are taken off the age, so I want my output to have a weight of 1 when its effective age is 4.3333 hours. So its value needs to be 24/4.33333 = 5.54 CLAMs.
Thoughts?
Edit: of course, as they stake, the outputs will grow in size. We can't set them all to 5.54 CLAMs and expect them to stay at that size. Perhaps it's best to set them to 4 CLAMs, leave them to grow to 7 CLAMs, then when they reach 8, split them into two 4's and let them start over?