Risk Metrics - Methodology
How we calculate risk indicators for cryptocurrencies
Table of Contents
Overview
CoinRisqLab provides a comprehensive suite of risk metrics to help investors understand and quantify the risk profile of cryptocurrencies. These metrics are based on Modern Portfolio Theory and industry-standard risk management practices.
Metrics use different calculation windows based on their purpose: Volatility uses a 90-day window for recent risk assessment, VaR and Sharpe Ratio use 365 days for more stable risk estimates, while Skewness, Kurtosis, and SML use 90 days to capture recent distribution characteristics.
Beta is computed in two flavours persisted side-by-side: a statistical beta on log returns over a 365-day window (used everywhere a market-sensitivity number is displayed), and an economic beta on simple returns over a 90-day window (consumed by the SML formula so β and the market return live in the same return space).
Volatility
Price Uncertainty
VaR/CVaR
Downside Risk
Beta/Alpha/Sharpe
Market Sensitivity & Risk-Adjusted Return
Skew/Kurtosis
Distribution Shape
SML
CAPM Valuation
Return Types: Logarithmic vs Simple
Descriptive distribution metrics (volatility, skewness, kurtosis, statistical beta) are estimated on logarithmic returns for statistical stability. Economic-interpretation and portfolio-risk metrics (performance, VaR, CVaR, stress tests, SML) are computed on simple returns or PnL so the output reads as an actual gain or loss.
Logarithmic Returns
Used for statistical distribution metrics, where additivity over time and symmetry around zero matter.
- Volatility (σ)
- Skewness
- Kurtosis
- Beta (statistical — OLS regression)
- Correlation matrix
Simple Returns
Used for economic interpretation and portfolio risk, where the result must read as an actual profit or loss.
- VaR / CVaR
- Sharpe ratio
- Security Market Line (SML)
- Min / Max / Mean return
- Stress tests & PnL
Why the split?
Log returns are additive over time () and better approximate a normal distribution, which stabilises variance, regression, and higher-moment estimators. Simple returns are additive across assets (a portfolio simple return is exactly the weighted sum of its constituents' simple returns) and align with how gains and losses are realised in practice, so they are the right basis for risk-at-loss and performance metrics shown to investors.
Volatility
Volatility measures the degree of variation in a cryptocurrency's returns over time. It is estimated as the unbiased standard deviation of logarithmic returns computed over the previous 90 trading days.
Rolling Window Setup
For each cryptocurrency with sufficient data (≥90 log returns):
The window slides forward one day at a time, always containing exactly 90 consecutive daily log returns.
Statistical Calculations
For each 90-day window, we calculate:
a) Unbiased Variance Estimation
b) Daily Volatility (Standard Deviation)
c) Annualized Volatility
Why Multiply by √365?
The square root of time rule applies under the assumption of independent and identically distributed returns. Since cryptocurrency markets operate 24/7 throughout the year, we use 365 days to convert daily volatility to an annual measure that's comparable across different assets and time periods.
Example
Given: Bitcoin (BTC) with 90-day log returns
Value at Risk (VaR)
Value at Risk (VaR) is a statistical measure that quantifies the potential loss in value of an asset over a defined period for a given confidence level. It answers the question: "What is the maximum loss I can expect with X% confidence?"
Definition
VaR at confidence level α represents the (1-α) percentile of the return distribution. For example, VaR 95% indicates the loss that will not be exceeded 95% of the time.
Historical VaR Method
We use the Historical Simulation method, which makes no assumptions about the distribution of returns:
- Collect up to 365 days of daily logarithmic returns
- Sort returns from lowest to highest
- Find the return at the (100-α) percentile position
- Report the absolute value as potential loss
Note: The volatility (standard deviation) used in VaR calculations is computed over a 365-day window, unlike the standalone volatility metric which uses a 90-day window and is then annualized. This longer window provides more stable risk estimates for downside risk measurement.
Confidence Levels
| Level | Percentile | Interpretation |
|---|---|---|
VaR 95% | 5th percentile | Loss exceeded only 5% of days (1 in 20) |
VaR 99% | 1st percentile | Loss exceeded only 1% of days (1 in 100) |
Example
Conditional VaR (CVaR) / Expected Shortfall
CVaR, also known as Expected Shortfall (ES), addresses a key limitation of VaR: it tells you the average loss when VaR is exceeded. It answers: "When things go bad, how bad do they get?"
Formula
VaR vs CVaR Comparison
| Metric | Question | Property |
|---|---|---|
| VaR | What's the threshold loss? | Single point estimate |
| CVaR | What's the average extreme loss? | Tail average (coherent risk measure) |
Note: CVaR is always greater than or equal to VaR. It provides a more complete picture of tail risk.
Beta (Market Sensitivity)
Beta measures the sensitivity of an asset's returns to market movements. It indicates how much an asset tends to move relative to the overall market (CoinRisqLab 80 Index).
For each asset, beta is estimated over a 365-day rolling window using daily logarithmic returns. The market benchmark used is the CoinRisqLab 80 Index, which represents the aggregated performance of a universe of 80 crypto-assets.
OLS Regression Model
The estimation is based on a simple linear regression using the Ordinary Least Squares (OLS) method:
Within this framework, the beta coefficient estimated by OLS is equivalent to:
This formula compares the covariance between the asset and the market (their tendency to move together) to the variance of the market (the magnitude of market fluctuations).
Beta Interpretation
| Beta Value | Category | Meaning |
|---|---|---|
β < 0 | Inverse | Moves opposite to the market |
0 ≤ β < 0.95 | Defensive | Less volatile than market |
0.95 ≤ β ≤ 1.05 | Market | Moves like the market |
1.05 < β ≤ 2 | Aggressive | Amplifies market movements |
β > 2 | Speculative | Extreme market sensitivity |
Additional Regression Metrics
R-Squared (R²)
Percentage of asset variance explained by market movements. Higher R² means the asset tracks the market more closely.
Correlation
Strength and direction of linear relationship with the market. Ranges from -1 (perfect inverse) to +1 (perfect positive).
Alpha (Excess Return)
Alpha measures the excess return of an asset beyond what would be predicted by its beta. A positive alpha indicates outperformance; negative alpha indicates underperformance.
Formula
Interpretation
- Positive Alpha: Asset generates returns above what beta predicts (skilled selection or unique value)
- Negative Alpha: Asset underperforms relative to its market risk
- Zero Alpha: Returns fully explained by market exposure
Pairwise Correlation
Correlation measures the strength and direction of the linear relationship between the returns of two assets. It is the standardized version of covariance and ranges from -1 (perfect inverse) to +1 (perfect co-movement).
Pearson Correlation Coefficient
Given two series of daily log returns and :
Interpretation
Strong positive correlation. The two assets tend to move in the same direction. Holding both provides limited diversification.
No linear relationship. Movements are independent. Good diversification potential.
Strong negative correlation. The assets move in opposite directions. Excellent diversification — rare in crypto.
Key Details
- Computed from aligned daily log returns — only dates where both assets have data are used.
- Uses sample covariance (n-1 denominator) for an unbiased estimate.
- The correlation matrix on the portfolio analytics page applies this formula to every pair of holdings.
- Correlation does not imply causation — two assets can be highly correlated due to shared market exposure without directly influencing each other.
- In crypto markets, most major assets are positively correlated (typically ) because they share the overall market sentiment.
Relation to Covariance & Volatility
Covariance, correlation, and volatility are related:
This relationship is at the heart of portfolio volatility calculation: the off-diagonal entries of the covariance matrix equal .
Sharpe Ratio
The Sharpe Ratio measures the risk-adjusted return of an asset. It tells you how much excess return you receive for the extra volatility you endure — essentially, the return per unit of risk.
Formula
= Mean daily return of the asset
= Risk-free rate (0% for crypto)
= Standard deviation of daily returns
The daily Sharpe Ratio is annualized by multiplying by , giving a comparable annual figure.
Interpretation
| Sharpe Ratio | Quality | Meaning |
|---|---|---|
| < 0 | Negative | The asset loses money or underperforms the risk-free rate |
| 0 - 1 | Low | Positive return but low reward relative to risk taken |
| 1 - 2 | Good | Good risk-adjusted return — the strategy is efficient |
| > 2 | Excellent | Excellent risk-adjusted return — very efficient strategy |
Our Implementation
- Calculated using 365 days of daily log returns
- Risk-free rate set to 0% (standard for crypto markets)
- Annualized via to give a yearly comparable figure
- Historized daily in the database and recalculated with each new day of data
Security Market Line (SML)
The Security Market Line (SML) measures whether a crypto-asset is fairly priced relative to its systematic risk. It is derived from the Capital Asset Pricing Model (CAPM) and describes the relationship between expected return and systematic risk (Beta).
The SML allows us to determine whether an asset is undervalued, fairly valued, or overvalued relative to the market. To represent the crypto market, we use the CoinRisqLab 80 Index, which tracks the performance of 80 liquid cryptocurrencies, providing a broad representation of the crypto market.
All calculations are performed using a rolling 90-day window. This period balances statistical robustness and market responsiveness. Using shorter windows would increase noise, while longer windows could dilute recent market dynamics.
Methodology
For each asset and for the market index, we compute daily logarithmic returns. The expected market return is estimated as the mean of daily returns of the CoinRisqLab 80 Index over the last 90 days. The beta of each crypto-asset, based on 90 days, measures its sensitivity to market movements.
The expected return predicted by the CAPM is:
Note: We use (simplified model for crypto markets where traditional risk-free rates are less relevant).
Jensen's Alpha
We compare the CAPM expected return to the realized return over the same 90-day period:
| Position | Interpretation |
|---|---|
Above SML | Asset delivers higher return than its risk → potentially undervalued |
On SML | Fairly priced |
Below SML | Return too low for its risk → potentially overvalued |
Skewness
Skewness measures the asymmetry of the return distribution. It indicates whether extreme returns are more likely to be positive or negative.
Fisher's Skewness Formula
Interpretation
| Value | Type | Meaning |
|---|---|---|
< -0.5 | Negative Skew | Left tail is longer - more extreme losses than gains |
-0.5 to 0.5 | Symmetric | Balanced distribution of returns |
> 0.5 | Positive Skew | Right tail is longer - more extreme gains than losses |
Risk Implication
Negative skewness is concerning for investors because it means the asset has a higher probability of extreme negative returns (crash risk). Most cryptocurrencies exhibit negative skewness during market stress periods.
Kurtosis
Kurtosis measures the "tailedness" of the return distribution - how likely extreme values (outliers) are compared to a normal distribution.
Excess Kurtosis Formula (Fisher)
Interpretation
| Value | Type | Meaning |
|---|---|---|
< -1 | Platykurtic | Thin tails - fewer extreme events than normal |
-1 to 1 | Mesokurtic | Normal-like tails |
> 1 | Leptokurtic | Fat tails - more extreme events than normal |
Risk Implication
High kurtosis (leptokurtic) is important for risk management because it means extreme moves happen more often than a normal distribution would predict. Cryptocurrencies typically have high positive kurtosis, meaning "black swan" events are more common than in traditional markets.
Stress Test
Stress testing estimates the potential impact of historical crisis events on an asset, using its beta to project how it would react to similar market shocks. For each historical scenario, we select the relevant crisis window, compute the aggregate crypto market return over that period, and use the cumulative decline as the market shock.
Methodology
For each stress scenario, we first define a historical event window corresponding to a major crypto market disruption. We then retrieve the total crypto market capitalization over that period and compute the daily log returns:
The cumulative market move over the scenario window is obtained by summing the log returns:
The cumulative market shock is then expressed in standard return terms:
To account for differences in asset sensitivity, the market shock is scaled by each asset's historical beta. For stress testing purposes, negative betas are floored at 0:
The stressed price of each asset is then computed as:
Historical Scenarios
| Event | Period | Market Shock |
|---|---|---|
| COVID-19 Crash | Feb-Mar 2020 | -50.42% |
| China Mining Ban | May 2021 | -25.07% |
| UST/Luna Crash | May 2022 | -4.73% |
| FTX Collapse | Nov 2022 | -2.64% |
Example
Moving Average (90d)
The 90-day Simple Moving Average (SMA) smooths daily close prices into a single trend line. It is used as a long-term trend filter: a price trading above its 90d MA signals a bullish regime, below it a bearish regime.
Formula
The first MA is computed once a crypto has at least 7 daily closes, with the window growing from 7 up to 90 days as history accumulates and then staying capped at 90. The actual window used for each point is persisted alongside the value in crypto_moving_averages.window_days, so a young crypto's early MA can be told apart from a fully-seeded one.
Interpretation
| Signal | Meaning |
|---|---|
Price > MA 90d | Price trades above its long-term trend — bullish regime |
Price < MA 90d | Price trades below its long-term trend — bearish regime |
Crossover | Price crosses the MA — potential trend change |
Caveats
The SMA is a lagging indicator: it reacts to past prices, not future ones, and never spots a turning point in real time. It also gives equal weight to each of the 90 days, so a single old day still influences today's value as much as yesterday's.
RSI (14d)
The Relative Strength Index (Wilder, 1978) is a momentum oscillator bounded between 0 and 100. It compares the magnitude of recent gains to recent losses over a 14-day window and is the standard short-term overbought / oversold indicator.
Formula
For each day, split the daily price change into a gain and a loss component:
Seed the average gain and loss with a 14-day simple average, then apply Wilder's smoothing (exponential, recursion of order 14):
Compute the relative strength and the RSI:
Interpretation
| RSI Range | Zone | Meaning |
|---|---|---|
| RSI < 30 | Oversold | Recent losses dominate — possible buying opportunity (mean reversion) |
| 30 ≤ RSI ≤ 70 | Neutral | Balanced gains and losses — no extreme momentum |
| RSI > 70 | Overbought | Recent gains dominate — possible pullback |
Caveats
In a strong trend the RSI can stay above 70 (or below 30) for weeks without a reversal — the "overbought" label does not mean "sell now." The RSI works best in range-bound markets and as a confirmation signal alongside trend-following indicators (e.g. the 90d MA).
Calculation Parameters
| Parameter | Value | Description |
|---|---|---|
| VaR / Beta / Sharpe Window | 365 days | Longer window for stable risk estimates |
| Skew / Kurtosis / SML Window | 90 days | Shorter window to capture recent distribution |
| Moving Average Window | 90 days | Long-term trend filter on close prices |
| RSI Window | 14 days | Standard Wilder smoothing window for momentum |
| Return Type (statistical) | Logarithmic | Volatility, skewness, kurtosis, beta (statistical, 365d), correlation, Sharpe |
| Return Type (economic) | Simple | VaR, CVaR, SML (uses beta simple, 90d), min/max/mean return |
| Market Benchmark | CoinRisqLab 80 | Index used for Beta/SML calculations |
| Risk-Free Rate | 0% | Simplified assumption for crypto markets |
| Min. Data Points | 7 days | Minimum required for statistical validity |
| Update Frequency | Daily (2 AM) | All metrics recalculated daily |