Bitcoin Forum
April 20, 2024, 01:37:38 AM *
News: Latest Bitcoin Core release: 26.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 [25] 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 ... 501 »
  Print  
Author Topic: [ANN][CLAM] CLAMs, Proof-Of-Chain, Proof-Of-Working-Stake, a.k.a. "Clamcoin"  (Read 1150748 times)
This is a self-moderated topic. If you do not want to be moderated by the person who started this topic, create a new topic.
almightyruler
Legendary
*
Offline Offline

Activity: 2268
Merit: 1092


View Profile
July 13, 2014, 07:04:53 PM
 #481

Interesting, I've just noticed that PoS blocks do not appear in my transaction list. But they clearly show for you. I'm on a commandline client under *nix, presumably you're using the Windows -qt client?

My client has definitely staked before - it did so when I was about to send to Poloniex, locking part of the balance for about a day. The amount showed under 'stake' via 'getinfo'

The only transactions showing in the transaction list are the initial grants (30000+ confirms) and 3 sends a few days ago. Am I missing something?

edit: just to confuse things, a client I'm running on another machine - same version, same OS - does show PoS blocks as expected ('generate')

I am running the QT client under Linux precisely because of the issue you describe. I could find a way to get the command line client to reliably indicate that I owned any outputs recently used in staking. They would reappear after hitting maturity, and sometimes wouldn't disappear at all.

Are you using the same wallet.dat and block db for both clients, or are they effectively separate? Definitely a worry that a stake is not shown in the tx list. I also noticed that my client didn't seem to want to stake, even though I'd had PoS disabled for a few days (via reservebalance). Once reservebalance was set to zero, CPU usage did not change - typically I can see a PoS client climbing in the CPU usage list when it is eligible to stake.

I restarted from scratch 7.5 hours ago with a fresh wallet and zero reservebalance; will see what happens.
1713577058
Hero Member
*
Offline Offline

Posts: 1713577058

View Profile Personal Message (Offline)

Ignore
1713577058
Reply with quote  #2

1713577058
Report to moderator
"I'm sure that in 20 years there will either be very large transaction volume or no volume." -- Satoshi
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1713577058
Hero Member
*
Offline Offline

Posts: 1713577058

View Profile Personal Message (Offline)

Ignore
1713577058
Reply with quote  #2

1713577058
Report to moderator
kbroadfoot
Legendary
*
Offline Offline

Activity: 1302
Merit: 1000


Bass Player


View Profile
July 13, 2014, 07:34:36 PM
 #482

I needz MOAR CLAMz

kbroadfoot
Legendary
*
Offline Offline

Activity: 1302
Merit: 1000


Bass Player


View Profile
July 13, 2014, 07:51:16 PM
 #483

TX ID: 84ca6648976ce1c218f363acfccc273c6d87dee4f9649417761efac96bf28934

Reward: 0.11

( I win )

almightyruler
Legendary
*
Offline Offline

Activity: 2268
Merit: 1092


View Profile
July 13, 2014, 07:54:36 PM
 #484

TX ID: 84ca6648976ce1c218f363acfccc273c6d87dee4f9649417761efac96bf28934

Reward: 0.11

( I win )


07/13/14 19:49:58 DebugProofOfStakeReward hash=4f83c952dda0866791df seed=140933405 random=1145612615 randCoefficient=0.533467445 nCoefficient=0.000000000 nSubsidy=0.10

That appears to be a standard 0.1 block. The extra 0.01 is probably from fees.
kbroadfoot
Legendary
*
Offline Offline

Activity: 1302
Merit: 1000


Bass Player


View Profile
July 13, 2014, 08:06:36 PM
 #485

TX ID: 84ca6648976ce1c218f363acfccc273c6d87dee4f9649417761efac96bf28934

Reward: 0.11

( I win )


07/13/14 19:49:58 DebugProofOfStakeReward hash=4f83c952dda0866791df seed=140933405 random=1145612615 randCoefficient=0.533467445 nCoefficient=0.000000000 nSubsidy=0.10

That appears to be a standard 0.1 block. The extra 0.01 is probably from fees.

Aw....  I thought I ruled  Tongue

dooglus
Legendary
*
Offline Offline

Activity: 2940
Merit: 1330



View Profile
July 13, 2014, 08:40:40 PM
Last edit: July 13, 2014, 10:19:32 PM by dooglus
 #486


