A lightweight shell script tool that downloads and processes mutual fund Net Asset Value (NAV) data published by the Association of Mutual Funds in India (AMFI).
The script fetches the latest NAV data, parses it, and converts it into both TSV and JSON formats for easier analysis and automation.
The Association of Mutual Funds in India (AMFI) publishes daily NAVs for all registered mutual fund schemes on their official website.
These NAVs are essential for investors, financial analysts, and app developers who track or work with mutual fund performance.
The raw NAV data file contains:
- Scheme Code
- ISIN Payout / Growth / Reinvestment
- Scheme Name
- Net Asset Value
- Date
AMFI's NAV source:
📥 https://www.amfiindia.com/spages/NAVAll.txt
amfi_nav_extractor/
│
├── data/
│ ├── NAVAll.txt ← Raw downloaded data (ignored in Git)
│ ├── nav_data.tsv ← Cleaned TSV output (ignored in Git)
│ └── nav_data.json ← Parsed JSON output (ignored in Git)
│
├── extract_nav.sh ← Main shell script
├── .gitignore ← To ignore data files and OS clutter
└── README.md ← This file
git clone https://github.com/fuzail-pixel/amfi-nav-extractor.git
cd amfi-nav-extractorchmod +x extract_nav.sh./extract_nav.shThis will:
- Download the latest
NAVAll.txtfrom AMFI - Extract and clean mutual fund NAV entries
- Save them as
nav_data.tsvandnav_data.jsoninside thedata/folder
Scheme Code ISIN Payout ISIN Growth Scheme Name NAV Date
119551 INF209K1AZ71 INF209K1AZ97 Aditya Birla Sun Life Banking & PSU Debt Fund 106.7901 14-May-2025
[
{
"scheme_code": "119551",
"isin_payout": "INF209K1AZ71",
"isin_growth": "INF209K1AZ97",
"scheme_name": "Aditya Birla Sun Life Banking & PSU Debt Fund",
"nav": "106.7901",
"date": "14-May-2025"
}
]Q: What does this project solve or demonstrate?
This project demonstrates how to:
- Automate daily data fetching using shell scripting
- Parse semi-structured data into structured formats like TSV and JSON
- Handle real-world finance data from authentic public sources
- Build lightweight extract-transform pipelines
Ideal for developers building:
- Mutual fund tracking tools
- Personal finance dashboards
- ETL pipelines using shell/Python/JavaScript
data/NAVAll.txt
data/nav_data.tsv
data/nav_data.json
*.log
*.DS_Store
These are generated files and do not need to be pushed to the repo. Users can regenerate them via extract_nav.sh.
This project is open-source and available under the MIT License. All AMFI data remains the intellectual property of AMFI India.
Feel free to reach out on LinkedIn or GitHub if you have any questions or feedback.