RE: Gridcoin StakeV8 in effect for 4000 blocks: stats and analysis

You are viewing a single comment's thread from:

Gridcoin StakeV8 in effect for 4000 blocks: stats and analysis

in gridcoin •  7 years ago  (edited)

Hi jringo, maybe you can help clear up some of my confusion.

I've been under the impression that we try to create 48k DPOR coins per day and coin creation through DPOR is metered via the Magnitude Unit. I've also been told there is a total of 115,000 mag.

Therefore, to hit our target of 48k coins per day, we'd need to see an average magnitude unit of 0.417 (48,000 divided by 115,000).

I'm aware the mag unit moves up and down depending on recent DPOR coin creation, but I've been around since March and I've never seen the Mag Unit above 0.3.

It seems we're only creating ~50% of our target. Why?

Also, what's the point of a moving mag unit? If we haved a fixed magnitude unit, wouldn't we create the target amount of DPOR coins (on a long-term basis)?

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 STEEM!
Sort Order:  

Mag unit also (wrongly) depends on the total magnitude in superblock. I think the rest of the function is not right as well.

    //7-12-2015 - Calculate GRCMagnitudeUnit (Amount paid per magnitude per day)
    StructCPID network = GetInitializedStructCPID2("NETWORK",mvNetwork);
    double TotalNetworkMagnitude = network.NetworkMagnitude;
    if (TotalNetworkMagnitude < 1000) TotalNetworkMagnitude=1000;
    double MaximumEmission = BLOCKS_PER_DAY*GetMaximumBoincSubsidy(locktime);
    double Kitty = MaximumEmission - (network.payments/14);
    if (Kitty < 1) Kitty = 1;
    double MagnitudeUnit = 0;
    if (AreBinarySuperblocksEnabled(nBestHeight))
    {
        MagnitudeUnit = (Kitty/TotalNetworkMagnitude)*1.25;
    }
    else
    {
        MagnitudeUnit = Kitty/TotalNetworkMagnitude;
    }
    if (MagnitudeUnit > 5) MagnitudeUnit = 5; //Just in case we lose a superblock or something strange happens.
    MagnitudeUnit = SnapToGrid(MagnitudeUnit); //Snaps the value into .025 increments
    return MagnitudeUnit;
Loading...

I'm not sure. I think @ravonn or @tomasbrod would be able to give you a much better answer than I would = )