That appears to be a standard 0.1 block. The extra 0.01 is probably from fees.

Aw....  I thought I ruled  Tongue

Maybe you do, but "lucky" blocks will almost always have "messy" rewards, going to 7 or 8 decimal places.

I just plotted a chart showing how likely various rewards are:



What it's saying is that:

98.4682% of the time, your reward is exactly 0.1
99.5% of the time, your reward is very close to 0.1 (0.1003 or less),
99.6% of the time, your reward is 0.106 or less,
99.7% of the time, your reward is 0.2256 or less,
99.7659% of the time your reward will be less than 1,
99.8% of the time, your reward is 2.4948 or less,
99.8475% of the time, it's less than 10,
99.9% of the time, it's less than 47.702,
99.9239% of the time, it's less than 100,
etc.

Edit: I just noticed I set a new personal best mining reward:
http://khashier.com:2750/block/564c29502b6df08cc9ee84892b85e7ce9e03ac7fae4478375efab1d836b8ff96 got 0.16 clams - the 0.10 minimum and 6 separate 0.01 fees. Smiley

Edit2: added more data points to the text description

Just-Dice                 ██             
          ██████████         
      ██████████████████     
  ██████████████████████████ 
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
    ██████████████████████   
        ██████████████       
            ██████           
   Play or Invest                 ██             
          ██████████         
      ██████████████████     
  ██████████████████████████ 
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
    ██████████████████████   
        ██████████████       
            ██████           
   1% House Edge
phzi
Hero Member
*****
Offline Offline

Activity: 700
Merit: 500


View Profile
July 13, 2014, 09:29:23 PM
 #487

I just plotted a chart showing how likely various rewards are:

https://i.imgur.com/9ZpEh4M.png

What it's saying is that:

99.76% of the time your reward will be less than 1,
99.84% of the time, it's less than 10,
99.9% of the time, it's less than 60,
99.92% of the time, it's less than 100,
etc.
Thanks for running the calculations and creating this chart.  Definitely makes the hard-fork much more understandable.
dooglus
Legendary
*
Offline Offline

Activity: 2940
Merit: 1330



View Profile
July 13, 2014, 10:11:59 PM
 #488

I just plotted a chart showing how likely various rewards are:

https://i.imgur.com/9ZpEh4M.png

What it's saying is that:

99.76% of the time your reward will be less than 1,
99.84% of the time, it's less than 10,
99.9% of the time, it's less than 60,
99.92% of the time, it's less than 100,
etc.
Thanks for running the calculations and creating this chart.  Definitely makes the hard-fork much more understandable.

To be clear, I ran simulation for 10 million different hashes, counted up the rewards, and plotted it. Interesting how most of the chart is very close to a straight line when plotted with a log y axis.

I've been thinking about the best strategy re. deliberately not submitting min-reward blocks. It looks to me like withholding is possibly never a good strategy.  For example, 99.84% of the time the reward is less than 10, so if you decided to withhold blocks until you got a reward of 10 or more, on average you would be withholding way more than 100 0.1 blocks before you got your reward of 10. Similarly you need to withhold more than 1000 blocks to expect to get a reward of 1000 times 0.1 or more. And so on.

In short it looks like withholding low-reward blocks in the hope of getting a high-reward block later may be a losing strategy.

Just-Dice                 ██             
          ██████████         
      ██████████████████     
  ██████████████████████████ 
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
    ██████████████████████   
        ██████████████       
            ██████           
   Play or Invest                 ██             
          ██████████         
      ██████████████████     
  ██████████████████████████ 
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
    ██████████████████████   
        ██████████████       
            ██████           
   1% House Edge
kyma
Sr. Member
****
Offline Offline

Activity: 479
Merit: 250


View Profile
July 13, 2014, 10:16:06 PM
 #489

mac users are on the sidelines waiting to claim their clams?

maccd123
Full Member
***
Offline Offline

Activity: 223
Merit: 100


View Profile
July 13, 2014, 10:30:00 PM
 #490

I'm only getting stakes reward every 500 blocks(.1 Clam) Is there anything I can change? Thank you.
dooglus
Legendary
*
Offline Offline

Activity: 2940
Merit: 1330



View Profile
July 13, 2014, 10:47:56 PM
 #491

