P3D价格分析

image.png

以前经常会偷懒不爱分析,现在对新出的一些东西尽量多分析下,何况这个周末又比较清闲,一天能赚几个ETH很知足了,只恨投太少...

价格计算

合约是公开的,可以在这看到:
https://etherscan.io/address/0xb3775fb83f7d12a36e0475abdd1fca35c091efbe#code

卖价计算

    function sellPrice() 
        public 
        view 
        returns(uint256)
    {
        // our calculation relies on the token supply, so we need supply. Doh.
        if(tokenSupply_ == 0){
            return tokenPriceInitial_ - tokenPriceIncremental_;
        } else {
            uint256 _ethereum = tokensToEthereum_(1e18);
            uint256 _dividends = SafeMath.div(_ethereum, dividendFee_  );
            uint256 _taxedEthereum = SafeMath.sub(_ethereum, _dividends);
            return _taxedEthereum;
        }
    }

买价计算

    function buyPrice() 
        public 
        view 
        returns(uint256)
    {
        // our calculation relies on the token supply, so we need supply. Doh.
        if(tokenSupply_ == 0){
            return tokenPriceInitial_ + tokenPriceIncremental_;
        } else {
            uint256 _ethereum = tokensToEthereum_(1e18);
            uint256 _dividends = SafeMath.div(_ethereum, dividendFee_  );
            uint256 _taxedEthereum = SafeMath.add(_ethereum, _dividends);
            return _taxedEthereum;
        }
    }

从以上代码可以看到卖出和买入都会有手续费,dividendFee_现在设为10,也就是手续费为10%。

具体看看 tokensToEthereum_() 这个函数怎么根据token量计算需要的ETH的,如下:

     function tokensToEthereum_(uint256 _tokens)
        internal
        view
        returns(uint256)
    {

        uint256 tokens_ = (_tokens + 1e18);
        uint256 _tokenSupply = (tokenSupply_ + 1e18);
        uint256 _etherReceived =
        (
            // underflow attempts BTFO
            SafeMath.sub(
                (
                    (
                        (
                            tokenPriceInitial_ +(tokenPriceIncremental_ * (_tokenSupply/1e18))
                        )-tokenPriceIncremental_
                    )*(tokens_ - 1e18)
                ),(tokenPriceIncremental_*((tokens_**2-tokens_)/1e18))/2
            )
        /1e18);
        return _etherReceived;
    }

看起来有点复杂,其实比Bancor算法简单多了,把一些防止出错的机制去掉,容易理解的简单公式就是:

ETH = P3D增量价格 * P3D供应量

P3D增量价格固定为0.00000001ETH

也就是说P3D代币供应量越大,价格就越高,没有总量限制,但供应量大了以后价格也高了,很难保证供应量继续增长。

这样对价格关注的人就知道关注哪个数据了,那就是供应量,同时从供应量也大概知道价格,不用什么软件,直接打开ethersan.io的合约页面:https://etherscan.io/address/0xb3775fb83f7d12a36e0475abdd1fca35c091efbe#readContract

image.png

totalSupply决定了买卖价格,注意去掉后18位精度(decimals),大约3000000。

按以上价格算当前价格大概为:3000000 * 0.00000001 = 0.03

买价加10%大概为0.033,卖价减10%大概为0.027,这个与显示的sellPrice和buyPrice是一致的。

后期预测

知道价格计算方法,我们也可以预测价格再翻一倍到0.06需要多少ETH,由于供应量增加价格也会增加,不做复杂的算法,简单取个中间价格0.045计算(可能很不合理,怎么也在0.03到0.06之间):

3000000 * 0.045 = 135000(ETH)

而现在到这个价共有51037个ETH在合约上,就是totalEthereumBalance这个值。

那么135000个ETH多少钱呢?按3000RMB一个计算得约4亿RMB。

再看看以太坊的日成交量,各自预测吧!

归零吗

那如果后续没有资金进入,大家都出P3D在什么价格能达到平衡?还是归零呢?

都出了供应量很少,当然价格可能归零,但是别忘了还有一个F3D的奖池分配呢,这就是这游戏考虑得好的地方。F3D玩法参考钱多人傻速来-F3D

除了熊队不分配奖池给P3D持有者外,蛇队是20%,鲸、牛队是10%,按现在F3D奖池大概20000个ETH算算看:

20000 * 10% = 2000(ETH)

20000 * 20% = 4000(ETH)

现在有3000000个P3D,那只要游戏结束(在不是熊队情况下,这块没太明白,还得看看F3D最后怎么算结果),按现价每个P3D大概价值在0.00067到0.0013。而出现大批出P3D的情况下,供应量肯定不是3000000了,大概在供应量50万到100万之间会取得平衡(再出就不如等游戏结束分红了),这也是如果砸盘时可以考虑进入的价格位置。

从这也看出F3D这个游戏还是有必要继续增长的,才能保证P3D的价格。


感谢您阅读 @chaimyu 的帖子,期待您能留言交流!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 以太坊白皮书地址:https://github.com/ethereum/wiki/wiki/White-Pape...
    rectinajh阅读 17,924评论 0 46
  • 我们这几位主人公在起床这件事上的风格迥异,有的是万年不起型的,有的是不早起难受型的,有的则是看心情的。小五的主人,...
    Caphintty图图阅读 200评论 0 1
  • 鲜艳颜色的西服宜配灰色、黑色、白色或同类色高明度的衬衫;暗色西装内宜衬浅色衬衫;单色西装视礼仪性场合的气氛配穿花色...
    MemoryChan阅读 356评论 0 8
  • 今天是三月十一号,阴天,没有下雨,却格外的冷,明天就要离开了,我知道有些话你亲口说不出来,其实说分开简单,是不想你...
    肆爱阅读 269评论 0 1
  • 这部剧也是经典老剧了,宝莲灯有好几个系列,我说的是曹骏舒畅那个系列,这两个人的CP感不是很强,但是我还是很喜欢,...
    燚月仁心阅读 235评论 0 0