Stake Mining Split up your transaction outputs into amounts that are slightly more than the ticket price (for fees) with sendmany. Only 20 tickets are allowed per block and creating long chains of transactions from tickets can result in stuck funds. Using one output per ticket and not chaining their change outputs is ideal. Disable automatic ticket purchase by setting your ticket maximum price close to 0 with "ticketmaxprice". Manually purchase your tickets according to the current stake difficulty. Because only 20 stake tickets are allowed per block, check to see how many tickets are in mempool and how many tickets are in the last block. To get tickets into a block, you will need to have higher fees than other tickets in the mempool. Use redundant wallets to do your voting. A wallet failure and missed ticket results in losses of coins for you. Ensure your daemons and wallets are on fast, modern hardware with high speed, low latency connections.
I hope the GUI wallet will show all this info in one place like "PoS Dashboard" so we can easily buy tickets.
So, does this mean that 20 tickets are produced/used every block? Or is there a set amount of tickets (~40000)? Do I check the mempool by using getstakeinfo? I can see the poolsize is currently 41455. Not sure if that is the mempool though.
Every block, there are five tickets that are called to vote. Up to 20 new tickets (freshstake) can be taken from the mempool and put into a new block. There is no cap on total tickets. The target for poolsize is 40960. The price of tickets will adjust to try and maintain that target. From getstakeinfo, mempool is allmempooltix. Ownmempooltix is how many of those belong to you. Poolsize is how many mature tickets are waiting to vote.
Thanks @kaida that clears a lot up for me. But allmempooltix and ownmempooltix are both 0 for me. I'm new to PoS. Still have many things to learn.
The 0's you see for the mempool means it is empty right now. If you do a getstakeinfo after purchasing a ticket, you should be able to see it reflected in the mempool. You will probably see the mempool build up when the ticket price goes below 10.
Based on the above, from the Solo Stake Mining Wiki I think that your tickets 'earn' every 142 days guaranteed (or they just return. On average it would be closer to the middle ground (71 days). I've only been staking since Friday afternoon (48 hours) and all of my tickets are live, one of those tickets voted once (I think that that is all they can do, just one vote per ticket purchase. Now I need to figure out what I think I need to do to get the 'totalsubsidy' back into buying tickets) It's looking better than PoW returns for me. *some-day* doesn't always lead to the town of nowhere, especially if know how long it will take on average. My only regret is not getting in to PoS sooner. 14 credits ) seems steep. I watched dcrstats.com and got lucky at just over 8 credits. There has to be a limit where risk outweighs reward. Something I'd love to look into, but will probably never find the time to do. Not sure what I will do the next time round. Still trying to figure out many things, like will all my credits return at once or per ticket?
I have answered some of these in a PoS FAQ thread I started. If you ask your question there we can add it to the FAQ for everyone. See my sig.
What does it mean exactly? That you cannot buy more than 20 per block or that it is not feasible to buy more than 20 per block? Either way.. How do I check that? And does the automated ticket purchase take that into account?
Yes you can use various commands including getstakeinfo - See my sig PoS FAQ. It means the there are only 20 slots per block to insert a stake ticket(sstx). If there are more than 20 pending sstx in the mempool it will take mulitple blocks to clear the mempool. Stake ticket purchases are also placed in order of txfee. For example - There are 30 tickets in the mempool all with txfee of .025, requiring 2 blocks to complete. Block 1 with 20 sstx, block 2 with 10 sstx. You insert another sstx into the mempool with a txfee of .026 before block 1 is processed. Your sstx now goes to the front of the line and is processed in block 1. Block 2 will now have 11 sstx in it. But your sstx was placed at the front of the line because it had a higher txfee. The reverse is also true. If you do not specify a high enough txfee your sstx will keep getting pushed to the end of the line. This is no big deal when there are 2800 slots available until the next sstx price change. It is a big deal when there are only a few blocks left, maybe 60-80 slots and there are 200 sstx in the mempool. If the sstx price goes from say 10 to 15 then those who had lower txfees set will not get sstx at 10 because they kept getting pushed back to the end of the line. Now that this has been clearly (I hope) explained lets not go crazy and start doing .5 txfees! .01 to maybe .075 should be more than enough to get everyone in that wants in. Remember you have 144 blocks or 2880 slots over the next 12 hours to get your sstx. You dont have to have them in right after the price change. You have time, relax. Have a beer. We have yet to see all 2880 slots filled. There is room for everyone so far. I have to laugh at the people paying .15 txfee to get their sstx 5 or 7 blocks before I get mine in for .01 txfee 30 mins later. I think I even saw some as high as .3?!? WTF? Come on. Really? I have even done sstx with .001 txfee successfully when the mempool is empty.
If I don't set the fee manually, how does the wallet software set it? what's the algorithm? I have the impression I paid some ridiculous fees unknowingly, just running POS with the default settings.
That's correct. You can change tx fee with: dcrctl --wallet settxfee but I don't know if there will be any issues if you lower it too much.
The only issue is that your tickets will be included later if there is a queue in the mempool. In the last 6 blocks there was only 1 that hit the maximum number of tickets per block (being 20), three of them had 0 new tickets added. I've got my fee set to 0.01 and have no touble getting tickets in. I think if you go to 0.001, the chain may not like a number that low; I think you still need a fee of some sort.