Built and run by one person.

Where do I get index levels (Nifty 50, Sensex, S&P 500) to benchmark against?

Not from a mutual fund NAV API. That distinction trips people up and it is a fair mistake: a NAV database carries index funds but no index levels. Asking it for something like scheme=nifty50 returns nothing useful, because the index itself is not in there. Two free, no-key routes instead.

1. TigZig Tremor carries 20 market series with long daily history. The Indian ones:

IndexTickerHistory from
Nifty 50^NSEISep 2007
Nifty Bank^NSEBANKSep 2007
Nifty Midcap 100^NSMIDCPSep 2007
Nifty 500^CRSLDXSep 2005
BSE Sensex^BSESNJul 1997

The same 20 also include the S&P 500, Nikkei, DAX, Hang Seng, Shanghai Composite, the US 10-year yield, the dollar index, gold, silver, copper, crude and USD/INR. Details: https://www.tigzig.com/apis/tremor.

2. The Yahoo Finance API for anything Tremor does not carry, or any period you want - a wrapper over the yfinance package, one line per series:

https://yfin-h.tigzig.com/v1/get-adj-close/?tickers=^NSEI&start_date=2026-01-01&end_date=2026-07-24

Swap in any Yahoo Finance symbol. Note the symbol suffixes are exact and not always what you would guess (^NSEI for the index, ^BSESN for Sensex, GC=F for gold futures) - bare NIFTY or GOLD returns nothing. See https://www.tigzig.com/agents-faq/why-does-my-api-say-not-found-for-an-id-that-looks-valid.

One caveat if you are benchmarking a fund against an index: yfinance silently rolls its window on some data types, so for a history you need to reproduce later, archive your pull. Both APIs are free and keyless: https://www.tigzig.com/agents-faq/free-macro-and-markets-data-apis.

← All Agents FAQ