Calculator
Returns Distribution Analyzer
Returns CSV → histogram, normal QQ plot, skewness, excess kurtosis, Jarque-Bera test, 3-sigma tail mass. Fat-tail diagnostics.
Runs in your browser. Nothing you enter is uploaded, and no account or API key is needed.
1. Upload a returns CSV
Format: date,returns. The first non-date column is analyzed, as decimals (0.012 = 1.2%). Simple or log returns both work: the shape statistics are scale-invariant, only the mean, stdev and median tiles assume decimals. Everything runs in your browser.
What this tool computes
Visualise the shape of your return distribution and quantify its deviation from normality — the precondition most risk metrics (Sharpe, VaR, parametric CVaR) quietly assume. Load the synthetic demo to see a heavy-tailed example, or upload your own returns.
How to use it
- Upload a CSV with a date column and one returns column as decimals (0.012 = 1.2%). A heavy-tailed synthetic demo loads by default.
- Read the tail-excess ratio: how many more moves beyond 3 standard deviations the series has than a normal distribution predicts.
- Check skewness, excess kurtosis and the Jarque-Bera statistic and p-value for normality.
- Compare the share of returns beyond ±3σ on each side with the normal 0.135%.
- Use the histogram and the normal QQ plot to see where the tails depart from normal: points bending away at the ends mean fat tails.
Questions people ask
What does the analyzer report?
Mean, standard deviation, median, skewness, excess kurtosis, the Jarque-Bera normality test, the share of returns beyond ±3 standard deviations on each side, a 30-bin histogram and a normal QQ plot. It does not fit Student-t or other distributions and does not compute VaR or CVaR.
What's the difference between kurtosis and excess kurtosis?
Kurtosis = E[(X-μ)⁴]/σ⁴. Normal distribution has kurtosis 3. Excess kurtosis = kurtosis − 3, so a Normal has excess kurtosis 0. The analyzer reports excess kurtosis, computed from sample moments as m₄ / m₂² − 3. Daily equity returns usually show clearly positive excess kurtosis: fatter than normal is the rule, not the exception.
Why does the t-distribution usually fit better than Normal?
Returns have fat tails: extreme moves are more common than a normal distribution predicts, and a Student-t with few degrees of freedom has that shape. The analyzer does not fit a t-distribution; it measures how far your series departs from normal (excess kurtosis, the tail-excess ratio, the QQ plot) so you can decide whether a fat-tailed model is needed.
What does VaR mean in plain language?
Value at Risk at 95% is the loss that should be exceeded on only 5% of days: the 5th percentile of the return distribution. CVaR (expected shortfall) is the average loss on the days beyond that threshold. This tool does not compute either; the VaR Backtest tool checks whether a VaR model's exceptions match its confidence level.
Should I trust VaR?
Only as one input. VaR is not subadditive (combining two positions can raise it), it says nothing about losses beyond the threshold, and it depends on the sample and model. Fat tails, which this analyzer measures, are exactly where a normal-based VaR understates risk.
Related tools
- Calculators Risk-Adjusted Returns Calculator
Paste a returns CSV. Sharpe, Sortino, Calmar, Omega, alpha, beta, tracking error, information ratio, max drawdown, and tail moments — plus.
- Calculators Backtest Overfitting Score
Upload a backtest trade log and compute Probability of Backtest Overfitting (PBO), Deflated Sharpe Ratio, and the odds your edge survives live trading.
- Calculators Efficient Frontier Calculator
Paste a multi-asset returns CSV. See the Markowitz mean-variance frontier, the minimum-variance portfolio, the max-Sharpe (tangency) portfolio.
Articles
- 9 min read How to Read a Backtest Report: 2026 Cheat Sheet
Five questions a backtest report must answer — edge real, persistent, cheap to trade, bearable, explainable — with the statistics that verify each.
- 8 min read The Sharpe Ratio Trap
Sharpe ignores tail risk, assumes Gaussian returns, and is trivially gameable. Four metrics to report alongside it: Sortino, Calmar, tail, deflated Sharpe.
- 10 min read After-Hours, 24-7, and Pre-Market Asymmetries
Three boundaries where LLM research built on equity's 9:30–16:00 clock breaks — earnings after close, 24-7 crypto, pre-market Asia/Europe action. Decision rule.
Workflows that use this tool
- Workflow Size your bets
Compute Kelly fraction, drawdown bounds, and correlated exposure across a book.
Use it from code
The same calculation as a JavaScript module you can import. It runs where you import it, with no request, key or rate limit.
import { compute } from "https://aifinhub.io/engines/returns-distribution-analyzer.js";