Portfolio Manager v1.1.0

History Chart, Corporate Actions, Dark Mode & More — Everything That’s New in the v1.1.0 Update

ARTICLE 8 OF 8 v1.1.0 UPDATE

🌟 Finmagine Portfolio Manager — Now on the Chrome Web Store

Multi-broker tracker: Indian & global stocks, MFs, ETFs • Decision Journal, History Chart, Corporate Actions • Free

Install Free →
Published: March 8, 2026 | Updated: March 8, 2026 | 20 min read | Product Update • Article 8 of 8
🎙 Multimedia Learning Hub
History ✦ chart, corporate actions, dark mode, profit growth CAGR, watchlist upgrades — 25 interactive flashcards
Learning Overview
Test Your Knowledge
✦ History Chart

True portfolio value month-by-month vs a DCA benchmark in the same index. Finally see how your stock picking actually compares to just buying an index every month.

✂ Corporate Actions

Stock Split and Bonus Issue adjustment in one click. All lot quantities and cost prices update automatically across every broker, every trade date.

☀ Dark / Light Theme

Toggle between the default dark green terminal and a clean light theme. All charts, tables, and signal badges adapt instantly. Your preference is saved and synced.

📈 Profit Growth CAGR

Two new Holdings columns: PG3Y% and PG5Y% — net profit CAGR over 3 and 5 years. Compare price CAGR with earnings growth to identify stocks where price has outrun fundamentals.

Table of Contents

  1. What’s in v1.1.0 — Quick Overview
  2. History ✦ Chart: True Portfolio Value Over Time
  3. Corporate Action Modal: Stock Splits and Bonus Issues
  4. Dark & Light Theme Toggle
  5. Profit Growth CAGR Columns (PG3Y% / PG5Y%)
  6. Watchlist Upgrades: Market Cap Chips, Sort Persistence & Add Qty
  7. Cloud Sync

What’s in v1.1.0 — Quick Overview

v1.1.0 is the largest update since the initial launch. It introduces four major new capabilities and a set of targeted quality-of-life improvements across the Watchlist, Holdings, and Charts tabs.

History Chart

New chart type in the Charts tab. Shows the actual ₹ value of your portfolio every month using Yahoo Finance monthly closes, compared to a DCA benchmark (Nifty 50 or S&P 500) with the same cash invested.

Corporate Actions

Stock Split and Bonus Issue modal accessible from Holdings rows and the stock detail modal. Enter the ratio and every trade for that stock updates automatically: quantity multiplied, cost price divided.

Dark / Light Theme

☀️/🌙 toggle button in the extension header. Switches between the dark green terminal theme and a clean white light theme. All charts re-render with theme-appropriate colours.

📈

PG3Y% & PG5Y%

Two new columns in the IN_EQ Holdings table: net profit CAGR over 3 years and 5 years (from Screener.in). Use with price CAGR to spot where earnings growth has lagged price appreciation.

🏢

Watchlist MCap Chips

Large / Mid / Small filter chips (SEBI thresholds) above the Watchlist table. Instantly segment your watchlist by market cap category without manual sorting.

🔄

Watchlist Sort Persistence

Your Watchlist sort column and direction are saved and restored on every open. Default is Score desc. Changes auto-sync via cloud if cloud sync is enabled.

History ✦ Chart: True Portfolio Value Over Time

Charts Tab • IN_EQ & GL_EQ

The History chart answers a question the Journey chart cannot: not just how much capital I deployed, but what was my portfolio actually worth at each point in time? The Journey chart shows cumulative invested ₹ vs current value. The History chart computes the actual market value of every holding at every month using real Yahoo Finance monthly closing prices.

✦ History Chart — Portfolio Value vs DCA Benchmark

Your Portfolio (₹ value at month-end)
DCA Benchmark (same ₹ in index each month)
Invested Capital (cumulative cost)

Three lines on an area chart: your actual portfolio value (monthly closes × qty held at that time), a DCA benchmark showing what the same cash invested in Nifty 50 every month would be worth, and your cumulative invested capital as a floor reference.

How It Works

When you open the History chart for the first time, the extension fetches monthly closing prices for every Indian equity in your portfolio via Yahoo Finance, going back to the month of your first trade. It then reconstructs your portfolio value month-by-month:

