An interactive Streamlit dashboard that fetches live stock data using yfinance, calculates moving averages and percent changes, and visualizes trends with clean, beginner‑friendly charts.
- Fetches stock data for any ticker symbol (e.g. AAPL, TSLA, MSFT)
- Supports multiple time periods: 1 month, 3 months, 6 months, 1 year
- Calculates 7‑day moving averages
- Displays overall percent change as a KPI metric
- Interactive line charts for closing price + moving average
- Built with Streamlit + pandas + yfinance
- Python 3.10+
- Streamlit – interactive UI
- pandas – data manipulation
- yfinance – stock data
- matplotlib – plotting (optional)
stock-dashboard/ │ ├── app.py # Streamlit app (UI layer) ├── analyzer.py # Analysis functions (moving average, percent change) ├── data_fetcher.py # Data fetching logic (yfinance) ├── requirements.txt # Dependencies └── README.md # Project documentation
Clone the repo and install dependencies:
git clone https://github.com/<ShravaniRanshevare>/stock-dashboard.git
cd stock-dashboard
pip install -r requirements.txt
Run the Streamlit app:
bash
streamlit run app.py
Then open http://localhost:8501 in your browser.
🌐 Deployment
This app is deployed on Streamlit Community Cloud. 👉 Live Demo: https://stock-dashboard-snoak9vfdnljrwrvqk2ept.streamlit.app
💡 Future Improvements
Compare multiple tickers side‑by‑side
Add more technical indicators (RSI, Bollinger Bands, etc.)
Export charts and data as CSV/PNG
Dark/light theme toggle
👩💻 Author
Built by Shravani R. Undergraduate in Computer Science/AI, passionate about finance, data visualization, and building user‑friendly dashboards.
---