Information Ratio: Active Return, Tracking Error, and Python Implementation

The Information Ratio (IR) measures how consistently a strategy or portfolio manager generates alpha above a benchmark, relative to the volatility of that alpha. Where the Sharpe Ratio penalizes total volatility against a risk-free rate, the Information Ratio uses tracking error — the standard deviation of active returns — as its denominator. This makes IR the natural metric for any strategy evaluated relative to a benchmark: long-only equity funds, factor strategies, sector-rotation models, and tactical overlay programs.

If Sharpe asks "how much return per unit of total risk?", Information Ratio asks "how reliably do you beat your benchmark per unit of deviation from it?" A manager who consistently beats the S&P 500 by 2% with 1% tracking error (IR 2.0) is far more valuable than one who beats it by 5% with 20% tracking error (IR 0.25) — the first is a consistent alpha generator; the second is largely noise.

The Information Ratio Formula

The Information Ratio is the annualized active return divided by the annualized tracking error:

IR = Annualized Active Return / Annualized Tracking Error Active Return = mean(rp − rb) × N  ·  Tracking Error = std(rp − rb) × √N  ·  Simplifies to: mean(e) × √N / std(e)

Where rp is the portfolio return each period, rb is the benchmark return each period, ei = rp,i − rb,i is the active return each period, and N is the number of periods per year (252 daily, 52 weekly, 12 monthly). The annualized active return is mean(e) × N; the annualized tracking error is std(e) × √N. Dividing these cancels one √N factor, giving the compact form: mean(e) × √N / std(e).

This formula is structurally identical to the Sharpe Ratio, but applied to active returns versus a benchmark instead of excess returns versus the risk-free rate. If the benchmark is the risk-free rate, IR and Sharpe are mathematically equivalent.

Tracking Error

Tracking error (TE) is the annualized standard deviation of the period-by-period difference between portfolio and benchmark returns:

TE = std(rp − rb) × √N Uses sample standard deviation (ddof=1)  ·  N: 252 daily, 52 weekly, 12 monthly

Low tracking error (0–2%) indicates a strategy that hugs its benchmark closely — a highly index-like portfolio with small active bets. High tracking error (10%+) indicates large concentrated positions that deviate substantially from the benchmark each period. Tracking error is the currency of active risk budget: a 5% annual TE means the manager is taking enough active risk to deviate from the benchmark by roughly 5 percentage points per year on average.

TE is not total volatility: A portfolio with 20% total standard deviation and 15% benchmark volatility can have tracking error of only 3% if the active bets are small and consistent. Tracking error measures the volatility of the difference — not the portfolio's absolute volatility.

Python Implementation

import math

ANNUALIZATION = {
    "daily":   math.sqrt(252),
    "weekly":  math.sqrt(52),
    "monthly": math.sqrt(12),
    "annual":  1.0,
}

def information_ratio(
    returns: list[float],
    benchmark: list[float],
    periodicity: str = "daily",
) -> float:
    """
    Annualized active return divided by annualized tracking error.

    Args:
        returns:     portfolio period returns as decimals (e.g., 0.01 for 1%)
        benchmark:   benchmark period returns aligned to same dates
        periodicity: "daily" | "weekly" | "monthly" | "annual"

    Returns Information Ratio. Returns infinity when tracking error is zero
    and active return is positive; 0 when tracking error is zero and active
    return is non-positive.
    """
    n = min(len(returns), len(benchmark))
    if n < 2:
        return 0.0

    excess = [r - b for r, b in zip(returns[:n], benchmark[:n])]
    mean_e = sum(excess) / n
    variance = sum((e - mean_e) ** 2 for e in excess) / (n - 1)
    tracking_error = math.sqrt(variance)

    if tracking_error == 0:
        return float("inf") if mean_e > 0 else 0.0

    factor = ANNUALIZATION.get(periodicity, ANNUALIZATION["daily"])
    # IR = mean(excess) * sqrt(N) / std(excess) — identical to Sharpe on active returns
    return (mean_e / tracking_error) * factor

Example: Evaluating a Strategy Against the S&P 500

# Monthly returns (as decimals) from a long-only equity strategy and S&P 500
portfolio_monthly = [0.015, -0.014, 0.031, -0.001, 0.003, 0.003,
                     0.018, 0.000, 0.008, 0.014, -0.014, 0.018]
