Advanced

Building a Personal Research Dashboard Using Python and Free APIs

A build course for investors and active traders who already write basic Python and are tired of stitching research together from screener.in, NSE, BSE, AMFI and a dozen broker screens. You will design and build one private research dashboard on free data: NSE bhavcopy and delivery data, yfinance prices, AMFI and mfapi.in NAVs, BSE and NSE corporate filings, and RBI macro series. You will store it all in a local DuckDB database, adjust for splits and bonuses, and run data quality checks that catch silent errors. On top of that data you will build valuation bands, relative strength versus the Nifty 50, portfolio XIRR and drawdown, and a transparent watchlist score. Then you will ship it as a Streamlit app with Plotly charts, schedule daily refreshes, send Telegram alerts on filings and price triggers, and keep the whole system running when free sources change. Built for experienced retail investors, active traders and HNI investors who want a research process they own end to end.

PythonpandasyfinanceNSE BhavcopyAMFI and mfapi.inBSE and NSE FilingsDuckDBCorporate Action AdjustmentStreamlitPlotlyRelative StrengthValuation BandsXIRRTelegram AlertsTask Scheduling
MODULES
6
DURATION
~5 hrs
TRACK
Stock Market Basics

What You'll Master

How to decide what a research dashboard should answer before writing a single line of code
Which free Indian market data sources are reliable, what each one cannot tell you, and how to use them within their terms
How to build a fetch, store, compute, display architecture that survives source outages and format changes
How to download NSE bhavcopy, delivery data, mutual fund NAVs, corporate filings and macro series into one local DuckDB database
How to adjust price history for splits, bonuses and dividends and catch silent data errors with automated checks
How to compute valuation bands, relative strength versus the Nifty 50, portfolio XIRR, drawdown and concentration
How to build a multi-page Streamlit dashboard with Plotly charts and caching that loads in seconds
How to schedule daily refreshes, push Telegram alerts for filings and price triggers, and deploy privately
Access Level
PRO
Everything included
Full Text Playbooks
Actionable Exercises
Mobile Reading Mode
Lifetime Updates

Curriculum Breakdown

Chapter 1: Design Before You Code

4 Lessons
โ–ถ
What a Personal Research Dashboard Should Actually Answer9 min read
Preview
โ–ถ
Mapping Free Indian Market Data Sources and Their Limits12 min read
Preview
๐Ÿ”’
The Four-Layer Architecture: Fetch, Store, Compute, Display10 min read
๐Ÿ”’
Project Setup: Environment, Folder Layout and Secrets11 min read

Chapter 2: Building the Data Layer

5 Lessons
๐Ÿ”’
Pulling Prices with yfinance and Handling NSE Ticker Quirks12 min read
๐Ÿ”’
Downloading NSE Bhavcopy and Delivery Data Reliably13 min read
๐Ÿ”’
Mutual Fund NAVs from AMFI and mfapi.in10 min read
๐Ÿ”’
Tracking Corporate Filings and Results from BSE and NSE12 min read
๐Ÿ”’
Macro Series: Repo Rate, G-Sec Yields, USD INR and Crude10 min read

Chapter 3: Storing and Cleaning the Data

4 Lessons
๐Ÿ”’
A Local Research Database with DuckDB11 min read
๐Ÿ”’
Adjusting Price History for Splits, Bonuses and Dividends13 min read
๐Ÿ”’
Data Quality Checks That Catch Silent Errors11 min read
๐Ÿ”’
Incremental Updates Instead of Full Re-downloads9 min read

Chapter 4: The Research Engine

5 Lessons
๐Ÿ”’
Bringing Screener.in Fundamentals into Your Pipeline11 min read
๐Ÿ”’
Building Historical P/E and P/B Valuation Bands12 min read
๐Ÿ”’
Relative Strength and Trend Metrics Against the Nifty 5012 min read
๐Ÿ”’
Portfolio Analytics: XIRR, Drawdown and Concentration13 min read
๐Ÿ”’
A Transparent Watchlist Score Without Overfitting11 min read

Chapter 5: Shipping the Dashboard in Streamlit

5 Lessons
๐Ÿ”’
Streamlit Fundamentals for a Research App11 min read
๐Ÿ”’
The Market Overview Page: Breadth, Sectors and Flows12 min read
๐Ÿ”’
The Stock Deep-Dive Page with Plotly Charts13 min read
๐Ÿ”’
Portfolio and Watchlist Pages11 min read
๐Ÿ”’
Caching and Performance So It Loads in Seconds9 min read

Chapter 6: Automation, Alerts and Upkeep

5 Lessons
๐Ÿ”’
Scheduling Daily Refreshes on Windows and Linux10 min read
๐Ÿ”’
Telegram Alerts for Filings and Price Triggers11 min read
๐Ÿ”’
Deploying Privately: Local, Streamlit Cloud or a Small VPS11 min read
๐Ÿ”’
Keeping It Alive: Source Breakage, Logging and Terms of Use10 min read
๐Ÿ”’
Your Weekly Research Routine with the Dashboard9 min read