The DCA benchmark is the critical comparison. It shows what happens if you had taken every ₹ you deployed into individual stocks and instead put it into Nifty 50 on the same dates. This is the true alternative: passive investing with the same capital and same timing, just no stock selection. If your blue line is above the green line, your stock picking has added value over passive. If it is below, the index has won.

Indian vs Global Portfolios

Asset ClassDCA BenchmarkIndex Used
IN_EQ (Indian Equities)Nifty 50Yahoo Finance: ^NSEI
GL_EQ (Global Equities)S&P 500Yahoo Finance: ^GSPC

For GL_EQ, USD values are converted to ₹ at your configured FX rate before comparison. The benchmark is also computed in ₹ terms for a like-for-like comparison.

Performance Details

The History chart is the most honest accountability tool in the extension. Other metrics (XIRR, Index Beat on live prices) show current performance. The History chart shows the entire arc — including periods when your portfolio was below the benchmark, when it recovered, and whether that recovery came from smart decisions or just a rising tide.

Corporate Action Modal: Stock Splits and Bonus Issues

Holdings Rows • Stock Detail Modal

When a company announces a stock split or bonus issue, every trade record in your portfolio needs adjustment: quantities multiply, cost prices divide. The Corporate Action modal handles this in one operation — enter the ratio, preview the changes, apply.

How to Open the Corporate Action Modal

Two entry points:

Stock Split

Two input formats are supported for splits:

The multiplier = N/M (for ratio) or old_FV/new_FV (for face value change). For each trade: new_qty = floor(old_qty × multiplier), new_cost_per_share = old_cost / multiplier.

Bonus Issue

Enter the bonus ratio as “For every X shares held, get Y bonus shares.” For example, a 1:1 bonus (1 bonus share for every 1 held) means you end up with 2 shares for every 1 you had — a 2× multiplier. A 1:2 bonus (1 for every 2 held) is 1.5×.

Multiplier = (X + Y) / X. For each trade: new_qty = floor(old_qty × multiplier), new_cost = old_cost / multiplier.

Live Preview Table

Before applying, the modal shows a preview table of every lot with the adjusted quantities and costs:

TITAN — Stock Split 1:5 Preview

Trade DateBrokerOld Qty → New QtyOld Cost → New Cost
2022-04-10Zerodha10 → 50₹2,450 → ₹490
2023-01-15Zerodha5 → 25₹2,850 → ₹570
2024-06-08Groww8 → 40₹3,100 → ₹620
Corporate Action adjustments are irreversible within the current session. The preview table is your final check before applying. Verify the multiplier and spot-check one or two lot values against your broker statement before clicking Apply. If you apply an incorrect ratio, you can correct it by applying another corporate action (e.g., a reverse split) to undo the effect.

What Gets Updated

Applying a corporate action updates every trade for that ticker, across all brokers:

Total invested ₹ (cost × quantity) is preserved. The net cost per share drops proportionally as quantity increases — which is correct: a split does not change your total investment.

Dark & Light Theme Toggle

Extension Header • ☀ / 🌙

Click the ☀️ / 🌙 button in the extension header (next to the ⟳ Refresh button) to switch between themes. The transition is instant — no reload required.

🌙 Dark Theme (Default)

  • Dark green terminal background
  • Green positive P&L, red negative
  • High contrast for data-dense tables
  • Preferred for market-hours monitoring

☀ Light Theme

  • Clean white background
  • Easier on eyes in bright environments
  • Chart.js colours adapt to white background
  • Signal badges and score colours adjust

Chart.js reads CSS variables at render time via getComputedStyle, so every chart (Composition, P&L, XIRR, Journey, History, Sector, etc.) automatically renders with theme-appropriate grid lines, tooltip colours, and legend text when you toggle. No manual chart refresh required.

Theme preference is saved and synced. Your choice is stored in settings.theme and restored on the next open. If cloud sync is enabled, your theme preference syncs across devices automatically.

Profit Growth CAGR Columns (PG3Y% / PG5Y%)

Holdings Tab • IN_EQ

Two new columns in the Indian Equity Holdings table: PG3Y% (net profit CAGR over 3 years) and PG5Y% (net profit CAGR over 5 years). These values are fetched from Screener.in and cached alongside other fundamental data.

Why Profit Growth CAGR?

