Are You Really Beating the Market?

XIRR & Index Beat in Finmagine Portfolio Manager — Why P&L% Lies, What XIRR Reveals, and How N50/N500 Hold You Accountable to the Right Benchmark

ARTICLE 3 OF 6 XIRR · INDEX BEAT

Following along? Finmagine Portfolio Manager is coming to Chrome

Multi-broker portfolio tracker — Indian & global stocks, MFs, ETFs • Free, no account needed

Learn More →
Published: March 1, 2026 | Updated: March 1, 2026 | 16 min read | Return Analytics • Article 3 of 6

🎙 Multimedia Learning Hub

XIRR vs P&L%, Newton-Raphson under the hood, N50/N500 Index Beat — 30 interactive flashcards

What You Will Learn

A +30% P&L% return held for 5 years is worth less than a +30% return held for 1.5 years. And both might still be worse than just buying a Nifty 500 index fund. This article breaks down the three columns in Finmagine Portfolio Manager that answer the hardest question in investing: are you actually adding value over the alternative?

📈 P&L% vs XIRR
  • Why P&L% alone misleads
  • What XIRR normalises
  • When they tell different stories
✅ XIRR Calculation
  • Cash flows and dates
  • Newton-Raphson method
  • Portfolio-level XIRR
🎯 Index Beat (N50/N500)
  • Your exact entry date as benchmark
  • What beating N500 actually means
  • Permanent cache architecture
📊 Portfolio XIRR
  • All 4 ACs, unified ₹
  • The one honest number
  • Shown in stats strip
🎥

Video Walkthrough — Coming Soon

A video walkthrough showing XIRR and Index Beat calculations with real holdings examples will be published here at launch.

🎧

Audio Deep Dive — Coming Soon

Podcast-style audio on XIRR as the ultimate return metric coming at launch.

Test Your Knowledge — 30 Flashcards

Click any card to reveal the answer.

Table of Contents

  1. The P&L% Problem — When the Number Lies by Omission
  2. What XIRR Is and How It Works
  3. Reading XIRR Scores — What the Numbers Mean
  4. Index Beat (N50 / N500) — The Right Benchmark
  5. Portfolio XIRR — The One Honest Number
  6. The Two-Column Sort Strategy

The P&L% Problem — When the Number Lies by Omission

P&L% is the most commonly displayed return metric in every portfolio tracker. It is also the most incomplete. Here is why:

You have two holdings both showing +28% P&L%. Congratulations. But:

These are wildly different outcomes. TITAN has compounded at roughly 22% annualised. IREDA has compounded at roughly 6.5% annualised. One has likely outperformed an index fund. The other almost certainly has not. P&L% shows the same number for both.

P&L% answers "how much". XIRR answers "how fast". Investing is about deploying capital and getting it back with a return. The faster you get it back, the more times you can redeploy it. Time is not just a factor in investing — it is the dominant factor. XIRR bakes time in.

What XIRR Is and How It Works

XIRR stands for Extended Internal Rate of Return. It is the annualised discount rate that makes the net present value of a series of cash flows (at specific dates) equal to zero.

In simpler terms: it is the constant annual return rate that, applied to the timing of all your investments, would produce exactly the portfolio value you have today.

Cash Flows and Dates

For each holding, the extension treats your trades as follows:

Cash FlowSignDateExample
Each buy trade (net cost)Negative (outflow)Purchase date-₹1,80,000 on 15-Jan-2024
Each additional buy tradeNegativePurchase date-₹95,000 on 10-Jun-2024
Current market value (hypothetical sell)Positive (inflow)Today+₹3,42,000 on today

Given these three rows, XIRR solves: what annual return rate, compounded from each outflow date to today, produces the +₹3,42,000 terminal value from the ₹2,75,000 deployed across two dates? The answer is your XIRR.

The Newton-Raphson Method

XIRR has no closed-form algebraic solution for multiple cash flows. The extension uses the Newton-Raphson iterative method (implemented in js/xirr.js) to numerically converge on the solution. It starts with an initial guess (typically 10%), evaluates the net present value function and its derivative, and iteratively refines the estimate until the residual is below a precision threshold (0.000001).

This converges in 10–50 iterations for typical portfolios and is accurate to the same precision as Excel's XIRR function, which uses the same algorithm.

XIRR for a single lump-sum holding simplifies. If you made exactly one buy trade (no additional purchases), XIRR reduces to an annualised CAGR: (Current Value / Cost) ^ (1/Years) - 1. Multiple trades at different dates require the full iterative calculation.

Reading XIRR Scores — What the Numbers Mean

Here is a reference for interpreting XIRR values in the context of Indian equity markets:

XIRR RangeGradeContext
Above 25%ExcellentSignificantly outperforming the market. Nifty 500 long-run CAGR is ~13–14%. 25%+ XIRR is strong outperformance — though verify it's sustained, not a short-term spike.
18%–25%GoodMeaningfully beating the broad market. Worth holding and adding to if the thesis is intact.
10%–18%FairRoughly in line with or slightly above index performance. The position is working but not generating strong alpha.
Below 10%PoorLikely underperforming an index fund on an annualised basis. This capital may have served you better elsewhere — check Index Beat to confirm.
NegativeLossThe position has declined since purchase. A negative XIRR means you would have been better off holding cash. Check if a stop-loss has been missed.
Short holding periods make XIRR volatile. A stock bought 3 weeks ago and up 8% would show an extremely high annualised XIRR (600%+). This is mathematically correct but meaningless as a long-term signal. XIRR becomes meaningful and stable for holdings of 6 months or more.

