xHalfLife

关于 xHalfLife的介绍

1. 资金流的历史实践与简介

Compound Finance简化了按块奖励、复利计算、延迟发放,节省Gas。

Sablier Protocol是Ethereum上的实时财务协议,⽀持连续的、⾃主的、去信任的⼯资单。但因为这种⼯资单的形式是债权⼈(员⼯)向债务⼈(雇主)约定的,因此同样可以⽤于以现⾦流⽅式偿还贷款。

xHalfLife更侧重于有效的股权激励,即雇主为员⼯连续、⾃主、去信任⽽且时间公平的发放股权。

2. xHalfLife协议:思考、改进与实现

2.1 xHalfLife设计

⼀般来说,互联⽹雇员就算⼯作优秀,基于公司管理便利的考虑是没有办法选择⾃⼰的股权激励分发(Vesting)⽅案的。

互联⽹⾏业(以硅⾕为例)⼀般是4-6年的Vesting,有限性解锁(每年1/4,连续4年,每年1/6,连续6年),也有加速解锁(15% 25% 25% 35% 4年)。

ETH资⾦流协议因为受益于记账、延迟发放,能以最低的费⽤实现准实时的资⾦发放,因为gas费的存在,您并不需要任何时间都提取⼀笔资⾦流可提取的部分。

xHalfLife协议的设计是前快后慢的。任何⼀家如nVidia、Intel这样优秀的公司在发展壮⼤的过程中,市值是指数级上升的,不善于等待的⼈,可能因为⽣活困难原因可能急于套现,在公司价值低的时候套现了⼤部分筹码。我们希望这样的设计能够平稳⼈的现⾦流。

受到放射性元素半衰期的启发,我们对xHalfLife的设计如下:

xHalfLife协议的参数具有:NumStart、K、ratio与eps 4个参数。在这种协议下,用户的资金被分为两部分:

延迟收入入账收入

任何收入直接进入延迟收入

延迟收入中的资金,从合约部署开始后,经历NumStart个区块后,每当区块链高度能被K整除,且延迟收入余额超过最低发放标准eps时,将此时延迟收入项下的ratio⋅延迟收入划转到入账收入项下。

半衰期估算为 −K/log2 ​(1−ratio)∗13.1s

即这个时间解锁一半。

如果公司发展速度每个半衰期周期估值都能翻倍的话,员工对于股权解锁改善生活就没有任何压力。如果半衰期周期较长而公司发展较快,员工即使解锁,残留总估值仍然超过之前持有公司股份的总估值。

2.2 xHalfLife的以太坊实现

由于技术原因,其他操作可以用加减替代。

然后显示精度用decimal(uint+浮点位置)解决。

有两种实现方法:

  • 单笔stream,founder锁仓给出了可以连续也可以离散计算的方案

  • 多笔等值stream,pending给出了连续计算的方案

释放速度:相同的ratio∗K可以视为释放速度近似相等。

3. xHalfLife有关名词解释

Stream:表示创建的一个资金流;

Sender:表示发送者(资金流由该地址创建和发送);

Recipient:表示收款人(资金流发送给这个地址);

Deposited:在对应资金流中发送者已经抵押的代币数量;

Withdrawable:在对应资金流中发送者可以赎回的代币数量;

Startblock(When Should Start):从哪个区块开始部署你想要创建的资金流。这里我们会默认显示比当前主网区块提前10个区块,你也可以通https://etherscan.io/blocks查询,自己填入合适区块。注意:不要填入已过时区块。

status:表示目前该资金流所处的状态,有三种状态,分别是:Waiting(资金流等待执行生效);Streaming(资金流正在执行);Ended(资金流已经结束)。

Unlock K Block:表示每间隔K个区块,你创建的资金流向收款人发送一笔对应解锁比例的资金(代币); Unlock Ratio:解锁率,表示每次解锁金额对于此次资金流总资金(代币)的占比。

Fund:表示你可以给自己已经创建的还在执行过程中的资金流进一步添加资金(代币),间隔区块K和解锁率均不变。