Lowest PUT price discovery (and new SafeCoin issuance)

Introduction
The SAFE network can be seen as a decentralized autonomous non-profit organization. It has internal capital, in the sense that it can recycle and issue new SafeCoins (to a limited extent). It has income in SafeCoin from clients PUTting data. It also has expenditures in SafeCoin by sometimes rewarding vaults who successfully serve data GETs. Another (relatively minor) group of expenditures is app popularity rewards (which for simplicity I’ll further ignore).

So in a way SAFE can be seen as a regular economic actor. It is even theoretically possible for SAFE to go “bankrupt”. Bankruptcy would occur if the SAFE network would not be able to compensate vaults sufficiently to keep them providing their resources to the network. Data loss would occur and SAFE would fail in it’s goals. This thread is not about such doom scenarios though, I merely mention this to try to set a frame of reference. So let’s move on to the actual topic.


Lowest PUT price discovery
To be successful in achieving it’s goals, the SAFE network has to manage it’s resources wisely. One of the goals of SAFE is offering storage space at the lowest possible price. Since SAFE is a non-profit entity, that means offering storage space at a price at which it won’t go bankrupt, while minimizing expenditures at the same time. I’ll explain the way of minimizing of expenditures first.

The algorithm to minimize expenditures will do so by adapting the ‘farming difficulty’ according to the network’s needs. The ‘farming difficulty’ is a factor that influences the chance of vaults earning SafeCoin on serving GETs. The network will aim to have 20% free space available relative to it’s total capacity. So if the network is filling up above that level the farming difficulty is lowered to encourage more farming. The inverse is also true, to minimize expenditures.

Let’s go back to not going bankrupt. The goal here is to eventually break even with a minimal amount of capital left. This is because another goal of the network is, as the network grows over time, to issue to it’s participants (nearly) all of the 4.295 billion SafeCoins that may be in existence. So initially, the network is expected to lose capital, and those losses will taper off over time until (nearly) all SafeCoins are issued and then the network will break even.

Now we come to the part where I got stuck when thinking about this. The network has PUT income, GET expenditures, and an X amount of capital it is supposed to lose over time. The capital it loses over time is the result of the difference between PUT income and GET expenditures, of which all factors are dynamic. My question is: How can the network calculate the lowest price possible at a given point in time without knowing how much losses it ought to have made up to that given point in time? Or in other words: How can the network calculate the lowest price possible at a given point in time if the network doesn’t know how much SafeCoins ought to be in circulation at that point in time?


Maybe it does know this, I’ve near read anything about it though. I think it is important, because else I think the PUT price isn’t the ultimate dependent variable of this part of the equation, and probably won’t find the lowest value, or if the price is too low, the issuance of new SafeCoins might be too fast leading to significant inflation.

Don’t get me wrong, I don’t advocate issuance like in Bitcoin, where the only factor is the passing of time. MaidSafe’s goal is SafeCoin issuance following the growth of the network to aim for a proper, beneficial distribution of SafeCoin to avoid excessive wealth concentration among early adopters, and I think that’s a great goal.

Maybe it’s an idea to let issuance be dependent on the used capacity of the network? We could pick a goal, for example a network capacity of X exabytes, at which the network would have issued about all SafeCoins. When network growth would be stagnant, the SafeCoin supply wouldn’t grow significantly. When there is suddenly a huge popularity boost the SafeCoin supply would expand accordingly. This would be quite resistant to manipulation as well, as spending SafeCoin to PUT data just to increase the rate of issuance could never be profitable.

The capital it loses over time is the result of the difference between PUT income and GET expenditures, of which all factors are dynamic.

I think if the issuance of additional SafeCoin is kind of free floating by the balance of these two factors, we could easily miss the mark in setting the proper rate. Despite having a test net, we don’t know what the average GET per PUT ratio will be a few years later. It all depends on the way the network is mostly used. If it’s mostly for streaming data, that ratio will be much higher than if it’s mostly used for cold storage.

until (nearly) all SafeCoins are issued

To clarify the “nearly” here, I think it is essential that SAFE aims to always keep a small amount (maybe 1%?) of SafeCoins in reserve, just like it aims to keep 20% of storage space free. This way there is room for fluctuations. If suddenly the network capacity shrinks, the SafeCoin reserve can be used to increase the vault
rewards (through lowering the farming difficulty) without being fully dependent on instant additional PUT income (which may not be available).

I’m kind of with you, but can the capacity of the Network be known?
Are these things known to the Network itself but not knowable from observation, is that it?

The capacity of close groups is known in the close groups themselves, on average this balances out. There is no network statistic that is known network-wide directly, because the network is fully distributed. The close groups are the network, there is nothing else that has a wider overview. Groups of close groups can communicate and combine their stats of course, this can be used to get a statistically very close figure to the actual network-wide stats.

1 Like

Thanks for that clear explanation

Edit:
Are there not equally feasible methods of “bankruptcy” from relying on capacity as opposed to price? What I mean is, if capacity costs drop suddenly due to improvements in hard drive tech for example. Just asking if it’s a frying pan to fire situation? Out of my depth here really, so just asking.

1 Like

I’m tired and this not fully thought through… so likely off target.

On first pass, I wonder the problem above might come from not having a way for the network to accrue SafeCoins of its own.

If the network has a way to respond to positive and negative feedback, then perhaps it will resolve stability. Perhaps the network could look to keep 20% of SafeCoins and then see a natural tension about that point, following from the balance of gets and puts.

Two rules could be set… and perhaps use something like the inverse square law or stronger, enforcing it with natural dampening.

  • In the event that there are many Get requests, then the Put price rises OR(?and/or) the network gets rid of coins in excess of 20% by way to increased rewards to hosts.
  • In the event that Get requests drop off and it’s looking more like cold storage, then the Put price drops OR(?and/or) the network increases its holding to be 20%.

Perhaps that above is an endpoint, and less clear still how you move towards that, if the network is holding a lot of coins… no point in flooding the market too quickly. Perhaps release of coins should be relative to the size of network too - orders of magnitude, relative to what would be 1KB/1MB/1GB/1TB per person on the planet would be - I don’t know. Alternate approach, though I can’t think how, would be to look to ensure that holders of SafeCoin are seeing a fair % rise in the value of their holding relative to the network growth… in the event of network shrinking, then no additional coins added in and the loss is what it is, until it grows again.

I’m slightly surprised that it’s not already set in stone.
Do we know what speed or frequency corrections to the farming difficulty be made?

This would increase spare capacity of the network, meaning the farming difficulty can be increased, which means lower expenses for the network. I personally don’t see anything harmful in such a scenario, at least not for the network itself.

It can in theory, by making sure it pays less farming rewards than it gains from PUTs.

My idea with the proposal at the end of the OP is to have a target amount of SafeCoins in circulation based on network capacity. If there are more SafeCoins in circulation than that target, PUT prices are increased, if there are less SafeCoins in circulation, PUT prices are lowered. Close groups can measure this by keeping track of success or failure of the last X farming attempts, where X is a statistically high enough number. Alternatively (like initially, when the network just started) a close group can just GET X random SafeCoin addresses and see how many of those fail.

I think overall farming rewards being governed by the storage capacity safety margin of 20% is optimal, and shouldn’t have more factors than that.

Statistics like amount of persons using the network cannot be known by the network itself. Same for the price of a SafeCoin. At least not directly, other statistics may serve as indicators.

I’m not sure if it even works that way, because the network is not aware of time. So far I have assumed that all algorithms will be formula’s you can fill in with the variables (network statistics) and get an instant result. Really the Y = X kind. Don’t quote me on this though.

SafeCoin is actually one of the last envisioned features, like a cherry on the top of the cake. MaidSafe has some ideas for sure, but not necessarily complete. A lot of testing will be done with this in the test net I believe. But that doesn’t mean that it’s not useful and interesting to discuss theories on these forums already. :blush:

1 Like

Great explanation.

A couple things

  • I would like to buy safecoins in case this ancient creation ever comes to life.
  • Net Neutrality law goes active June 12th 2015 - I think we are out of think time.

Once they start saying what can and can’t pass through the wires - it’s over. We should have had
something - anything - running by now.

@Spongebob Rather off topic…

You can buy safecoins (MAID) but do so only on https://masterxchange.com/ or https://poloniex.com/

Net neutrality cannot stop useful services like SAFE… and there’s no long term rational or legal basis for doing so. Indeed, quite the opposite is true.

Once they start saying what can and can’t pass through the wires - it’s over.

Saying shit doesn’t make it true. ‘They’ operate in the same reality we do… even if they like to suggest otherwise.

We should have had something - anything - running by now.

So, what’s your excuse?.. There is no point rushing to someone else’s timeline. SAFE will work because it’s built well not because it’s rushed.

6 Likes