Multivariate Linear Regression of bitcoin’s Market Capitalization

Peter Vijn
Quantodian: Tracking Bitcoin
2 min readOct 7, 2019

Introduction

Time vs. MarketCap and Scarcity vs. MarketCap bivariate regression have been applied to bitcoin in a series of articles (for an overview see Power-law price models of bitcoin). In this article, multi-(three)-variate regression is applied to the three variables in one go.

Methods

The source data is here:

Data preparation is described in A more modest role for Scarcity on bitcoin?Excel has the capabilities to perform bivariate and multivariate regression, and that is all that is needed.

Results

Data used for this analysis is up-to-date until yesterday (October 6, 2019). See Appendix for the full Excel regression output. The best fitting models, with all parameters in 4 significant digits (ln is the natural logarithm) are:

Time vs. MarketCap (bivariate)

  • ln(MarketCap) = -27.75 + 6.492 * ln(Time);
  • R = 0.9693, R² = 0.9396

Scarcity vs. MarketCap (bivariate)

  • ln(MarketCap) = 14.21 + 3.354 * ln(Scarcity)
  • R = 0.9405, R² = 0.8846

Compare to PlanB: ln(MarketCap) = 14.62 + 3.320 * ln(Scarcity)

Time vs. Scarcity (bivariate)

  • ln(Scarcity) = -11.60 + 1.816 * ln(Time)
  • R = 0.9671, R² = 0.9352

Time & Scarcity vs. MarketCap (trivariate)

  • ln(MarketCap) = -25.76 + 6.181 * ln(Time) + 0.1708 * ln(Scarcity)
  • R = 0.9694, R² = 0.9398
  • P-value for Time: 5.789E-159: Highly significant
  • P-value for Scarcity: 0.09820: Not significant
  • P-value for the Intercept: 1.164E-79: Highly significant

Conclusions

  • Regression weight of the multiple regression for Time on MarketCap is more than 36 times (6.181 vs. 0.1708) higher than the regression weight for Scarcity on MarketCap.
  • Time in days (today 3927) is also a much larger number than Scarcity (stock-to-flow today 26.15), meaning that the contribution of Scarcity on MarketCap is near-zero.
  • Scarcity is not needed to improve the quality of strictly Time driven MarketCap models.

Thank you for reading!

Appendix

Excel output

Output of the Multivariate regression in Excel. Input = ln(Time) and ln(Scarcity). Output = ln(MarketCap)

Scarcity smoothing

Time has no noise (randomness) in it. Scarcity has, because we’re using as a proxy stock-to-flow, or new-coins/existing-coins to estimate. Additional to the analysis above, I used smoothing of the Scarcity signal to reduce the high-frequency (day-to-day) noise, until the point that a nice step-like function was obtained. When I replaced the Scarcity signal by this SmScarcity signal and reran the model, it changed to

  • ln(MarketCap) = -23.26 + 5.788 * ln(Time) + 0.3890 * ln(SmScarcity)
  • R = 0.9695, R² = 0.9400
  • Still a big separation of the regression coefficients of Time and SmScarcity: same conclusion.

--

--