I'm only getting stakes reward every 500 blocks(.1 Clam) Is there anything I can change? Thank you.

Each time you use a transaction output to create a block, it takes 510 blocks before the resulting (slightly bigger) output is "mature". While you're waiting for the 510 blocks you can't spend or mine with that output.

You can split your output into 2 smaller outputs (by sending half of its value to yourself). Each smaller output will on average take twice as long to mine a block and so won't make a net difference to your "income", except if the 510 block waiting period is significant. That is, if your large coin is big enough that you would normally expect it to mine a block within 510 blocks, it's worth splitting it up until the parts are small enough that they each take an average of more than 510 blocks each to mine.

Just-Dice                 ██             
          ██████████         
      ██████████████████     
  ██████████████████████████ 
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
    ██████████████████████   
        ██████████████       
            ██████           
   Play or Invest                 ██             
          ██████████         
      ██████████████████     
  ██████████████████████████ 
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
    ██████████████████████   
        ██████████████       
            ██████           
   1% House Edge
dooglus
Legendary
*
Offline Offline

Activity: 2940
Merit: 1330



View Profile
July 13, 2014, 10:49:24 PM
Last edit: July 13, 2014, 11:35:48 PM by dooglus
 #492

I'm wondering what happened here:

http://khashier.com:2750/block/ca3766ab458030a2661c83aaaeb4e1ed816969bdd2e285f36a0e4525a144692f

I used a single 4.61 clam output to mine a block.

As a result I got back two separate outputs (2.3 and 2.31).

Why did that happen? The client for some reason decided that my 4.61 should be split into two smaller outputs?

Edit: I had previously used the same address twice to mine a block. Both those times it only made a single new output:



Edit2: I guess I've found the answer for myself.

The code says:

Code:
unsigned int nStakeSplitAge = 1 * 24 * 60 * 60;

...

                if (GetWeight(block.GetBlockTime(), (int64_t)txNew.nTime) < nStakeSplitAge)
                    txNew.vout.push_back(CTxOut(0, scriptPubKeyOut)); //split stake

...

    if (txNew.vout.size() == 3)
    {
        txNew.vout[1].nValue = (nCredit / 2 / CENT) * CENT;
        txNew.vout[2].nValue = nCredit - txNew.vout[1].nValue;
    }

...

ie. if an output stakes twice within 24 hours, split it up into two halves, where one half is rounded down to the nearest cent.

Now according to the block explorer it was a little over 24 hours, but maybe the timestamps aren't accurate. Checking with my local client, it seems like there really were 25 hours between the two events:



so I'm still not sure what's going on here.

Edit3: figured it out - GetWeight() takes off another 4 hours:

Code:
unsigned int nStakeMinAge = 4 * 60 * 60; // 8 hours

So if an output mines twice within 24+4 = 28 hours the output will be split.

Just-Dice                 ██             
          ██████████         
      ██████████████████     
  ██████████████████████████ 
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
    ██████████████████████   
        ██████████████       
            ██████           
   Play or Invest                 ██             
          ██████████         
      ██████████████████     
  ██████████████████████████ 
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
    ██████████████████████   
        ██████████████       
            ██████           
   1% House Edge
maccd123
Full Member
***
Offline Offline

Activity: 223
Merit: 100


View Profile
July 13, 2014, 10:52:25 PM
 #493

I'm only getting stakes reward every 500 blocks(.1 Clam) Is there anything I can change? Thank you.

Each time you use a transaction output to create a block, it takes 510 blocks before the resulting (slightly bigger) output is "mature". While you're waiting for the 510 blocks you can't spend or mine with that output.

You can split your output into 2 smaller outputs (by sending half of its value to yourself). Each smaller output will on average take twice as long to mine a block and so won't make a net difference to your "income", except if the 510 block waiting period is significant. That is, if your large coin is big enough that you would normally expect it to mine a block within 510 blocks, it's worth splitting it up until the parts are small enough that they each take an average of more than 510 blocks each to mine.
Thx
maccd123
Full Member
***
Offline Offline

Activity: 223
Merit: 100


View Profile
July 13, 2014, 11:36:42 PM
 #494



Interesting, I've just noticed that PoS blocks do not appear in my transaction list. But they clearly show for you. I'm on a commandline client under *nix, presumably you're using the Windows -qt client?

