Calculate EOS RAM price using Bancor protocol

in eosram •  6 years ago 

I 've just figure it out how it works. In EOS we buy RAM from virtual market maker. I've said virtual because there is no real market maker. We buy RAM from system that run by Bancor Protocol. There is no need to match seller and buyer at the specific time. The price of RAM adjust according to number of RAM and number of EOS token using in Bancor algorithm. I 'll explain by starting with Bancor formula

CW(Connector Weighted) = Balance of Connected Token/ Market value of Smart Token

But Market value of Smart Token = price of Smart token x number of Smart Token
So

Price of Smart Token = Balance of Connected Token/ number of Smart Token x CW

In EOS RAM market price we can substitute above equation as following

RAM price = Number of EOS balance/(RAM*CW)

CW is connector weighted,according to https://medium.com/@bytemaster/eosio-ram-market-bancor-algorithm-b8e8d4e20c73 It was set as 0.0005

As current RAM price 0.491 EOS/KB and allocated RAM 52.86 GB (64-52.86=11.14GB left)

To find number of EOS in the contract substitute price information into equation

balance of EOS = 0.491x52.86x1024x1024x0.0005
=13607.5 EOS

Bancor protocol whitepaper page 11

tokens issued = supply × ((1 +connected tokens paid/balance )^cw − 1)

RAM issued = 52.86GB x ((1+Number of EOS paid)/13607.5)^0.0005 -1)

Effective RAM price = Number of EOS paid/ RAM issued

If I want to buy RAM with 100 EOS I will get RAM = 52.86x1024x1024x((1+100/13607.5)^0.05% -1)=202.9217 KB

Effective price = 100/202.9217 = 0.4928EOS/KB

If I want to buy RAM with 1000 EOS I will get RAM = 52.86x1024x1024x((1+1000/13607.5)^0.05% -1)=1965.334 KB

Effective price = 1000/1965.334 = 0.5088EOS/KB

If I want to buy RAM with 10000 EOS I will get RAM = 52.86x1024x1024x((1+10000/13607.5)^0.05% -1)=15270.338 KB

Effective price = 10000/15270.338 = 0.65486EOS/KB

From the same start price according to Dan Larimer, if we adjust the CW to 50% the EOS balance will changed to 13607507.06 If we buy RAM with 100, 1000,10000 EOS price will be 0.49105, 0.4998 and 0.568EOS/KB

Compare to 0.4928, 0.5088 and 0.6548EOS/KB in 0.05% CW now.

If we change the CW to 50% the price will change more linearly->less volatile.

EOS_RAM_CW.jpg

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:  

Congratulations @noomsteem! You received a personal award!

1 Year on Steemit

Click here to view your Board

Support SteemitBoard's project! Vote for its witness and get one more award!

Congratulations @noomsteem! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 2 years!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!