Built and run by one person.

Rolling Returns

Return for every possible holding period, not just one start date.

Source data: AMFI daily NAV (38,000+ schemes, 37M+ rows since April 2006) + Nifty benchmark indices · Last updated: 2026-07-02
Live tool

Analyze any Indian mutual fund or portfolio across 30+ return, risk and benchmark metrics in the live MFPRO tool.

What Are Rolling Returns?

Rolling returns compute the return for every possible holding period of a given length within a time window. If you pick "1Y rolling over full history", we calculate the 1-year return starting from every single trading day in the fund's history.

This gives you the full distribution - the best case, worst case, average, and median - instead of just one snapshot return that depends on your start date.

How It Works

For each trading day d:
Rolling return = (NAV on d) / (NAV on d − window) − 1
For windows ≥ 1Y, this is annualized to CAGR.

We use an ASOF JOIN in DuckDB to find the nearest prior NAV when the exact lookback date falls on a holiday.

Two Time Concepts

Rolling window = the holding period length (3M, 6M, 1Y, 3Y, 5Y).

Evaluation period = the time range over which we compute rolling returns (Full History, Last 1Y, Last 3Y, Last 5Y, or Custom).

The evaluation period must be longer than the rolling window. You can't compute 5Y rolling returns over a 3Y evaluation window - there wouldn't be enough data.

Worked Example

1Y Rolling Returns, Last 3Y Evaluation

We look at every trading day in the last 3 years. For each day, we compute the 1-year return ending on that day. This gives us ~500+ return observations.

Statistics: Avg 14.2%, Median 13.8%, Min −8.1% (Mar 2023), Max 42.5% (Apr 2024).

The Min tells you the worst 1-year stretch, the Max the best, and % Negative tells you how often you'd have lost money holding for exactly 1 year.

Statistics We Show

Edge Cases

Related metrics

More Returns methodology from the MFPRO analytics tool: