Volatility Calculation - Methodology

How we measure risk and volatility

Table of Contents

Overview

Market volatility measures the overall risk of the CoinRisqLab 80 Index portfolio. It captures how the combined value of the portfolio fluctuates over time, accounting for both individual asset movements and the correlations between them.

Portfolio volatility is estimated using historical price data over a 90-day rolling window. The procedure consists of two main steps: computing logarithmic returns for each constituent, then calculating portfolio-level volatility using market-cap weighting and the full covariance matrix to account for correlations between constituents.

For individual cryptocurrency volatility, see the Risk Metrics methodology.

Glossary

Volatility

Measures the degree of variation in an asset's returns over time. It reflects the typical magnitude of price fluctuations and represents the level of risk or uncertainty associated with the asset's price movements.

Logarithmic Returns

The natural logarithm of the ratio of consecutive prices. Logarithmic returns have better statistical properties than simple percentage returns.

rt=ln(PtodayPyesterday)r_t = \ln\left(\frac{P_{\text{today}}}{P_{\text{yesterday}}}\right)

Standard Deviation

A measure of the amount of variation in a set of values. In finance, the standard deviation of returns is used as a measure of volatility.

Annualization

The process of converting a daily volatility measure to an annual equivalent by multiplying by the square root of the number of trading periods in a year.

σannual=σdaily×365\sigma_{\text{annual}} = \sigma_{\text{daily}} \times \sqrt{365}

Rolling Window

A fixed-size time period (e.g., 90 days) that slides forward in time. Each calculation uses the most recent N observations, providing a moving view of volatility.

Covariance Matrix

A square matrix showing the covariance between pairs of assets. Used to capture how different assets move together, essential for portfolio risk calculations.

Portfolio Volatility

The volatility of a portfolio that accounts for both individual asset volatilities and their correlations. Usually lower than the weighted average of individual volatilities due to diversification.

Trading Days

For annualization purposes, we use 365 trading days per year. Unlike traditional financial markets that close on weekends and holidays, cryptocurrency markets operate 24/7, 365 days a year.

Bessel's Correction

When calculating variance from a sample of data (like 90 days of returns), we divide by n1n-1 instead of nn to get an unbiased estimate. This is applied to all our variance and covariance calculations.

Risk Level Classification

We classify volatility into four risk levels using rigorous analytical standards calibrated for cryptocurrency markets. This classification covers both annualized and daily volatility, providing an intuitive way to understand and compare risk across different time scales.

Risk LevelAnnualizedDailyColorDescription
Low Risk
< 10%< 0.52%
Green
Stable mature cryptos, low risk
Medium Risk
10% - 30%0.52% - 1.57%
Yellow
Moderate volatility, established assets with fluctuations
High Risk
30% - 60%1.57% - 3.14%
Orange
High volatility, speculative assets or unstable phases
Extreme Risk
≥ 60%≥ 3.14%
Red
Extreme volatility, high-risk altcoins or strong market turbulence

Application Usage:

  • Market volatility level indicators on the dashboard
  • Individual cryptocurrency volatility badges
  • Risk contribution analysis in portfolio breakdown
  • Volatility gauge on the main dashboard

Note: These thresholds are calibrated for cryptocurrency markets, which typically exhibit higher volatility than traditional financial assets. A "low risk" crypto asset (5% annualized volatility) would still be considered moderate to high risk in traditional equity markets.

Base Parameters

ParameterValueDescription
Window Period
90 days
Rolling window for volatility calculations
Return Type
Logarithmic
Natural logarithm of price ratios
Annualization Factor
√365 ≈ 19.10
Assumes 365 trading days per year (crypto markets 24/7)
Minimum Data Points
90 observations
Required for volatility calculation

Calculation Pipeline

The market volatility calculation follows a two-stage pipeline, where each stage builds upon the previous one:

Stage 1

Log Returns Calculation

Calculate daily logarithmic returns for all cryptocurrencies

Stage 2

Portfolio Volatility

Calculate index-level volatility using covariance matrix

Stage 1

Logarithmic Returns

The first stage calculates daily logarithmic returns for all cryptocurrencies, which serve as the foundation for all subsequent volatility calculations.

What are Log Returns?

Logarithmic returns measure the continuously compounded rate of return between two periods. They have several advantages over simple percentage returns:

  • Time-additive: Returns over multiple periods sum algebraically
  • Symmetric: A +10% gain and -10% loss produce equal absolute log returns
  • Better statistics: More suitable for normal distribution assumptions
  • Approximation: For small changes, log returns ≈ percentage changes

Calculation Formula

Daily returns are calculated using logarithmic returns, which are widely used in financial analysis due to their desirable statistical properties and time additivity:

rt=ln(PtPt1)r_t = \ln\left(\frac{P_t}{P_{t-1}}\right)

Where PtP_t is the closing price at time tt and Pt1P_{t-1} is the closing price at time t1t-1.

Data Selection

We select the latest price for each day:

  • End-of-day snapshot (latest timestamp per day)
  • Only positive prices (price_usd > 0)
  • Ordered chronologically
Stage 2

Portfolio Volatility

The third stage calculates the volatility of the top 40 portfolio using market-cap weights and the full covariance matrix to account for correlations between constituents.

