比特币价格与挖矿难度、时间、减半的关系
本文推导了比特币均衡价格与难度、时间、减半之间的数量关系,发现比特币对数均衡价格遵循一个多元线性模型。
本文利用数据对其进行了实证验证,发现该模型是有效的。
该模型可以解释很多现象、能够回答很多问题。其中预言比特币的价格未来会趋于平稳。
前言
比特币的价格一直是人们关心的话题,我之前曾写了两篇(参见链接1链接2)讨论比特币价格模型的文章。
第一篇文章讨论了比特币减半行情的问题,并利用比特币的产量进行了价格建模;第二篇文章讨论了PlanB的S2F模型的一些问题,并对该模型进行了扩展。
不过这两篇文章的模型都存在一些不足:
第一篇利用泰勒展开,强制用对数供给量(logS)的高阶多项式函数来拟合对数价格(logP),显得太生硬、不自然,最后得到的6阶多项式没有理论基础支撑,纯属数据拟合结果;
第二篇文章,讨论到S2F模型的供给量增量(\(\Delta S\))在2140年之后会趋近于0,从而导致S2F出现发散这一论断实际上存在不足。因为S2F模型的F是年产量、而非比特币增量。比特币年产量不仅仅是新“挖”出来的币,还应该包括区块上的手续费奖励。它们都是通过“挖矿”而获得的币,决定着比特币的边际成本。在考虑了手续费奖励后,S2F值就不会再发散了。
本文对上述模型的问题进行了升级,通过如下方法得出了新的价格模型:
从“均衡价格与边际成本相等”这一经济学原理出发,利用挖矿难度估算挖矿成本(对应边际成本),考虑摩尔定律和通货膨胀带来的影响,得出了新的价格模型。
新的模型可以解释、比特币减半后价格为什么会出现阶跃分区现象(参见链接2中的图),揭示出比特币具有时间价值,回答了比特币挖矿难度与价格之间存在着什么样的重要关系,该模型预示着比特币价格未来会趋于平稳。
接着,本文将从数据的角度对上述模型的有效性进行验证,同时得到模型中各变量的参数。
最后进行总结。
价格模型推导
按照经济学原理,均衡价格(P)等于边际成本。即若新生产\(\Delta S\)数量的产品、需要成本\(\Delta C\),则市场均衡价格为: \[ \begin{equation} \label{eq01} P=\frac{\Delta C}{\Delta S} \end{equation}\] 下面我们来计算比特币挖矿成本。值得指出的是,挖矿成本中的“矿机”成本、场地租赁成本、雇佣员工成本、甚至挖矿的利润等,都可以通过时间分摊的办法、吸收进电费成本(也即算力成本)之中。
假设t时刻,1次哈希运算的成本为\(n_t\)(含上述各种成本),全网哈希率(也称“算力”)为\(h_t\)(单位为“hash/s”),则在时间\(\Delta t\)内的挖矿成本为: \[ \begin{equation} \label{eq02} \Delta C=n_t*h_t*\Delta t \end{equation}\] 在t时刻,假设单位电能(如1度电)可以产生\(u_t\)次哈希运算,则该单位电能的成本(含上述各种成本)可以表述为: \[\begin{equation} \label{eq03} E_t=u_t*n_t \end{equation}\] 上述的成本会受到很多因素的影响,如技术进步导致的电能供给增加、通胀引起电费和设备价格上升、市场需求季节性变化、工业化进步导致的需求增加、员工工资上涨、场地租赁费上涨等。
在这里,我简单的假定其他因素可以吸纳进“成本通胀率(r)”中。从而,“挖矿”时、获得单位电能对应的成本随时间如下变化: \[\begin{equation} \label{eq04} E_t=E_0*(1+r)^t \end{equation}\] 其中\(E_0\)是初始时间对应的成本,可视为常数。
另一方面,单位电能产生的哈希运算次数应该遵循摩尔定律: \[\begin{equation} \label{eq05} u_t=\alpha *2^{t/\beta} \end{equation}\] 其中\(\alpha\)和\(\beta\)是摩尔定律的两个常数,分别对应初始值和增倍周期。
最后,\(\eqref{eq02}\)中的\(h_t\)可以用比特币挖矿难度(\(d_t\))来表达(背后原因可以参见此处): \[\begin{equation} \label{eq06} h_t=\overline{u}_0*d_t \end{equation}\] 其中\(\overline{u}_0\)是比特币挖矿难度为“1”所对应的哈希率,为比特币主网的单位算力,是一个常数。
结合\(\eqref{eq02}\)-\(\eqref{eq06}\),可以得到: \[\begin{equation} \label{eq07} P=\frac{E_0*(1+r)^t}{\alpha *2^{t/\beta}}*\overline{u}_0*d_t*\frac{\Delta t}{\Delta S} \end{equation}\] 上式最后一项是单位产量所需要的时间,我们在这里讨论一下这一项:
由于比特币大约每10分钟产生一个新区块,\(\Delta t\)可以表示产生一个新区块的时间、约10分钟(本文后续采用的1天);
\(\Delta S\)包含区块奖励和区块打包手续费两部分,其中区块奖励部分会随着减半次数增加而指数减少;
若区块的手续费为0,则在一个产量减半周期内,\(\frac{\Delta t}{\Delta S}\)近似是一个常数,在不同减半周期间,该值会随着减半周期数增多而指数跳跃上升;
若考虑了手续费,在较早的减半周期内,手续费的影响较小,随着减半数增加,这一项中手续费的影响越来越重要;
随着比特币减半接近或已经完结(2140年),可以预期每个新区块都是满块,故每个区块的交易笔数近似固定,每笔交易的手续费是在最佳手续费率附近的随机数、总体上每个区块的手续费保持在某个均衡值(该值可能仍具有时间漂移)附近波动,因此减半完成后,\(\frac{\Delta t}{\Delta S}\)可以被近似视为一个统计上的常数;
可以将\(1+r\)记为\(r'\),从而上式化为: \[\begin{equation} \label{eq08} P=E_0*r'^t*\alpha ^{-1}*2^{-t/\beta}*\overline{u}_0*d_t*\frac{\Delta t}{\Delta S} \end{equation}\] 对上式左右两边取对数,并将常数项合并,可得到: \[\begin{equation} \label{eq09} log(P)=a+b*t+log(d_t)+log(\frac{\Delta t}{\Delta S}) \end{equation}\] 其中a、b均为常数。
至此,我们便推导出了比特币的均衡价格公式。
需要指出的是:
上述推导过程,虽然利用了成本通胀模型\(\eqref{eq04}\)和摩尔定律模型\(\eqref{eq05}\),但是公式\(\eqref{eq09}\)不仅仅适用于这两个模型,还可以是很多其他机制的时间模型,它们揭示比特币均衡价格与时间相关。
接下来,对该公式进行一些讨论,可得到一些有意思的结论:
- 比特币对数价格与时间成正比,反映出比特币具有时间价值。若比特币未来成为本位货币,当前由通胀推动的成本价格上涨、将变为由通缩推动的成本价格缓慢下跌,此时比特币仍然具有时间价值;
- 比特币对数价格与挖矿难度的对数成正比,说明比特币挖矿难度对于定价具有至关重要的作用,两者之间是相互作用的关系。价格可以调节挖矿难度、挖矿难度也会影响价格的形成;
- 由于最后一项的存在,比特币对数价格会受到减半周期的影响,每次减半都会造成最后一项跳跃上升,从而导致比特币价格出现阶跃分区,直至减半接近完结;
- 摩尔定律引起的基础算力(或者单位电能产生的哈希次数)上升被吸收进了第二项中,与通胀一起决定比特币的时间价值,它反应的是技术进步引起的时间价值;
- 若比特币减半后挖矿难度持续上升,则由于最后两部分的影响,比特币价格会呈现出指数乘以指数的增长,从而导致价格大幅上升;
- 在减半接近完结时,手续费基本稳定,此后影响比特币价格的最大因素为难度\(d_t\)对应的算力大小。鉴于此后的算力、一般不太可能大幅跳跃性变化,从而价格会趋于平稳。
下面我将用数据来对此定价公式进行验证。
数据实证
上文中的\(\eqref{eq09}\)式可以视为一个有常数项的多元线性模型,我们先对等式左右各项的值进行可视化,以直观感受各变量之间的关系。
数据说明:
本文的链上数据是通过自建全节点、直接从全节点获取;
价格数据采用的coinmarketcap所收录的比特币日频历史收盘价格;
后文中数据频率采用的“1天”,对链上数据根据区块时间戳进行降频处理,对每日内的手续费和区块奖励进行加总,从而可以得到每日\(\Delta S\);
降频后保留当日最后一条难度数据作为当日难度值(\(d_t\));
简单起见,时间值采用日频的天数,即\(\Delta t\)值为1、代表1天。
对数价格(\(log(P)\))的时序图(横轴为日期)如下:
每日区块奖励时序图如下:
每日区块手续费时序图如下:
上图在近期的数据不是很直观,将该图进行分段展示,效果如下:
可见区块奖励和手续费存在异常值(毛刺),可能会影响到模型的结论,需要对此进行修正,采用MAD法(具体参见此处)对异常值进行过滤,滚动周期为30天、最小需要的观测数据量设定为10天。过滤后的每日区块奖励和每日手续费时序图如下:
可见由于滚动mad法处理的影响,减半日的区块奖励变化会有一定的延迟才体现出来。
调整后的奖励与手续费结合后(即为日产量\(\Delta S\))的时序图如下:
可见在目前阶段,手续费对日产量的影响还较小,产量主要来自区块奖励。
得到了\(\Delta S\)后,我们可以作出\(log(\frac{\Delta t}{\Delta S})\)的时序图,对于日数据而言\(\Delta t=1\),故时序图如下:
可见这项呈现出明显的阶跃上升的现象,与上文所作的BTC对数价格走势有相似之处。
说明:
后文中验证模型采用的数据均为处理了异常值之后的数值。
然后,我们作出比特币挖矿难度的对数时序图,如下:
可见对数难度的时序图与对数价格的时序图也呈现出很明显的相关性。
进一步添加上天数和常数项,我们就可以进行多元线性回归了。
回归结果如下:
""" |
由表中t值、P值可见,所有项的回归参数都很显著,\(\eqref{eq09}\)对应模型的\(R^2\)值高达0.956,说明该模型很有效。
上述回归结果中提示“条件数很大、可能存在强多重共线性”。出现这一提示的原因是因为没有进行变量的归一化处理,这会导致数值的量级对条件数计算产生很大的影响。下面我们将验证是否是这个原因导致的。
可采用“min-max归一化”的办法对因变量与自变量进行归一化处理,即处理公式为: \[\begin{equation} \label{eq10} x=\frac{x-x_{min}}{x_{max}-x_{min}} \end{equation}\] 归一化之后,再次回归,结果为:
""" |
可见“条件数很大、可能存在强多重共线性”提示已经没有了,这说明上一次回归结果中提示的异常正是因为没有归一化引起的。本处回归结果显示,进行归一化之后的回归效果与没有归一化的一样。
回归结果显示对\(log(P)\)影响最大的是\(log(d_t)\)项,然后是\(log(\frac{\Delta t}{\Delta S})\)项,接着为时间项和常数项。
作出归一化处理后的对数价格与模型拟合的对数均衡价格之间的对比图,如下:
可见两者贴合的很好,说明该模型很符合实际情况。
进而,我们可以得到如下比特币均衡价格公式,该公式中各变量是没有归一化的原始值: \[\begin{equation} \label{eq11} \begin{aligned} log(P)=&2.65+2.2e(-4)*t \\ &+0.36*log(d_t) \\ &+0.7*log(\Delta t/\Delta S) \end{aligned} \end{equation}\] 原始值的对数价格、模型值以及标注了公式参数的时序图如下:
值的指出的是,比特币均衡价格模型具有正的时间相关参数(图中的0.00022),说明比特币确实具有正的时间价值,这一部分是因为成本通胀的原因,另一部分是因为技术进步的原因。
说明:
总结
首先,本文从经济学基本原理出发,利用挖矿成本与比特币产量计算均衡价格,考虑了摩尔定律和通货膨胀等对比特币挖矿成本的影响,推导得到了均衡价格与时间、挖矿难度、产量减半之间的关系。
进而,利用该模型,可以解释为什么比特币减半后价格会跳跃式大幅增长,且反映出比特币具有正的时间价值,同时解释了比特币挖矿难度为什么至关重要的原因。该模型甚至还揭示了比特币价格最终会趋于平稳的内在驱动原因。
然后,本文利用数据验证了该公式各变量之间的关系,发现公式中的各自变量项都具有显著的回归参数,证明了模型的有效性。同时,由回归结果可见、难度值(\(d_t\))是影响比特币均衡价格最大的因素。
最后,我们可以利用本文得出的比特币定价模型,在市场价格大幅偏离该模型预测值时,进行模型偏离套利。
声明
本文只作为研究结果展示,不作为投资建议。
望读者自行斟酌参考。