Skip to content

Research notes

Crypto return skewness and kurtosis

One extreme day changes a return sample's shape. Recompute unadjusted and adjusted moments, distinguish Pearson from excess kurtosis, and preserve the input contract.

An ivory vessel holds a cluster of small ivory spheres and one large lime sphere near its right rim on a black plinth.
Illustration for research notes; examples in this article are educational.

Crypto return skewness describes asymmetry in a specified return sample, while kurtosis summarizes its standardized fourth moment and sensitivity to extreme observations. Positive skewness points toward larger positive deviations; negative skewness points toward larger negative deviations. Pearson kurtosis uses a normal-distribution reference of three, while excess kurtosis subtracts three. Record the estimator, return interval and sample size before comparing values; neither statistic supplies the probability or size of the next loss.

Two reports can show different “kurtosis” for exactly the same returns without either containing an arithmetic error. One may subtract three, another may adjust for sample size, and a third may have silently excluded missing observations. Resolve those choices before interpreting the shape.

Freeze the return column

Choose one observation unit: hourly asset returns, daily net portfolio returns or completed-position returns. These describe different distributions. A portfolio series includes the effect of sizing and idle capital; an unweighted trade series gives each eligible position one observation regardless of money committed.

For a reproducible comparison, retain the venue or account scope, quote currency, observation times, cost treatment and missing-value policy. Decide whether the inputs are simple or log returns. The simple versus log returns guide explains that transformation; it can change measured shape because it is nonlinear.

Multiplying every return by 100 merely changes decimals into percentage units and leaves these standardized moments unchanged. Mixing both units within one column changes the data. Missing observations must also remain distinguishable from genuine zero returns.

This question goes beyond the center of the sample. The mean versus median trade-return example explains those location summaries; skewness and kurtosis ask how deviations around the mean are distributed.

Name the moment convention

Let r_i be one eligible return and n the count. Use the arithmetic mean, then compute the central moments with divisor n throughout:

d_i = r_i - mean(r)
m_k = sum(d_i^k) / n
g1 = m3 / m2^1.5
b2 = m4 / m2^2
g2 = b2 - 3

Here g1 is unadjusted Fisher–Pearson skewness, b2 is Pearson kurtosis and g2 is excess kurtosis. The variance-like denominator m2 uses n, rather than a sample-variance divisor of n−1. SciPy's skewness documentation specifies the central-moment definition and its adjusted alternative.

Cubing preserves a deviation's sign. Taking the fourth power removes it and gives large deviations substantial influence. Kurtosis therefore does not distinguish a large upside observation from its equally distant downside reflection. It also does not identify a particular loss percentile.

Reported quantityFormula hereNormal-distribution reference
Unadjusted skewnessg10
Pearson kurtosisb23
Excess kurtosisg2 = b2 − 30

These references describe the population normal distribution; a finite sample drawn from it need not match them exactly. NIST's shape-measure guidance distinguishes the kurtosis conventions and warns that extreme observations can distort both measures. A near-zero skewness value alone does not establish symmetry or normality.

Keep sample adjustments visible

Software may report adjusted skewness G1 = sqrt(n × (n−1)) / (n−2) × g1. This coefficient requires at least three observations and positive m2.

For the adjusted excess-kurtosis convention used below, define a = (n−1) / ((n−2) × (n−3)), then G2 = a × ((n+1) × g2 + 6). This needs at least four observations and positive m2. SciPy's kurtosis documentation distinguishes Fisher versus Pearson output and the bias=False adjustment using k-statistics.

To reproduce these adjusted columns with that API, explicitly choose bias=False for skewness and fisher=True, bias=False for kurtosis. Preserve the software version and missing-value policy too. “Adjusted” describes the estimator calculation; it does not make a short, dependent or selectively chosen trading history representative.

Audit a single extreme observation

The following original hypothetical sample contains 13 equal-length daily simple returns. Values are percentage points, costs are assumed already reflected, and zeros are genuine flat outcomes. This is invented teaching data, not market history, a strategy result or a KLINEO report.

Daily returnNumber of days
−3%1
−2%1
−1%1
0%6
+1%1
+2%1
+3%1
+18%1

The mean is 18 / 13 = 1.384615%. Calculating deviations in percentage-point units gives m2 = 25.159763, m3 = 341.451070 and m4 = 5905.953013, rounded for display. The powers have corresponding squared, cubed and fourth-power units; those units cancel in the standardized results.

Now compare the full sample, its sign-reversed reflection, and a sensitivity calculation excluding the +18% day. Recompute the mean and all moments for each row; do not remove only its fourth-power contribution while retaining the old denominator.

SampleCountUnadjusted skewness g1Excess kurtosis g2
Full, with +18%13+2.7056326.329898
Every return sign-reversed13−2.7056326.329898
+18% day excluded120.0000000.000000

For the full sample, Pearson kurtosis is 6.329898 + 3 = 9.329898. The adjusted results differ again:

SampleAdjusted skewness G1Adjusted excess kurtosis G2
Full, with +18%+3.07212110.322026
Every return sign-reversed−3.07212110.322026
+18% day excluded0.0000000.733333

Reflection changes the skewness sign while leaving kurtosis unchanged. Exclusion changes both the sample and the adjustment factor. Neither operation is evidence that the original extreme was an error. Retain valid extremes in the main result; label exclusions as sensitivity analysis.

The remaining 12 values have unadjusted skewness and excess kurtosis of zero, yet they are a discrete toy sample with six zeros. Matching two reference moments does not demonstrate a normal distribution. Nor does positive skew establish a profitable strategy: standardized shape omits the overall return level and invested capital.

Report fragility with the headline

A realistic failure is one mis-scaled observation: a decimal return of 0.18 imported as 18 represents +1,800%, rather than +18%. Its influence can overwhelm higher moments. Reconcile suspicious observations to source prices, balances or fill records before choosing an exclusion. The backtest data-quality worksheet provides that input-audit boundary.

Another failure is a constant series. If every return is equal, m2 is zero and the ratios are undefined. Report an undefined statistic with the reason; zero would falsely imply a measured normal-reference shape. Both linked SciPy functions document NaN results for constant inputs. Empty samples and nonfinite inputs also need explicit handling.

Keep a compact record alongside each result:

RecordWhat to preserve
Input contractReturn unit, frequency, account scope, dates and costs
EstimatorMoment divisor, Pearson/excess choice and sample adjustment
Eligible observationsCount, missing count and exclusion reasons
Extreme sensitivityFull result plus labeled largest-positive and largest-negative exclusions
Time sensitivityComparable earlier/later windows and their own counts
ReproducibilityInput hash, calculation code and software version

There is no universal trade-count threshold that makes these estimates stable. Related observations and changing conditions complicate inference; the sample-size guide explains why a row count is not independent evidence. A bootstrap uncertainty analysis also needs a dependence model and cannot invent extremes missing from the source history.

Finally, these moments ignore the order of observations. For a loss threshold or average loss beyond it, use the separate value-at-risk and expected-shortfall framework. For the adverse and favorable route traveled inside individual positions, use trade MAE and MFE. A return-distribution summary cannot reconstruct those paths.

Method and limits

This AI-assisted educational article uses the linked primary statistical documentation and an original hypothetical moment calculation. The full, reflected and exclusion samples were recomputed, including both adjustment conventions. No historical return distribution, predictive relationship or product reporting feature was tested. The worksheet supports reproducible description of a chosen sample; future tail probabilities require additional data and modeling assumptions.

Keep the context with the example.

Each worked example is illustrative, with its sources and assumptions in the article. Read our editorial standards for authorship, verification and corrections.