Why Use a Covariance Matrix?

Simply taking a weighted average of individual volatilities would overestimate portfolio risk. The covariance matrix captures how assets move together:

  • Assets that move in opposite directions reduce portfolio risk
  • Imperfect correlation provides diversification benefits
  • Portfolio volatility is typically lower than weighted average of individual volatilities

Step 1: Weight Calculation

Weights are based on market capitalization:

wi=MarketCapij=1nMarketCapjw_i = \frac{\text{MarketCap}_i}{\sum_{j=1}^{n} \text{MarketCap}_j}
Where MarketCapi=Pricei×CirculatingSupplyi\text{MarketCap}_i = \text{Price}_i \times \text{CirculatingSupply}_i

Important: Weights must sum to 1.0 (100%)

Step 2: Covariance Matrix Construction

Build the covariance matrix for all constituent pairs:

Cov(i,j)=1T1t=1T(ri,tμi)(rj,tμj)\text{Cov}(i,j) = \frac{1}{T-1} \sum_{t=1}^{T} \left(r_{i,t} - \mu_i\right)\left(r_{j,t} - \mu_j\right)
Where ri,tr_{i,t} = log return of asset ii at time tt, T=90T = 90 (window size)

The covariance matrix is an n×n symmetric matrix where:

  • Diagonal elements: variances of individual assets
  • Off-diagonal elements: covariances between asset pairs
  • Captures the correlation structure of the portfolio

Step 3: Portfolio Variance Calculation

Using modern portfolio theory:

σp2=wΣw\sigma^2_p = \mathbf{w}^\top \Sigma \, \mathbf{w}
Where:
w\mathbf{w} = column vector of weights [w1,w2,,wn][w_1, w_2, \ldots, w_n]^\top
Σ\Sigma = covariance matrix (n×nn \times n)
w\mathbf{w}^\top = transpose of weight vector

Expanded form:

σp2=i=1nj=1nwiwjCov(i,j)\sigma^2_p = \sum_{i=1}^{n} \sum_{j=1}^{n} w_i \, w_j \, \text{Cov}(i,j)

Step 4: Annualization

σdaily=σp2\sigma_{\text{daily}} = \sqrt{\sigma^2_p}
σannual=σdaily×365\sigma_{\text{annual}} = \sigma_{\text{daily}} \times \sqrt{365}

Calculation Examples

Portfolio Volatility Example (Simplified)

Given: 2-asset portfolio for simplicity

Asset 1 (BTC): weight w1=0.60w_1 = 0.60, σ1=0.03\sigma_1 = 0.03
Asset 2 (ETH): weight w2=0.40w_2 = 0.40, σ2=0.04\sigma_2 = 0.04
Correlation: ρ=0.70\rho = 0.70

Covariance matrix:

Σ=[σ12ρσ1σ2ρσ1σ2σ22]=[0.00090.000840.000840.0016]\Sigma = \begin{bmatrix} \sigma_1^2 & \rho \, \sigma_1 \, \sigma_2 \\ \rho \, \sigma_1 \, \sigma_2 & \sigma_2^2 \end{bmatrix} = \begin{bmatrix} 0.0009 & 0.00084 \\ 0.00084 & 0.0016 \end{bmatrix}

Portfolio variance:

σp2=[0.60.4][0.00090.000840.000840.0016][0.60.4]=[0.60.4][0.0008760.001144]=0.000983\begin{aligned} \sigma^2_p &= \begin{bmatrix} 0.6 & 0.4 \end{bmatrix} \begin{bmatrix} 0.0009 & 0.00084 \\ 0.00084 & 0.0016 \end{bmatrix} \begin{bmatrix} 0.6 \\ 0.4 \end{bmatrix} \\\\ &= \begin{bmatrix} 0.6 & 0.4 \end{bmatrix} \begin{bmatrix} 0.000876 \\ 0.001144 \end{bmatrix} \\\\ &= 0.000983 \end{aligned}
Daily portfolio volatility: σp=0.000983=0.0313\sigma_p = \sqrt{0.000983} = 0.0313 (3.13% per day)
Annualized portfolio volatility: σp,annual=0.0313×365=0.598\sigma_{p,\text{annual}} = 0.0313 \times \sqrt{365} = 0.598
Result: Portfolio volatility is
59.8%

Diversification Benefit

The portfolio volatility calculation demonstrates a key principle of Modern Portfolio Theory: diversification reduces risk.

The Diversification Effect

From Example 2 above:

Bitcoin individual volatility:
57.3%
Ethereum individual volatility:
76.4%
Weighted average volatility:
64.9%
Actual portfolio volatility:
59.8%

The portfolio volatility (59.8%) is 5.1% lower than the weighted average (64.9%), demonstrating the benefit of diversification!

Mathematical Relationship

The general principle:

σpi=1nwiσi\sigma_p \leq \sum_{i=1}^{n} w_i \, \sigma_i
(Portfolio volatility ≤ Weighted average of individual volatilities)

This inequality holds as long as assets are not perfectly correlated. The benefit is greater when:

  • Correlations between assets are lower
  • The portfolio is more diversified (more constituents)
  • Asset weights are more balanced