Mutual Funds, Minus the Marketing · Part 25 of 30
Sortino and information ratio: two Sharpe variants
Two questions Sharpe can’t answer
The Sharpe ratio divides a fund’s return above a risk-free rate by its volatility. It has two well-known blind spots.
First, volatility counts a +15% month and a −15% month the same. Most investors don’t feel them the same. The Sortino ratio fixes that by counting only the falls.
Second, Sharpe measures return against cash, not against what the fund was supposed to track. The information ratio asks a different question: how much did the fund earn above its own benchmark, per unit of wandering away from it?
Both are cousins of Sharpe, not replacements. Each answers a narrower question, and each has its own ways to mislead. This post is part of Mutual Funds, Minus the Marketing.
The Sortino ratio
Return − Minimum acceptable return (MAR)
Sortino = ───────────────────────────────────────────────
Downside deviation
Downside deviation = square root of the average of
(the shortfall below MAR, squared)
over ALL days, counting 0 on days at or above MAR,
then × √252 to annualise
MAR is the minimum acceptable return: the bar below which a day counts as a shortfall. We set it equal to the 6.5% risk-free rate the Sharpe post used, so the two ratios share a numerator. Other choices (zero, an inflation figure) are common, and they change the answer. CAGR below is the compound annual growth rate.
Worked example: two funds, one window
The same funds as in the capture ratio post: UTI Nifty 50 Index Fund and UTI Aggressive Hybrid Fund, direct growth plans, daily NAVs (net asset values, the price per unit) from the Association of Mutual Funds in India (AMFI) via mfapi.in, from 31 March 2016 to 30 March 2026. The data is as of 30 March 2026, more than three months before this post; it is historical and shown for illustration only. The yardstick for both is the Nifty 50 TRI (total return index, which counts dividends as reinvested) from NSE (the National Stock Exchange) Indices.
| Item | Index fund | Hybrid fund |
|---|---|---|
| CAGR | 12.24% | 12.63% |
| Less: MAR (risk-free rate) | 6.5% | 6.5% |
| Excess return | 5.74% | 6.13% |
| Volatility (annualised) | 16.18% | 11.8% |
| Sharpe = excess ÷ volatility | 0.35 | 0.52 |
| Downside deviation (annualised) | 11.87% | 8.87% |
| Sortino = excess ÷ downside deviation | 0.48 | 0.69 |
Two things stand out.
Sortino is higher than Sharpe for both funds. That isn’t the fund doing better. Downside deviation is smaller than volatility because it ignores the days above the bar, so dividing by it gives a bigger number. A Sortino can’t be compared with a Sharpe. Compare Sortino with Sortino, on the same bar and the same dates.
The hybrid fund has the lower volatility (11.8% against 16.18%), which is what a fund with part of its money outside equities would show. Its Sharpe and Sortino are the higher pair in this window. That describes this window and this mix of assets. It doesn’t say which fund is better, and the point-to-point post shows how much a different ten years could change it.
In Python
import pandas as pd, numpy as np
nav = pd.read_csv("uti-nifty50-index-fund-nav.csv", parse_dates=["date"]).set_index("date").nav_direct_growth.dropna()
nav = nav.loc["2016-03-31":"2026-03-30"]
rf = 0.065
daily = nav.pct_change().dropna()
years = (nav.index[-1] - nav.index[0]).days / 365.25
cagr = (nav.iloc[-1] / nav.iloc[0]) ** (1 / years) - 1
mar_d = (1 + rf) ** (1 / 252) - 1 # the daily equivalent of 6.5% a year
downside = np.sqrt((np.minimum(daily - mar_d, 0) ** 2).mean()) * np.sqrt(252)
print(f"Sortino {(cagr - rf) / downside:.2f}")
The information ratio
Fund CAGR − Benchmark CAGR Active return
Information = ───────────────────────────── = ───────────────
ratio Tracking error Tracking error
The top line is the active return: how far the fund’s growth rate sat from its benchmark’s. The bottom line is tracking error, the annualised standard deviation of the daily gap between the fund and the benchmark. The tracking error post covers it in full. The information ratio is Sharpe with the risk-free rate swapped for the benchmark.
It only makes sense with the right benchmark, and for a fund that is trying to differ from it. Two examples show what happens otherwise.
| Against the Nifty 50 TRI, same window | Index fund | Hybrid fund |
|---|---|---|
| Fund CAGR | 12.24% | 12.63% |
| Benchmark CAGR | 12.55% | 12.55% |
| Active return | −0.31% | 0.08% |
| Tracking error | 0.097% | 6.279% |
| Information ratio | −3.2 | 0.01 |
The index fund. Its benchmark is the Nifty 50 TRI, from NSE Indices. It trails by 0.31 points a year, which is mostly the cost of running the fund (the tracking difference), and it wanders from the index by only 0.097 points. Dividing a small gap by an even smaller wander gives −3.2, a dramatic number that says nothing about skill. Nobody was trying to beat the index. It’s the tracking difference divided by the tracking error, and nothing else.
The hybrid fund. The Nifty 50 TRI is not its benchmark, and the fund was never trying to match it. The active return is 0.08 points and the tracking error is 6.279 points, so the ratio is 0.01. That reads as “matched the index while wandering a long way from it”, and it describes nothing useful. Use the index the fund’s own documents name, or don’t use the ratio.
Common mistakes
- Comparing a Sortino with a Sharpe, or quoting one without its bar. Different denominators give different scales, and setting MAR to zero instead of 6.5% changes the Sortino. Compare like with like and quote the bar.
- Using the information ratio against the wrong benchmark. The hybrid example above is the standard way to get a meaningless number.
- Reading a passive fund’s information ratio as skill or the lack of it. It is mostly cost divided by a very small wander. The figure looks large because the denominator is tiny.
- Trusting one window. Both ratios here come from one ten-year stretch of daily returns. Another stretch gives other numbers, for the same reason a single Sharpe does.
Takeaway: Sortino counts only the falls, and the information ratio measures a fund against its benchmark instead of cash. Both change with the bar, the benchmark and the window, so a quoted number without them tells you very little.
This post is for educational purposes only and is not investment advice. Wealth Primer explains concepts, not recommendations — nothing here is a suggestion to buy, sell, or hold any specific security or fund. The author is not a SEBI-registered Research Analyst or Investment Adviser. Any prices or figures used as worked examples are historical and shown only to illustrate a calculation. Past performance does not indicate future results. Please do your own research or consult a registered adviser before making investment decisions. See the privacy & disclaimer policy for more.