Skip to main content
AI Fin Hub

Calculator

Deflated Sharpe Ratio Calculator

Bailey & López de Prado deflated Sharpe — corrects observed Sharpe for multiple-testing across K trials. Returns deflated SR, PSR, and confidence interval.

Runs in your browser. Nothing you enter is uploaded, and no account or API key is needed.

Education, not investment advice. Past performance does not predict future results. How we check our numbers.

Inputs

Observed Sharpe (annualized)

The best variant's annualized Sharpe ratio.

Observations (n)

Return periods in the backtest (252 = one year of daily data).

Number of trials (K)

Every variant you tried before picking this one, discarded ones included.

Skewness γ₃

0 for symmetric returns; negative = fat left tail.

Kurtosis γ₄

Full kurtosis: 3 for normal returns (excess kurtosis + 3).

Periods per year

252 daily, 52 weekly, 12 monthly, 365 for 24/7 crypto.

Deflated Sharpe ratio (DSR)

30.2%

Probability that the true Sharpe beats 2.54, the best Sharpe you would expect from 100 zero-skill trials of 252 periods. Below the 95% bar.

Decision metrics

Sharpe above benchmark

-0.54

Observed 2.00 − benchmark 2.54

PSR without deflation

97.3%

P(true Sharpe > 0), one trial

z-statistic

-0.52

Skew/kurtosis-adjusted

Reading the result

Bailey and López de Prado (2014) define the DSR as the probabilistic Sharpe ratio evaluated at the selection benchmark SR₀ = √V · E[max of K standard normals], with V = periods/(n − 1), the sampling variance of an annualized Sharpe estimate under zero skill. Above 95%: the edge is unlikely to be the luckiest of K trials. 80–95%: marginal; get more history or test fewer variants. Below 80%: consistent with selection luck. The gap between the two probabilities shows what the trial count costs you.

How to use it

  1. Enter your strategy's raw Sharpe ratio, sample size (number of return observations), skewness, and kurtosis γ₄ (3 for normal returns — this is raw kurtosis, not excess kurtosis).
  2. Enter the total number of strategy variants tested — including the ones you discarded. This is critical: under-reporting trials inflates DSR.
  3. Read the DSR: the probability that your true Sharpe beats the best Sharpe you would expect from K zero-skill trials. 95% or more is the standard bar.
  4. Compare it with the PSR without deflation (one trial, benchmark 0). The gap is what your trial count costs; the 'Sharpe above benchmark' figure shows the same gap in Sharpe units.
  5. If the Sharpe above benchmark is negative (DSR below 50%), the selection penalty overwhelms the raw Sharpe: test a longer sample, fewer variants, or a different signal.

Questions people ask

What does 'deflated' mean here?

A raw Sharpe ratio ignores two things: that the best of many backtested variants looks good by luck, and that skewed, fat-tailed returns make a Sharpe estimate noisier. Bailey and López de Prado's (2014) deflated Sharpe ratio handles both: it raises the bar to the Sharpe you would expect from the best of K zero-skill trials and then asks, with a skew- and kurtosis-adjusted test, how likely your true Sharpe is to clear it. The tool reports that as a probability.

How many trials should I report?

All of them. The deflation factor depends on the total number of strategy variants tested, including the ones you discarded. Under-reporting trials shrinks the deflation and inflates the apparent Sharpe — that's exactly the bias the metric was designed to catch.

What's a meaningful deflated Sharpe threshold?

The headline DSR is a probability, so read it like a confidence level: 95% or more is the common bar, 80-95% is marginal, and below 80% the Sharpe is consistent with selection luck. The tool also shows the Sharpe above the benchmark (your annualized Sharpe minus the expected maximum from K trials), which is a Sharpe difference rather than a probability, and the PSR without deflation, so you can see how much the trial count costs.

Can DSR be negative?

No: as defined by Bailey and López de Prado it is a probability between 0 and 1. What can be negative is the 'Sharpe above benchmark' figure: it goes below zero when your observed Sharpe is smaller than the best Sharpe K zero-skill trials would produce, which is common with many trials (50+), a short sample and a modest raw Sharpe. In that case the DSR falls below 50%.

Should I trust DSR if my sample is short?

Be cautious below 100 observations. The deflation formula incorporates higher moments (skew, kurtosis), which need decent sample size to estimate well. This calculator takes skew and kurtosis as inputs you set — it does not estimate them from a trade log, so estimate them on at least 100 observations before trusting DSR, or use the Backtest Overfitting Score, which computes moments from an uploaded returns CSV.

Guides, formulas and worked examples

  • 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.

  • Playgrounds Walk-Forward Validation Visualizer

    Paste a strategy returns CSV, get per-window in-sample vs out-of-sample Sharpe and the IS→OOS drop. Rolling and anchored window modes. Browser-only.

  • 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.

  • 12 min read Did You Overfit? PBO and Deflated Sharpe

    A practical tutorial on the two best-documented tests for backtest overfitting — PBO via CSCV and the Deflated Sharpe Ratio. Runnable Python + tool.

  • 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.

  • 12 min read Model Selection Framework for Finance Tasks

    A task × latency × cost × context decision tree for finance LLM workloads. Ten concrete scenarios mapped to tier bands. Grounded in published pricing, not.

All articles

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/deflated-sharpe-ratio.js";

Input and output contract and the guide for agents.