About the depeg and convert statistics : Decentralization matters and there is no free lunch or free 20% APR

in voilk •  3 months ago

    The APR for $HBD savings has been at 20% for about two years now, and there are multiple reasons why having the APR this high is a rather bad idea. The biggest problem though is all the pseudo analysis nonsense floating around claiming that the high APR is actually good for the platform.

    In January the 20% APR contributed about 1.1% to the inflation of the main coin $HIVE, I haven't yet had time to fix aiohivebot in such a way that I can check the numbers for the months after that, but its save to say that the APR is bleeding the main coin on its own in a non-minor way.

    The more $HBD is locked in saving, the less of it is used for in-community contracting and other internal economy activities, indirectly hindering the growth of the in-community economy, further pressing down on the whole HIVE ecosystem.

    This post isn't about this though. This post is about how the high APR is undermining the very function of $HBD: Being an algoritmnic stable coin.

    In this response on Twitter I shared part of my thoughts on how the 20% APR needs to come from somewhere.

    image.png

    Then responses came in from one of the more vocal high-APR fan-boys with the usual flawwed argumentation that these people always come up with. Its always a semi coherent macro level narative based on very little actual data to back any of it up. Somehow these fan-boys always prefer obfuscated macro level figures as arguments for something that can easily be observed as incentive driven activity on chain. The result: a view based purely on narative that contradicts the actual data in more ways than one. The simple reality is that there is no free lunch, and the high APR has made HBD pegging both rather centralized and fragile, and apart from that rather unresponsive. But we ca't say sthat without backing it up with some actual data.

    So lets do just that. Lets look at a week of insentive driven user actions on the chain, now, and let's compare it to how things were when the APR had only recently been set to 20%. That should give an idea of how two years of deincentifying participation in algoritmic pinning has affected the actual community participation.

    Lets look at this week first. We start at block 84,338,646 , the first block of April 8th, and we look at all convert actions from april 8th when the peg was OK, and we'll look at 200 hours, that is 8 days and 8 hours.

    Then after that we do the same, but we start at block 63,777,453, the first block of April 24 2022, a few days before there was a downward spike in the price of $HBD.

    We will be using this little aiohivebot script:

    import sys
    import asyncio
    import math
    import datetime
    from aiohivebot import BaseBot
    
    class MyBot(BaseBot):
        def __init__(self):
            #weekstart=84338646
            weekstart=63777453
            super().__init__(weekstart)
            self.hour = 0
            self.hour_amount_stab = 0
            self.hour_amount_nonstab = 0
            self.hour_accounts = set()
    
        async def convert_operation(self, body, timestamp):
            amount = body["amount"]
            if amount["nai"] == "@@000000013":
                # firstday = 8
                firstday = 24
                hour = (timestamp.day - firstday) * 24 + timestamp.hour + 1
                if self.hour != hour:
                    print(self.hour, ";",
                          round(1000000*self.hour_amount_stab)/1000000, ";",
                          round(1000000*self.hour_amount_nonstab)/1000000, ";",
                          len(self.hour_accounts))
                    for skip in range(self.hour + 1, hour):
                        print(skip, ";",  0.0, ";", 0.0, ";", 0)
                    self.hour = hour
                    self.hour_amount_stab = 0
                    self.hour_amount_nonstab = 0
                    self.hour_accounts = set()
                if body["owner"] == "hbdstabilizer":
                    self.hour_amount_stab += int(amount["amount"]) / math.pow(10, amount["precision"])
                else:
                    self.hour_accounts.add(body["owner"])
                    self.hour_amount_nonstab += int(amount["amount"]) / math.pow(10, amount["precision"])
                if hour == 201:
                    sys.exit(0)
    
    pncset = MyBot()
    loop = asyncio.get_event_loop()
    loop.run_until_complete(pncset.run())
    

    The script looks at 200 hours worthj of blocks and gathers per hour stats on convert operations.

    The output looks something like this:

    hour$HBD hbdstabilizer$HBD otherscount others
    10.05.6573
    26480.0734.01
    326.81336.1398
    40.04.6311
    56468.153.0023
    66465.53869.1495
    70.00.5311
    86468.303306.3494
    97170.15627.0216
    100.022.4614
    116465.5350.7736
    126462.9192.3434
    136460.319.5854
    146465.61717.37
    156463.00918.0085
    168335.35214.1127
    1712789.80164.09310
    1812071.4151846.46813
    1918.1431.0954
    200.062.38
    210.048.6387
    220.033.9149
    230.067.0748
    240.018.1796

    The abouve are the hours of April 24 2022. The first column holds an index of the number of the hour. The next column contains the sum of the centralized pegging pressure by @hbdstabelizer.
    The third column contains the conversion operation sum and account count for the decenttalized part of the pegging.

    It is not hard to see that even two years ago there was a centralization concern here, but thats not what this post is about.

    We do however need to discuss the hbd stabelizer. This is a centralized helper for algoritmic pinning of the $HBD coin. A centralized pegger that gets funded through the DHF. So when convert already bleeds the main coin and
    the 20% APR adds about 1% to inflation of the main coin, the stabelizer adds even more downward pressure on the main coin through the inflation allocated to the DHF. Inflation that gould have gone to developers. Remember the DHF pays out in HBD, so the very existance of the DHF, including the part that goes to the HBD stabilizer, creates downward pressure on the price of $HBD. Then the stabilizer uses those $HBD to reactively create upward pressure.

    Ideally the HBD stabelizer wouldn't be needed and all pegging could be done with decentralized algoritmic pinning driven by undeluted incentives. The simplest solution for that would be a two way convert combined with low APR.

    But lets take the stabilizer as a given for now. Let's look at its share in conversions over the 8 days we focused on right now.

    image.png

    First thing we notice looking at the blue (stabilizer) part, is that the stabilizer isn't exactly being aggresive in its response to the depeg. There may be reasons for this, most likely a limited buffer given the need for continous upward pressure.

    A second thing we see are four spikes in the hourly convert amounts. When we zoom in to these spikes we see that they all come from the same account: @mika.

    When we look across these 200 hours of data and look where the upward pressure comes from, the picture becomes quite grim:

    accountupward pressurepercentage
    @hbdstabilizer1107 $HBD/h66.53%
    @mika557 $HBD/h30.04%
    OTHERS57 $HBD/h3.43%

    This is a major centralization problem and one important piece of proof to show that the 20% APR is hurting the platform in more than one ways. Basicly without these two aqccounts, ONLY TWO accounts, the $HBD peg would be completely gone.

    image.png

    But how does this all compare to two years ago when the APR had just jumped up to the current whoping 20%? Well, its a bit mixed. The upward pressure in our reference 200 days from the stabilizer has significantly gone down, what is a big plus from a decentralization perspective but also a negative from the perspective of dynamic response potential because the total upward pressure potential seems to have gone down a lot too. But while the dip was much shorter lived two years ago than it is now, the participation in the uprard pressure of other accounts has gone down from 90 %HBD/hour on average to 57 $HBD/hour on average. A drop of about 37%.
    The average number of non stabelizer accounts using convert in a single hour has gone down from 6 to 2.9, more then 50%.

    So what can we do about it?

    Decentralization matters and there is no such thing as a free lunch. The high APR fan-boys will no doubt continue to spread their macro data inspired narative to convince users and witnesses alike about how good the high APR is for the platform and the community. For the sane amongst us there are two things we can do. We can allocate some of our $HBD, given we have some to begin with, towards decentalizing the peg. When I finish my aiohivebot efforts on supporting signing, I'll be sure to include an example bot that implements a simple pegging support algoritm. But probably more important, we can change our witness votes.

    Even if @isnochys and @bethalea don't have their price feed in order, theve set their APR vote to 0%, it would send a cool signal if we could vote these two into the top hundred. Things don't look so good in or close to the top 20, but @smooth.witness has set his vote to 7%, and so has @anyx at position 23. Again, it would send a signal if @anyx could make it into the top 20. A majority of all top 20 witnesses is currently voting for 20% APR. Just move some of your witness aprovals in the top 20 from 20% witnesses to witnesses voting for 15% and below. It won't create big shifts, but if enough of us wake up to the fact that decentralization matters, and there are no free lunches, then maybe some of these top witnesses will see the signal and start thinking.

    There is a third thing that we can do, and if the APR goes back to a normal level probably should do, but NOT right now. I repeat: NOT NOW. But when APR ends up low, the stabalizer will still be a major decentralization chalange, and as much as I think everyone should aprove of @smooth.witness , the same isn't true about his stabilizer proposal in the proposals. Again, not NOW because there now is zero incentive for anyone with APR this high to contribute to decentralized upwards pressure and enven if there was, you don't just jump from 3.4%to a hundred.

    Finaly, last but not least, one thing you can do about it is to open your mouth anb log about it if you understand it. The fan-boys aren't going to shut up about their milk cow that they convinved themselves is good for the platform. They won't shut up about their idea of this mythical perpetual motion machine that in their mind is actualy generating wealth from nothing. About this being the ultimate free lunch. Tell this nonsense often enough and people will start believing it. Many already do while the data points showing otherwise should be waking everybody up but it isn't.

    If you understand crypto, understand HIVE and understand that decentralization matters and there are no free lunches, than please, write about it, blog about it, post about it on other social media and don't keep quiet when another fan boy is using half related marcro figures to convince the uninformed about their broken narative.

      Authors get paid when people like you upvote their post.
      If you enjoyed what you read here, create your account today and start earning FREE VOILK!