Skip to main content

Sharpe Ratio vs Sortino Ratio

TL;DR

Both measure return per unit of risk. The Sharpe Ratio uses total volatility (both upside and downside). The Sortino Ratio uses only downside volatility — it doesn't penalize big up-days. For trading strategies where upside volatility is desirable, Sortino is usually the better measure.

Two return distributions with identical average returns and identical standard deviations, so they score the same Sharpe ratio. The first is symmetrical. The second has its variance concentrated on the upside with a tight left tail. Sharpe penalises both equally because it treats all deviation as risk. Sortino only counts downside deviation, so it separates them, which is usually what a trader actually wants to know.

Identical Sharpe, very different accounts. Sortino separates them by ignoring upside.

The formulas​

Sharpe Ratio:

Sharpe = (Return − Risk-Free Rate) / Standard Deviation of Returns

Sortino Ratio:

Sortino = (Return − Risk-Free Rate) / Downside Deviation

Downside deviation is the standard deviation calculated using only returns below a target (usually zero or the risk-free rate).

Both are typically reported annualized. For daily returns on futures, you multiply the raw ratio by √252 (number of trading days per year).

Why Sortino exists​

Standard deviation treats a big up-day the same as a big down-day — both count as "volatility." But if you're a trader, a big up-day is exactly what you want. Sharpe penalizes it anyway.

Sortino fixes that asymmetry. It only counts deviations from the target that are negative. A strategy with occasional huge wins and steady small losses gets a much better Sortino than Sharpe.

What values are good​

RatioSharpeSortino
< 0Losing strategyLosing strategy
0 – 0.5WeakWeak
0.5 – 1.0AcceptableAcceptable
1.0 – 2.0GoodGood (usually 1.5–2.5 corresponds to "good" Sharpe)
2.0 – 3.0Very goodExcellent
> 3.0Exceptional — audit for curve-fittingExceptional — audit

For context: the S&P 500's long-term Sharpe is around 0.4–0.5. A strategy Sharpe of 1.0 is genuinely good. A backtest Sharpe of 4.0 is probably noise or over-fitting.

Sortino is usually higher than Sharpe​

Because downside deviation only captures negative days and total standard deviation captures both, Sortino ≥ Sharpe (almost always). A strategy with Sharpe 1.2 typically shows Sortino 1.6–1.8.

The gap tells you something: if Sortino is much higher than Sharpe, the strategy has asymmetric volatility — mostly small losses punctuated by large gains. If Sortino ≈ Sharpe, the upside and downside are roughly symmetric.

Calculating from a trade log​

import numpy as np
import pandas as pd

trades = pd.read_csv("trades.csv")
# Convert to daily returns; assumes "date" column and "pnl" in dollars on a fixed equity base
daily = trades.groupby("date")["pnl"].sum() / 100_000 # pct return on $100k account

rf = 0.04 / 252 # 4% annual risk-free, daily

# Sharpe (annualized)
sharpe = (daily.mean() - rf) / daily.std() * np.sqrt(252)

# Sortino (annualized)
downside = daily[daily < 0]
sortino = (daily.mean() - rf) / downside.std() * np.sqrt(252)

print(f"Sharpe: {sharpe:.2f}")
print(f"Sortino: {sortino:.2f}")

Which should you care about?​

For a systematic trading strategy: Sortino, primarily. Your goal is asymmetric payoff — big wins, controlled losses. Sortino rewards exactly that structure.

For fund reporting / external investors: Sharpe, because it's the industry standard. Allocators compare everything in Sharpe.

Most traders track both.

Common mistakes​

  • Not annualizing. Raw daily Sharpe of 0.08 sounds bad until you annualize it to ≈1.27. Always report annualized.
  • Using the wrong risk-free rate. In rate environments above 0%, ignoring it inflates both ratios. Use current T-bill rate.
  • Comparing ratios across wildly different timeframes. A 1-year Sharpe and a 10-year Sharpe are not apples to apples. Long samples tend to have lower Sharpe because outlier events pull down the average.

Frequently Asked Questions

What is a good Sharpe ratio for a trading strategy?

Annualized Sharpe of 1.0 is good, 2.0 is very good, 3.0+ is exceptional and worth auditing for over-fitting. For reference, the S&P 500's long-term Sharpe is roughly 0.4–0.5.

Sharpe vs Sortino — which is higher?

Sortino is almost always higher than Sharpe because it only counts downside volatility. A typical ratio is Sortino ≈ 1.3–1.5× Sharpe. When they're very close, the strategy has symmetric upside/downside.

Why do traders prefer Sortino?

Because trading strategies intentionally seek upside volatility (big winners). Sharpe punishes that; Sortino doesn't. For asymmetric-payoff strategies like trend-following, Sortino is the more honest measure.

How do I annualize Sharpe or Sortino?

Multiply the ratio calculated on daily returns by √252 (trading days per year). For weekly data, use √52. For monthly, √12. Always report annualized unless the reader knows the raw timeframe.