BlockPo / BlockPo-to-Tradelayer

Incubation Repo for the TradeLayer protocol, 0.2.0
http://www.tradelayer.org
Other
8 stars 8 forks source link

Vesting Function Rewrite #157

Closed patrickdugan closed 4 years ago

patrickdugan commented 4 years ago

Re-write the messy code with unpredictable math and use a simple log function for vesting.

thisBlockVesting% = (Log10(LTC_Volume)-3)*33.333

(e.g. at 10^4 we are 33% vested, at 10^5 66% vested, 10^6 100% vested)

If we manage to include contract volume conversion in before activating mainnet, which is recommended, we'll go with 10^7 and 25 as the multiple instead of 10^33.333, this would be recommended for the floating point issue not to mention contract volume will predominate.

The quantity to credit/debit from Vesting to Balance each block is then:

thisBlockVesting%-lastBlockVesting% (ThisAddressVestingTokens/TotalVestingTokens) TotalVestingTokens

We do need to wrap the number in the rational counter and it's recommended VT holders don't hold small vesting token balances so as not to lose out on Satoshi increment changes per block to the rounding function.

santos177 commented 4 years ago

working on vesting branch