Skip to content

sangramdedge/Market-Risk-Stock-Volatility-Dashboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📊 Market Risk & Stock Volatility Dashboard (VaR Model + Power BI)

🏦 Portfolio Risk Analysis using Python, Power BI & Yahoo Finance Data

image

📘 Project Overview

This project quantifies and visualizes market risk for a multi-asset portfolio (AAPL, JPM, SPY) using Value-at-Risk (VaR) and EWMA volatility models.
It integrates Python for statistical risk modeling and Power BI for interactive visualization, simulating how top investment banks (like J.P. Morgan or Goldman Sachs) monitor daily portfolio exposure.


🎯 Problem Statement

Financial institutions must estimate potential losses over one trading day under normal market conditions.
This analysis answers the key question:

“What is the maximum expected 1-day loss at 95 % and 99 % confidence levels?”


⚙️ Methodology

Phase Description Tools
1️⃣ Data Acquisition Fetched historical prices for AAPL, JPM, SPY (2018-2025) Python yfinance, pandas
2️⃣ Return & Volatility Modeling Calculated daily returns, rolling σ, and EWMA volatility NumPy, Pandas
3️⃣ Value-at-Risk (VaR) Computed Parametric VaR at 95 % & 99 % using z-scores SciPy, Pandas
4️⃣ Backtesting Performed Kupiec Proportion-of-Failures Test Statistical validation
5️⃣ Visualization Built interactive Power BI dashboards (Overview + Asset Analytics) Power BI Desktop
6️⃣ Insights Interpreted risk exposure & model calibration Quant Analysis

💡 Key Insights

📊 1-Day Value-at-Risk (VaR)

  • Portfolio VaR₉₅ ≈ 29.6 %, VaR₉₉ ≈ 40–42 % → maximum expected 1-day loss.
  • AAPL VaR₉₅ = 47.45 %, VaR₉₉ = 67.11 %
  • JPM VaR₉₅ = 42.39 %, VaR₉₉ = 59.96 %
  • SPY VaR₉₅ = 28.14 %, VaR₉₉ = 39.80 %
    ➡️ Portfolio diversification lowers total VaR relative to individual risks.

✅ VaR Model Validation (Kupiec Backtest)

Ticker Conf. Obs. Exceptions Rate p-value
AAPL 95 % 1 ,949 0 0 % 1.0
JPM 95 % 1 ,949 0 0 % 1.0
SPY 95 % 1 ,949 0 0 % 1.0

No VaR breaches occurred, confirming the model is statistically calibrated and reliable for daily risk monitoring.


📈 Power BI Dashboards

🟦 Page 1 – Market Risk Overview

  • Portfolio VaR (95/99 %), Volatility σ, Average Return
  • SPY Volatility Trend (EWMA vs Rolling)
  • Portfolio Return vs VaR Bands
  • Date Range Slicer + Summary Footer
  • image

🟩 Page 2 – Asset-Level Analytics

  • Asset KPIs (AAPL | JPM | SPY)
  • Risk Ranking (Bar Chart – VaR 95 %)
  • Volatility Trend (Line Chart)
image

🧮 Tools & Technologies

  • Python 3.10+ → Pandas, NumPy, Matplotlib, SciPy
  • Power BI Desktop 2025 for visual analytics
  • Yahoo Finance API (yfinance) for data extraction
  • Kupiec Test for VaR backtesting
  • **GitHub

🧭 Interpretation

The model predicts daily portfolio losses will not exceed ≈ 30 % (95 %) or ≈ 40 % (99 %) under normal market conditions.
Kupiec backtesting (0 exceptions / p = 1.0) confirms the model is statistically sound and robust for real-world risk management.


🔮 Future Enhancements

  • 📊 Page 3 – Correlation & Stress-Test Dashboard
  • 🔧 Add Monte Carlo & Historical VaR simulation
  • ⚙️ Automate daily data refresh in Power BI Service
  • 🧠 Integrate Sharpe ratio and Expected Shortfall metrics

👤 Author

Sangram Shivaji Dedge
Business / Data Analyst – Risk Analytics
📍 Worcester | Boston Area 🇺🇸
🔗 LinkedIn | GitHub


🏷️ Tags

#PowerBI #Python #FinanceAnalytics #MarketRisk #ValueAtRisk #QuantAnalysis #PortfolioManagement #DataVisualization

About

This project quantifies and visualizes market risk for a 3-asset portfolio (AAPL, JPM, SPY) using Value-at-Risk (VaR) and EWMA volatility models. It integrates Python for risk modeling and Power BI for interactive visualization, simulating how investment banks like J.P. Morgan or Goldman Sachs monitor daily portfolio risk.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors