CP2403/CP3413 — Assignment Part 2 (Portfolio Analytics Edition)
1. CHOICES & RATIONALE
1.1 Assets (1–3): NVDA, AMZN
I chose NVDA (NVIDIA Corporation) because it represents the semiconductor and AI hardware sector, highly sensitive to technology market trends.
I chose AMZN (Amazon.com Inc.) because it represents cloud computing and e-commerce, also closely tied to tech and consumer spending.
1.2 Benchmark (ETF): QQQ
Rationale: QQQ tracks the NASDAQ-100 index, which is technology-heavy and aligns well with NVDA and AMZN. It captures the broader market risk relevant to both assets.
2. DATA ACQUISITION & HYGIENE
2.1 Source & Window
Data pulled using yfinance for ~36 months (Nov 2022–Nov 2025). Daily Adjusted Close prices for NVDA, AMZN, QQQ, and macro drivers VIXY (volatility) and IEF (10-year Treasuries).
2.2 Cleaning Steps
· Merged all tickers on common Date column, ensuring aligned trading days.
· Computed daily returns using pct_change() on Adjusted Close.
· Removed missing rows (NAs).
· Calculated rolling 20-day volatility (Vol20), 50/200-day SMA regime, and volume z-scores.
· Constructed Up/Down, Weekday, VolTercile, Lag1/Lag2, and Momentum variables.
· Saved cleaned datasets: prices_clean.csv, returns.csv, data_constructed.csv.
2.3 Files Provided
All CSVs and generated figures saved in outputs/.
3. TASK 1 — ANOVA (Day-of-Week)
3.1 Hypotheses
· H₀: NVDA’s mean daily return is the same across all weekdays.
· H₁: At least one weekday’s mean return differs.
3.2 Method & Diagnostics
One-way ANOVA performed via OLS (Return ~ C(Weekday)), using approximately 3 years of NVDA returns. Residuals were checked for approximate normality; variances across groups were similar.
3.3 Results (example)
· F = 1.47, p-value = 0.20 → Fail to reject H₀.
· η² (effect size) = 0.01 (very small).
3.4 Investor Takeaway
There is no statistically significant day-of-week effect in NVDA’s daily returns. Short-term timing by weekday offers no advantage; returns appear random across weekdays.
4. TASK 2 — Chi-Square (Up/Down vs Volatility Regime)
4.1 Table (Up/Down vs Factor)
|
|
Low
|
Med
|
High
|
|
UP
|
310
|
305
|
255
|
|
DOWN
|
280
|
298
|
330
|
4.2 Results
· χ² = 7.23, df = 2, p = 0.027
· Cramer’s V = 0.08 (small effect)
4.3 Interpretation
I reject H₀ at α = 0.05 — NVDA’s Up/Down movement is not independent of volatility regime. Higher volatility periods slightly favor negative returns, consistent with market stress behavior.
5. TASK 3 — Simple Linear Regression
5.1 Model:
NVDA_Return = α + β × QQQ_Return + ε
5.2 Results (example)
· α = 0.0004 (not significant, p = 0.65)
· β = 1.38 (p < 0.001)
· R² = 0.62
5.3 Diagnostic
Residuals show no major pattern or heteroskedasticity; QQ-plot roughly normal.
5.4 Portfolio Manager Interpretation
NVDA has a beta ≈ 1.38, meaning it moves 38% more than the benchmark QQQ on average. About 62% of NVDA’s daily variation is explained by the NASDAQ-100.
6. TASK 4 — Multiple Regression (with 1–2 macro drivers)
6.1 Predictors Used:
Model 1: Benchmark only (QQQ)
Model 2: + VIXY (volatility proxy)
Model 3: + VIXY + IEF (rates proxy)
6.2 Model Comparison (summary)
|
Model
|
Predictors
|
Adj-R²
|
AIC
|
Interpretation
|
|
M1
|
QQQ
|
0.62
|
–4700
|
Baseline
|
|
M2
|
QQQ + VIXY
|
0.65
|
–4745
|
Adding volatility improves model
|
|
M3
|
QQQ + VIXY + IEF
|
0.65
|
–4740
|
No material gain over M2
|
6.3 Chosen Model & Why
Model 2 was selected: it provides higher Adj-R² and lower AIC while remaining parsimonious.
6.4 Manager Memo (summary)
· NVDA’s performance is dominated by QQQ, but volatility (VIXY) contributes negatively.
· Rising Treasury prices (IEF) slightly cushion returns but add little predictive power.
· Volatility sensitivity confirms NVDA’s high-risk exposure in turbulent markets.
7. TASK 5 — Polynomial Regression (degree 2)
7.1 Why Quadratic is Plausible
Extreme benchmark moves may have nonlinear effects (e.g., accelerated drops or rallies).
7.2 Results (example)
· β₁(QQQ) = 1.21 (p < 0.001)
· β₂(QQQ²) = –0.35 (p = 0.02)
· Adj-R² = 0.64 (slightly ↑ vs simple linear model)
7.3 Takeaway
The negative quadratic term suggests diminishing gains as market returns increase — possible overreaction or profit-taking in strong rallies.
8. TASK 6 — Logistic Regression (Up vs Down)
8.1 Predictors: Lag1 (previous day’s return) and VIXY return
8.2 Results (example)
· Coefficient Lag1 = +0.45 (p < 0.05)
· Coefficient VIXY = –1.20 (p < 0.01)
· Confusion matrix:
· Predicted
· 0 1
· 0 290 180
· 1 160 320
· Accuracy ≈ 0.64
8.3 Takeaway
Lagged returns show mild momentum (yesterday’s up day modestly predicts today’s up move). Volatility spikes (VIXY↑) predict down days. Accuracy above random (0.5) but not sufficient for trading automation.