Price CAGR (already visible as the 3Y% and 5Y% columns) tells you how fast the stock price has grown. Profit Growth CAGR tells you how fast the underlying earnings have grown. The gap between the two is the valuation expansion or contraction component of your return.

ScenarioPrice 5Y CAGRPG5Y%What It Means
Price ≈ Earnings18%17%Healthy: most of the return comes from earnings growth, not valuation re-rating
Price >> Earnings28%12%Caution: 16pp of return came from P/E expansion. Future returns may compress if P/E reverts
Earnings >> Price10%22%Potentially undervalued: earnings have outgrown price. Possible P/E re-rating ahead if market recognises
Low earnings growth15%4%Stock price has risen mainly on hope/sentiment, not fundamental delivery. High risk if sentiment shifts
Use PG3Y% and PG5Y% together with 3Y% and 5Y%. A stock where Price 5Y CAGR (28%) far exceeds PG5Y% (12%) has delivered a significant portion of returns from valuation re-rating — which is not repeatable. A stock where PG5Y% (22%) exceeds Price 5Y CAGR (10%) may be compounding earnings quietly while the market underprices it.

Both columns are colour-coded: high profit growth (> 15%) appears green; moderate (5–15%) appears amber; low or negative (< 5%) appears red. A dash (—) appears if Screener.in data is not yet loaded for that stock.

Watchlist Upgrades

Several quality-of-life improvements were made to the Watchlist tab in v1.1.0:

Market Cap Filter Chips

Watchlist Tab

Three chips above the Watchlist table let you instantly filter by market cap category using SEBI’s standard thresholds:

ChipSEBI DefinitionMarket Cap
🏛 LargeTop 100 by MCap≥ ₹20,000 Cr
🏚 Mid101st–250th by MCap₹5,000 Cr – ₹20,000 Cr
🏪 Small251st and below< ₹5,000 Cr

Clicking a chip filters the Watchlist to only show stocks in that MCap category. Click the same chip again (or click “All”) to clear. Market cap values are sourced from Screener.in fundamentals (the same fundamentals[sym].marketCapCr used in Holdings calculations).

Sort Persistence

Previously, the Watchlist sort order reset to Score descending every time you closed and reopened the extension. Now your sort column and direction are saved in settings.watchlistSortCol and settings.watchlistSortDir and restored on every open. Default remains Score desc if no sort has been applied.

When cloud sync is enabled, your Watchlist sort preference syncs with your settings — so if you sort by P/E ascending on your laptop, the same sort is active when you open the extension on another device.

Add Qty for Watchlist

The Watchlist tab now includes the same “invest ₹ → calculate Add Qty” bar that Holdings has. Enter an investment amount in the invest bar above the Watchlist table, and each row shows how many shares you would get at the current price with that amount.

This lets you quickly size a potential new position: “if I invest ₹50,000, what is my exposure in each of these watchlist candidates?”

Watchlist Journal Notes (WJ Button)

The WJ (Watchlist Journal) button on each watchlist row was also introduced in v1.1.0. See Article 7 (The Decision Journal) for the full guide on Watchlist Journal intent categories and the pre-trade note workflow.

Cloud Sync

Settings • ☁ Sync

Cloud sync was deployed as part of the v1.1.0 release. When enabled in Settings, your entire portfolio — all trades, all watchlist entries, all settings and preferences — is backed up to your Finmagine account as a single encrypted JSON blob.

☁ What Cloud Sync Backs Up

  • All trades — every buy record across all 4 asset classes and all brokers, including Decision Journal notes
  • Watchlist — all watchlist entries, WJ notes, and watchlist sort preference
  • Settings — theme, FX rate, brokerage charges template, PEG denominator choice, Display column preferences
  • Alert thresholds — per-stock stop-loss levels configured in the Alerts tab

Sync is available to logged-in users at finmagine.com. Each sync operation pushes the complete portfolio state — the server stores only the latest version (no version history is retained on the server side; your local chrome.storage.local is the authoritative copy).

Cloud sync is the safety net. If your browser profile is reset, you switch machines, or you need to reinstall Chrome, your portfolio data is restored from the cloud in seconds. Without cloud sync, a browser reset would mean rebuilding your entire trade history from scratch.

📚 Finmagine Portfolio Manager — Article Series (8 articles)

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