Here is the Holdings table with XIRR next to P&L% — notice how different the stories can be:

StockBoughtP&L%XIRRHeldvs N500Signal
TITAN18 months ago+28%21.8%18M+8.4%✓ Alpha
IREDA4 years ago+28%6.5%48M-6.3%⚠ Lagging
HDFCBANK2.5 years ago+11%4.3%30M-9.8%⚠ Index lag
POLYCAB8 months ago+38%68.2%8M+24.1%✓ Strong alpha

Same P&L% (+28%) but completely different quality of return. TITAN is generating alpha; IREDA is a capital trap. This is what the XIRR column makes visible.

Index Beat

Index Beat (N50 / N500) — The Right Benchmark

Even an excellent XIRR doesn't tell the full story unless you compare it to what you would have earned by simply investing in an index fund on the same date. That is exactly what the N50 and N500 columns do.

Why Entry Date Matters

Consider this: you bought a stock in January 2020. Nifty 50 crashed 40% in March 2020 and recovered by December 2020. If someone asks "did you beat the Nifty?" they cannot use the Nifty's current level — they must use the Nifty level on your specific entry date.

Finmagine Portfolio Manager does this precisely. For each holding, it looks up the Nifty 50 and Nifty 500 closing price on the exact date of your earliest buy trade in that stock and computes the index return from that date to today. Your P&L% is then compared against this exact-entry-date benchmark.

StockEntry DateP&L%N50 (same period)N500 (same period)Beat N500?
POLYCABJul 2024+38%+11.2%+13.9%+24.1pp ▲
IREDAMar 2022+28%+32.4%+34.3%-6.3pp ▼
HDFCBANKOct 2023+11%+19.6%+20.8%-9.8pp ▼
TITANSep 2024+28%+17.3%+19.6%+8.4pp ▲

IREDA's +28% P&L% looks like a win. But the broad market returned +34.3% from the same entry date. You underperformed by 6.3 percentage points. You would have done better with an index fund. This is the honest truth that N500 surfaces.

The Permanent Cache Architecture

Index historical data is fetched once from Yahoo Finance (^NSEI for Nifty 50, ^CRSLDX for Nifty 500) and stored permanently in chrome.storage.local keyed by date. Once the Nifty level for a specific date is cached, it is never fetched again.

This means: your Index Beat calculations are instant after the first refresh. As your portfolio grows with older trades, only the new unique dates trigger a fetch. The cache effectively accumulates a complete Nifty price history over time.

Portfolio XIRR — The One Honest Number

Individual XIRR tells you how each holding is performing. Portfolio XIRR tells you whether your overall strategy is working. It is shown in the stats strip at the top of the Holdings tab, updated on every price refresh.

The Portfolio XIRR is computed across all trades in all 4 asset classes. USD trades (GL_EQ and GL_MF) are converted to ₹ at the configured FX rate before the calculation, so every rupee deployed anywhere in your portfolio is treated equally.

What Portfolio XIRR Tells You

  • Is your stock-picking adding value over index funds? If Portfolio XIRR < Nifty 500 CAGR over the same period, the honest answer is: probably not — your MF or ETF holdings might be doing better than your individual stock picks.
  • Is your capital deployment strategy efficient? XIRR penalises large idle periods between deployments. If you held cash for 18 months before investing, Portfolio XIRR captures that drag.
  • Is the whole better than the parts? Compare Portfolio XIRR to the highest individual XIRR holdings. If one stock has 68% XIRR and your portfolio has 14%, concentration elsewhere is dragging overall performance.

The Two-Column Sort Strategy

The Holdings table is fully sortable. The most powerful combination for identifying your best and worst allocations:

  1. Sort by XIRR descending — Your best-performing positions by annualised return rise to the top. These are your "do more of this" signals.
  2. Sort by N500 ascending — Your biggest underperformers vs the broad market sink to the bottom. These are your "should I be here?" audit questions.

Stocks in the bottom quartile by N500 (significantly lagging the index) AND below 10% XIRR are the ones worth scrutinising most carefully. They are costing you both relative and absolute returns. The P&L% column would never surface this combination — it could show them all as positive and "fine".

Sort by XIRR, then look at Score. A stock with 35% XIRR and a Score of 4 (all 4 momentum signals passing) is a strong hold signal — returns are excellent and the setup is still technically sound. A stock with 8% XIRR and Score 0 (no signals) is a potential rotation candidate.

Finmagine Portfolio Manager — Article Series

📚 6-Article Series

Finmagine Portfolio Manager →

Finmagine Portfolio Manager

Per-broker stop-loss discipline, live prices, XIRR, Index Beat, Charts — for Indian Equities, US Stocks, Mutual Funds & Global ETFs. All local, no server required.

Learn More about Portfolio Manager →
← Back to Portfolio Manager Hub
← Back to Blog Hub