My client has definitely staked before - it did so when I was about to send to Poloniex, locking part of the balance for about a day. The amount showed under 'stake' via 'getinfo'

The only transactions showing in the transaction list are the initial grants (30000+ confirms) and 3 sends a few days ago. Am I missing something?

edit: just to confuse things, a client I'm running on another machine - same version, same OS - does show PoS blocks as expected ('generate')
Interesting. Can you tell me what is your Stake to mine those amounts per Block? Mine is only mining every 510 Blocks or so.
dooglus
Legendary
*
Offline Offline

Activity: 2940
Merit: 1330



View Profile
July 13, 2014, 11:47:30 PM
Last edit: July 14, 2014, 12:00:24 AM by dooglus
 #495

Interesting. Can you tell me what is your Stake to mine those amounts per Block? Mine is only mining every 510 Blocks or so.

Each output in your wallet can only mine once every 510 blocks.

The secret is to have multiple outputs in your wallet.

I just discovered that if a single output mines twice within 28 hours then the client itself splits it up into 2 roughly equal pieces, so they'll each mine less often in future (look up about 3 posts).

Edit: note also that the amount you get per block is now independent of everything other than luck. Almost all blocks get 0.1 CLAM, and a few lucky ones get more, up to 1000 CLAMS (see the chart I posted here not long ago).

Just-Dice                 ██             
          ██████████         
      ██████████████████     
  ██████████████████████████ 
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
    ██████████████████████   
        ██████████████       
            ██████           
   Play or Invest                 ██             
          ██████████         
      ██████████████████     
  ██████████████████████████ 
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
    ██████████████████████   
        ██████████████       
            ██████           
   1% House Edge
maccd123
Full Member
***
Offline Offline

Activity: 223
Merit: 100


View Profile
July 13, 2014, 11:56:36 PM
 #496

Interesting. Can you tell me what is your Stake to mine those amounts per Block? Mine is only mining every 510 Blocks or so.

Each output in your wallet can only mine once every 510 blocks.

The secret is to have multiple outputs in your wallet.

I just discovered that if a single output mines twice within 28 hours then the client itself splits it up into 2 roughly equal pieces, so they'll each mine less often in future (look up about 3 posts).
So.Sending of multiples of .73 to myself of the 7.3 Clams I have will Stake 10x more often? Seems easier than what I realize maybe.
phzi
Hero Member
*****
Offline Offline

Activity: 700
Merit: 500


View Profile
July 14, 2014, 12:26:21 AM
 #497

So.Sending of multiples of .73 to myself of the 7.3 Clams I have will Stake 10x more often? Seems easier than what I realize maybe.
Not quite.  The more CLAMs at an output, the more often it can stake.  But, the reward for staking is the same irrelevant of how many CLAMs are in the staked output.
dooglus
Legendary
*
Offline Offline

Activity: 2940
Merit: 1330



View Profile
July 14, 2014, 12:27:03 AM
 #498

So.Sending of multiples of .73 to myself of the 7.3 Clams I have will Stake 10x more often? Seems easier than what I realize maybe.

No, each one will be 10 times less likely to stake, but there will be 10 times as many of them.

The only difference is that the 510 waiting period is no longer significant compared to the expected time between stakings, so you won't be waiting for the 510 blocks to expire - you'll be waiting for your tiny outputs to stake because they're tiny.

I think the net effect will be slightly (nowhere near 10x) faster staking.

Just-Dice                 ██             
          ██████████         
      ██████████████████     
  ██████████████████████████ 
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
    ██████████████████████   
        ██████████████       
            ██████           
   Play or Invest                 ██             
          ██████████         
      ██████████████████     
  ██████████████████████████ 
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
    ██████████████████████   
        ██████████████       
            ██████           
   1% House Edge
dooglus
Legendary
*
Offline Offline

Activity: 2940
Merit: 1330



View Profile
July 14, 2014, 12:29:31 AM
 #499

Not quite.  The more CLAMs at an output, the more often it can stake.  But, the reward for staking is the same irrelevant of how many CLAMs are in the staked output.

That's right. So breaking your outputs up doesn't increase your expected return, *except* if your output is big enough that it would normally be staking before the 510 block maturation period had expired.

The only real change caused by having the block reward not be proportional to the days destroyed is that you can't stop staking for a month then come back and collect a month's worth of staking all at once. It's a stake-it-or-lose-it model now, which is better.

And the lottery is so hard to win that it's not worth gaming.

All in all I think it's a good change.

Just-Dice                 ██             
          ██████████         
      ██████████████████     
  ██████████████████████████ 
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
    ██████████████████████   
        ██████████████       
            ██████           
   Play or Invest                 ██             
          ██████████         
      ██████████████████     
  ██████████████████████████ 
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
██████████████████████████████
    ██████████████████████   
        ██████████████       
            ██████           
   1% House Edge
SuperClam (OP)
Hero Member
*****
Offline Offline

Activity: 784
Merit: 1002


CLAM Developer


View Profile WWW
July 14, 2014, 01:32:23 AM
 #500

Maybe you do, but "lucky" blocks will almost always have "messy" rewards, going to 7 or 8 decimal places.
I just plotted a chart showing how likely various rewards are:

What it's saying is that:
98.4682% of the time, your reward is exactly 0.1
99.5% of the time, your reward is very close to 0.1 (0.1003 or less),
99.6% of the time, your reward is 0.106 or less,
99.7% of the time, your reward is 0.2256 or less,
99.7659% of the time your reward will be less than 1,
99.8% of the time, your reward is 2.4948 or less,
99.8475% of the time, it's less than 10,
99.9% of the time, it's less than 47.702,
99.9239% of the time, it's less than 100,
etc.
...

That curve looks just about perfect Grin

Dooglus, You've went above and beyond!
We love it so much we went ahead and added it to the OP Post.
Did some fiddling in an attempt to render up a similar curve last night - amounting to much gnashing of teeth and little progress.
Much appreciated.

"The Brains" made essentially the same argument to me last night that you have just made in the thread here.
Hopefully the both of you are correct; and the lottery system is protected by the rarity, incentives, and structure of the reward.
If we find that isn't the case, nothing prevents us from reviewing the situation and improving the code base of coarse.



et. al.

Even with conventional proof-of-stake, there is a certain output (coin pile) size that is most "efficient".  In conventional proof-of-stake, this efficiency comes from the additional coins earned through compound interest, with the sweet spot being the point at which you stake an output immediately once it is mature, without having enough weight to stake prior.

In CLAMS, this should be quite similar, except of coarse that the efficiency and reward comes from staking additional lottery blocks as opposed to maximizing compound interest.

I think Dooglus' explanation of how this would function in terms of splitting up outputs was quite accurate with my understanding, and so I will re-post it here:

Each time you use a transaction output to create a block, it takes 510 blocks before the resulting (slightly bigger) output is "mature". While you're waiting for the 510 blocks you can't spend or mine with that output.

You can split your output into 2 smaller outputs (by sending half of its value to yourself). Each smaller output will on average take twice as long to mine a block and so won't make a net difference to your "income", except if the 510 block waiting period is significant. That is, if your large coin is big enough that you would normally expect it to mine a block within 510 blocks, it's worth splitting it up until the parts are small enough that they each take an average of more than 510 blocks each to mine.

There may be some additional efficiency gained in CLAMS that is similar to the "compound interest" argument.
Successfully staking more often will not earn you additional compound interest (as the reward is not based on the size or age of your output (coin pile)).  However, if your pile is inefficient and not staking shortly after reaching maturity - the additional coins from previous staking would increase weight and make the next staking somewhat easier.  Does that make any sense?



I want to thank Dooglus and Phzi for answering questions here in the post while I was away.

I know I speak for the entire team when I say, "Thank you" for your involvement.



Now!

We have a wide and reasonably fair distribution, though work needs to be done to "shout it to the rooftops".
We have a Proof-Of-Pearl/Lottery system, that has stake incentives that are fair, even, and align with the interests and security of the network.

The next target is ease-of-use, utility, and liquidity.
Also, I have made a pledge to myself to be much more pro-active and communicate better, concerning information and transparency with any future updates!



We have some projects that we are currently working on, that we aren't quite ready to let out of the bag just yet, but nothing is set in stone and additional ideas are what it is all about.

So!
Ideas anyone?

https://bitcointalk.org/index.php?topic=623147
Proof-Of-Chain, 100% Distributed BEFORE Launch.
Everyone who owned BTC, LTC, or DOGE at launch got free CLAMS.
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 [25] 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 ... 501 »
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!