sp500_monthly     = [0.010, -0.007, 0.019, 0.005, -0.006, 0.011,
                     0.007, -0.003, 0.015, 0.004, -0.010, 0.012]

ir = information_ratio(portfolio_monthly, sp500_monthly, periodicity="monthly")
print(f"Information Ratio: {ir:.3f}")  # prints 0.880
# Average active return = 0.2% per month → 2.4% annualized
# Tracking error ≈ 0.79% per month → ~2.7% annualized
# IR ≈ 2.4 / 2.7 ≈ 0.88 — top decile (small sample; verify with full history)

Interpretation Benchmarks

Information Ratio benchmarks reflect the empirical distribution of active manager performance across the industry. The Fundamental Law (IR ≈ IC × √BR) implies that benchmarks scale with both skill and breadth — systematic strategies with hundreds of independent daily signals can legitimately achieve higher IR than discretionary managers making a few bets per year:

Annualized IR Verdict Notes
< 0 Destroys alpha Underperforms the benchmark. The active bets are net negative.
0 – 0.25 Poor Typical bottom-half active manager. Active fees rarely justified.
0.25 – 0.50 Average Median institutional active manager over full cycles. Cost-of-active range.
0.50 – 0.75 Good Top quartile active management. Consistent alpha generation justified.
0.75 – 1.0 Very good Top decile. Systematic strategies with broad, diversified signals.
> 1.0 Exceptional — scrutinize Rare in live trading. Verify for look-ahead bias, short sample, benchmark selection.

Benchmark selection bias: An IR looks excellent when computed against a weak or inappropriate benchmark. A strategy that holds a fixed 70% equity / 30% bond allocation will show high IR against a pure cash benchmark and mediocre IR against a 70/30 blended benchmark. Always verify that the benchmark represents the strategy's opportunity set, not just whatever maximizes the ratio.

The Fundamental Law of Active Management

Grinold and Kahn's Fundamental Law formalizes the two drivers of Information Ratio:

IR ≈ IC × √BR IC: Information Coefficient — correlation between predicted and realized active returns  ·  BR: Breadth — number of independent bets per year

The law has a critical implication for systematic strategy design: you can compensate for modest IC with high breadth. A discretionary macro manager making 10 independent calls per year with IC 0.15 achieves IR ≈ 0.15 × √10 ≈ 0.47. A systematic equity model making 1,000 independent daily bets with IC 0.015 achieves IR ≈ 0.015 × √1000 ≈ 0.47. Same expected IR, radically different mechanisms.

Practical limitation: The Fundamental Law assumes returns are i.i.d. and bets are truly independent. Both assumptions are violated in real markets: returns autocorrelate across time, and stocks in the same sector have correlated alphas. The "transfer coefficient" extension (Clarke, de Silva, and Thorley) modifies the law to account for portfolio constraints that prevent full expression of the forecast. In practice, the law gives a useful ceiling on achievable IR, not a guarantee.

Information Ratio vs. Other Risk Metrics

Metric What it penalizes When to prefer it
Sharpe Ratio Total volatility (up and down) Absolute-return strategies; no benchmark mandate; default choice
Sortino Ratio Downside volatility only Positively-skewed strategies; trend-following where upside runs are desirable
Calmar Ratio Max drawdown (not volatility) CTA-style funds; drawdown-sensitive allocators; recovery-time framing
Information Ratio Consistency of active return vs. benchmark Benchmarked strategies; long-only equity; factor funds; tactical overlay

The four ratios are complementary, not substitutes. A long-only equity fund should report Sharpe (for absolute risk-adjusted return), IR (for benchmark-relative consistency), and Calmar (for drawdown perspective). A CTA trend-follower with no benchmark should report Sharpe, Sortino, and Calmar. A fully market-neutral long-short fund with a cash benchmark can use IR and Sharpe interchangeably.

Failure Modes: When Information Ratio Misleads

Information Ratio and Position Sizing

Information Ratio does not directly determine position size — that remains the Kelly Criterion's domain. But IR provides context for Kelly sizing: a strategy with IR 0.5 has meaningful but modest alpha above its benchmark; a strategy with IR 1.5 has strongly reliable alpha. Higher IR justifies larger active bets (higher active weight relative to the benchmark). Grinold's Optimal Active Weight formula formalizes this: the target active weight in each position is proportional to IC × √(TE budget), and the aggregate IR emerges from the IC and breadth of all positions combined.

