Monday, July 7, 2014

Proof of Stake Interest Scaling: WYSINWYG!

So I've bagged on Proof of Stake "minting" before, and I've said numerous times that I don't expect much to happen. Blackcoin has 1% nominal annual interest, but other coins are promising much higher rates. What if I told you that the actual interest you'll receive may be far less than the stated PoS interest rate? You'd probably think, "That's terrible -- there's no reason to hold any PoS coin unless you're simply speculating!" Well, it appears after further review that this is exactly the case with some of the PoS coins out there! Case in point: Piggycoin 2.0 (PIGGY).

Let me give you an example of what I previously thought was happening, then some numbers that prove this is absolutely not the way it works. (I've been digging through the source code, and frankly it's tough to follow so I have not yet quite figured out where things "go wrong".) Let's start with something simple: 15% annual interest.

If you have $1000, at the end of the year if it's compounded yearly, you'll have $1150. With PoS I assumed things would function in a similar manner, but with more frequent compounding, and that seems to be the way most people expect it to work. So if you have 1000 coins and the PoS rate is 15% yearly, then if your coins hit a PoS block and their coin age is 1 day, you'd receive (1000 coins * 0.15 /365) coins from PoS daily on average, which would be ~0.411 coins. What happens if you don't hit a block for a day is that your coins continue to age, so if they don't hit a PoS block for 10 days then their coin age is 10, so you'd get 10X the PoS reward -- 4.11 coins every ten days. Thus, in theory at the end of a year you'll average out to the 15% figure -- and if you hit a block every day, you're effectively getting compounded daily interest, so slightly more than 15% yearly.

Here's the problem with PIGGY: that's not actually what's happening! I know this because I mined about 212K PIGGY, and I talked about the features of the wallet. PIGGY is basically yet another alt-coin, with the biggest claim to fame being that it has a somewhat more advanced/useful wallet. (It has things like an integrated block explorer, a Statistics page, and even a chat client.) My analysis is that, despite the improved wallet, I just don't see PIGGY going anywhere. Naturally, the staunchest PIGGY supporters think I'm an idiot/jerk/[insert derogatory name]. I posted my "review" in their ANN thread, which obviously doesn't help much, but here's where things take a turn for the worse.

One of the users said something to the effect of, "I just bought 500K PIGGY and I should be getting around 205 PIGGY every day from PoS, but I'm not. What's going on?" Someone tried to explain what was happening ("The difficulty of PoS blocks is higher now!"), but their explanation didn't make sense. Then I looked at my wallet, and what do you think I found? I mined PIGGY initially on IPOminer and then transferred 212,192.5036 PIGGY to my personal wallet at 2014-6-19 12:12:43 (feel free to look that up in the block explorer). On 2014-6-19 23:53:10 I hit my first PoS block, which means according to my previous understanding I should have seen a PoS block reward of 42.42033355. (The 212K coins had accrued precisely 0.486458 days of coin age, and with 15% annual interest that would be 0.019991% interest for the time elapsed.) My actual block reward from that first "minted" block after just under half a day: 2.06481019 PIGGY. The rewards are about 5% of what I was expecting to see, or off by a factor of 20X, just like the other user!

I dug through the source code at this point and still didn't come up with a clear understanding of what's going wrong, but since we have coins that have been doing PoS minting for a while, I figured I'd go check one of those. Enter Asiacoin. (Why Asiacoin? Well, it's 100% annual interest, and the block explorer shows the number of outstanding coins quite clearly.) Let's start first with the end of the PoW phase, at block 20160. The total number of AC mined in the PoW phase is 171370113.067912, and that was on 2014-05-01 06:47:30. Asiacoin was created by a complete scammer, but the PoS transition went more or less smoothly and so the first PoS block of 20161 came at 2014-05-01 07:53:44. The block reward from PoS? A whopping 3.562109 AC from 137.55704 AC that was mined/transferred in on 2014-04-17 04:44:56 -- so it had a coin age of around 14 days. 100% * 14 / 365 = 3.83%, so I would have expected 5.27616 for the PoS block reward. The returns get worse as time goes by, unfortunately.

Asiacoin launched at 2014-04-16 16:00, and the PoS phase has been going on for around 9.5 weeks now. During that time, the total number of AC has increased from 171,370,113 to 182,981,295 (at the time I write this we're on block 114262). That represents an increase in the total number of coins of just 6.77%, and 9.5 weeks (slightly more) represents 18.2% of the year. So, even if only half of coins are staking (which is possible) the returns from PoS minting are less than one half of the stated 100% nominal annual interest. That's actually not bad if we were dealing with fiat where the value is more or less static, but that's not the case with cryptocurrencies obviously. AC was still valued at over 500 satoshi after the scam was discovered, back on May 13. Today, AC is valued at roughly 150 satoshi (give or take 10 satoshi). So even if you were getting 100% returns annually, in just one month the value has dropped by by half, fully offsetting (and then some!) any returns from interest.

Let's do another example with AC, though. Here's an address with 1.945 million AC. The AC was added after being purchased from MintPal, it appears, in two large chunks of 1.25M and .45M. Since then, the wallet has mostly been offline, with only a couple online sessions to get some of the coins due from staking. On 5/30, the 1.25M AC staked and became 1.34M AC. The next time that chunk of coins staked was on 7/5 when the 1.34M AC became 1.43M AC. Looking at that second transaction, 35 days had passed so the interest should have been 9.59%; the actual interest was 7.14% -- it's not off by a massive amount, but again it's still not giving the expected 100% annual returns (plus compounding interest).

I strongly suspect if I were to take the time and check on the dozens of other PoS coins I'd find similar problems with many of them. After all, many of these coins are simply taking an existing coin, cloning the source, modifying a few parameters, setting up some seed nodes (and a premine), and calling it a day. If the original source has some bad logic, all of the clones inherit those flaws.

Bottom line on PoS coins: it's definitely not at all about the PoS interest -- that's basically worthless on most coins to begin with (hello 1% Blackcoin, 2% Whitecoin, etc!). What will make PoS coins profitable is if they somehow become useful. That's not really happening with any that I can really see -- BC is doing "okay" perhaps, but it's one of the best examples and it's not even really healthy in my book. NXT is pretty much a joke as far as I'm concerned, and everyone holding NXT hoping it will increase in value would be better off trading it and figuring out ways to get more places to accept NXT for goods/services. But wait...why would you want to accept NXT if you could just accept BTC, LTC, or any number of other cryptocurrencies instead? Hmmm.... What's really driving the price on all of these PoS coins seems to be pure speculation more than anything, not to mention market manipulation.

Again, I want to note that not all PoS coins have problems with the amount of interest they're generating. Blackcoin seems to be on target, and CAIx looks right as well. HBN scales the PoS rewards, but it's clearly visible in the code and it's part of the specifications. If someone wants to figure out precisely why the returns from PoS on AC and PIGGY are broken and drop me a note about where in the source code it's happening, I'll be happy to update this. Personally, I feel if a coin promises 15% interest yearly, that's what it needs to deliver -- let the market dictate the price, but the interest rate should be set in stone -- WYSIWYG (What You See Is What You Get). This business of scaling interest rates without publicly stating how the scaling happens is just one more shady practice that will result in people getting burned.

No comments:

Post a Comment