Sortino Ratio — Return

Annualized Sortino ratio on the Return equity curve — penalizes only downside volatility (low-to-low log-returns).

Computed from
Equity curve
Scope
Single report
Range
Any real number
Direction
Higher is better
Basis
Computed on the low-to-low Return Series (money-weighted) — measured day-worst-point to day-worst-point, not close-to-close.

The Sortino ratio is the Sharpe ratio's more forgiving sibling. It measures return per unit of risk too — but it only counts the downside. Volatility that comes from big winning days no longer drags the score down, because nobody complains about upside surprises. That forgiveness is also its weakness: by ignoring the upside it throws away the one hint that a strategy might be hiding a fat tail — so a high Sortino is not automatically safer than a high Sharpe (often the opposite, see the red flag below).

How it's calculated

Sortino = mean(r) / downside_stdev(r) × √(ann_factor)
r
per-period return of the equity curve
downside_stdev(r)
the downside deviation — how spread out the losing periods are. It is the root-mean-square of the negative returns (positive periods count as zero, not dropped), averaged over ALL periods. Steady small losses → small; big erratic losses → large.
ann_factor
periods per year, derived from the data
In this product: Precisely: downside_stdev = √( Σ min(r,0)² / (N−1) ) — note the sum of squared shortfalls is divided by the total period count, not the number of losing periods, with a minimum-acceptable-return (MAR) of 0 (any losing period is downside; breakeven days aren't). Returns ≤ −100% are clamped to −99.9% before the log (same as Sharpe). If there is no downside at all the denominator is zero and the ratio is undefined (NaN), not infinite.

What it tells you

ValueReadingNotes
< 0LosingNegative average return.
0 – 1.5WeakDownside risk eats most of the return.
1.5 – 3SolidHealthy reward for the losses endured.
> 3ExcellentLosses are small relative to returns.

Worked example

Say Sharpe is 2.1. If this account's down days are all small, there isn't much downside to divide by — so Sortino comes out higher, maybe 3.0. The bigger the gap between the two, the more of the account's ups-and-downs are upside (the good kind) rather than losses.

But read that gap with care: a large gap can mean a genuinely upside-heavy strategy — or that the loss side is barely sampled (few, tiny losses), which is exactly what a martingale/grid looks like right before it blows up. A big Sortino-over-Sharpe gap is a question, not an answer (see the red flag below).

Pitfalls

Pitfalls & caveats
  • Few losing days = unstable AND flatteringly high. With only a handful of down days the downside deviation is a noisy estimate — Sortino can swing wildly or read undefined. Worse, a small denominator makes the number look great: a high Sortino driven by rare losses is not a strong strategy, it's an under-sampled one. Distrust a high Sortino that rests on very few losing days.
  • Inherits Sharpe's frequency and autocorrelation traps. Like Sharpe it's the daily ratio scaled by √252, so it's not comparable across trade frequencies (SQN caveat), and held/trending positions produce smooth runs that understate the downside deviation and inflate it.
  • It still assumes a sensible distribution. It can flatter a strategy whose real risk is a rare catastrophic loss. Pair it with max drawdown.
  • Not comparable to Sharpe at face value. A Sortino of 2 is not better than a Sharpe of 2 — they use different denominators. Compare like with like.

A suspiciously high Sortino with very few losing days is a warning, not a trophy. Because only the loss side feeds the denominator, a strategy that almost never books a small loss — martingale, grid, averaging-down — posts a gorgeous Sortino right up until the one trade that blows the account. Sharpe at least lets that hidden risk leak into total volatility; Sortino discards it by design. Always read Sortino next to max drawdown and the number of losing days, never alone.

Sortino vs Sharpe

SharpeSortino
Denominatorall volatilitydownside only
Penalizes upside spikes?yesno
Typical valuelowerhigher
Best foroverall smoothnessasymmetric, upside-heavy strategies

Related metrics

Further reading