The practical sequence for a benchmarked strategy: compute Sharpe (absolute risk-adjusted return), Calmar (drawdown survivability), and IR (benchmark-relative consistency) together. A strategy with IR > 0.5, Sharpe > 1.0, and Calmar > 1.0 across a multi-year sample with diverse regimes has a sound risk profile. Apply Kelly to size the total active risk budget; distribute it across positions using the Grinold optimal weight formula.


Frequently Asked Questions

What is a good Information Ratio for algorithmic trading?
An Information Ratio above 0.5 is generally considered strong for a discretionary active manager — it means the manager consistently generates more than half a unit of active return per unit of tracking error. For systematic strategies with high breadth (many independent bets per year), values above 1.0 are achievable but warrant scrutiny for look-ahead bias or short sample. The Fundamental Law suggests a typical active equity manager with IC 0.05 and 100 independent annual bets achieves IR ≈ 0.05 × √100 = 0.5. Market-neutral systematic funds with diversified signals aim for IR 0.75–1.5; long-only active equity managers typically achieve 0.25–0.75 over full market cycles.
How does the Information Ratio differ from the Sharpe Ratio?
The Sharpe Ratio measures excess return over the risk-free rate divided by total standard deviation — it evaluates absolute performance. The Information Ratio measures active return over a benchmark divided by tracking error (the standard deviation of active returns) — it evaluates relative performance against an index or hurdle. If the benchmark is the risk-free rate, the two ratios are mathematically identical. In practice: use Sharpe for absolute-return strategies (long-short, CTA, commodity); use Information Ratio for strategies with a benchmark mandate (long-only equity, factor funds, tactical overlay).
What is tracking error and how does it relate to Information Ratio?
Tracking error (TE) is the standard deviation of period-by-period active returns (portfolio minus benchmark), annualized by multiplying by the square root of periods per year. It measures consistency: two managers with the same average active return but different tracking errors have different Information Ratios — the more consistent manager wins. Low tracking error (0–2%) indicates an index-hugging strategy; high tracking error (10%+) indicates concentrated active bets. The Information Ratio rewards consistency as much as magnitude: a manager generating 2% active return with 1% tracking error (IR 2.0) outscores one generating 5% active return with 10% tracking error (IR 0.5).
What is the Fundamental Law of Active Management?
The Fundamental Law, formalized by Grinold and Kahn, states IR ≈ IC × √BR, where IC (Information Coefficient) is the correlation between forecast returns and realized returns, and BR (Breadth) is the number of independent active bets per year. The law shows why systematic strategies can outperform discretionary managers even with modest IC: a model making 250 independent daily bets with IC 0.03 achieves IR ≈ 0.03 × √250 ≈ 0.47, competitive with a discretionary manager who has higher IC but far fewer annual decisions. To improve IR, increase forecast accuracy (IC) or add genuinely independent signals (BR) — adding correlated signals does not increase true BR.
Can the Information Ratio be used for quantitative strategies, not just equity funds?
Yes. Any strategy with an explicit benchmark or hurdle can use Information Ratio. For a long-short equity fund benchmarked to cash (risk-free rate), IR and Sharpe are equivalent. For a sector-rotation strategy benchmarked to the S&P 500, IR captures how well the rotation adds above passive exposure. For a systematic strategy with a custom benchmark (60/40 portfolio), IR measures how much the active signal contributes above the passive allocation. The key requirement is a clearly defined, period-consistent benchmark return series — without it, IR is meaningless, since the choice of benchmark becomes an arbitrary input that can inflate or deflate the ratio.
What is the difference between ex-ante and ex-post tracking error?
Ex-ante tracking error is a forward-looking estimate produced by a risk model — it predicts how much the portfolio might deviate from its benchmark. Ex-post tracking error is the realized standard deviation of past active returns — it measures what actually happened. The two diverge when the risk model misestimates factor exposures, when the portfolio holds positions outside the model's factor universe, or when correlations break down during stress (in 2008 many equity funds saw ex-post tracking error exceed ex-ante by 2–5×). Reporting both tells allocators whether the risk model is calibrated correctly. The Information Ratio in this guide is always ex-post — it uses historical returns, not a forward risk model.

Compute Sharpe, Sortino, and Calmar on your own return series — paste comma-separated returns and compare all three risk-adjusted metrics instantly.

Open Risk Metrics Calculator →   Drill Risk Metrics Flashcards →