국가별 주가지수 실현변동성(Realized Volatility, RV) 예측력을 비교·분석하는 프로젝트입니다.
미국(S&P 500)·한국(KOSPI)·일본(Nikkei 225) 3개 시장을 대상으로, 전통 계량금융 모형부터 머신러닝/딥러닝 및 앙상블까지
다중 horizon(1일·1주·1개월) 예측 성능과 외생적 충격 구간(GFC, COVID, 금리인상기 등) 에서의 강건성을 체계적으로 평가합니다.
성균관대학교 데이터사이언스 캡스톤프로젝트 2026 Spring | TEAM FINTEL
- Target: 5분 고빈도 수익률 기반 일별 RV
- Markets: US / KR / JP (S&P 500, KOSPI, Nikkei 225)
- Models
- 금융모형(Financial): HAR-RV, GARCH(1,1)
- ML: Ridge, Elastic Net, Huber, XGBoost, LightGBM
- DL: LSTM, CNN(1D), SSM(Mamba),TFT
- Ensemble: Stacking, Boosting, Weighted averaging 등
- Evaluation: MSE, MAE, QLIKE + Diebold-Mariano Test, Model Confidence Set
- 기간: 2000.01 – 2022.06 (약 23년)
- 출처: Oxford-Man (고빈도 기반 RV), 블룸버그 터미널, Fnguide 등
- Feature tiers
- Core set (10개)
- Momentum set (14개)
- Extended set (29개)
데이터 split, 위기 구간(phase), feature tier 정의는
dataset/아래 텍스트 파일로 관리합니다.
Project/
├─ dataset/
│ ├─ *.csv # (12개 + summary)
│ ├─ data_splits.txt
│ ├─ crisis_phases.txt # Full Test 포함 (GFC, COVID 등)
│ └─ feature_tiers.txt
├─ src/
│ ├─ __init__.py
│ ├─ config.py # SPLITS, PHASES dict (txt 1:1 매핑)
│ ├─ data_loader.py # load_dataset / split_train_test / load_split
│ ├─ models/
│ │ ├─ __init__.py # GARCH Model, HAR-RV Model export
│ │ ├─ garch.py # arch_model + 1-step 재귀 예측
│ │ └─ har_rv.py # statsmodels OLS HC1
│ └─ eval/
│ ├─ __init__.py
│ ├─ metrics.py # rmse / mae / qlike / rmse_cv / evaluate
│ ├─ phases.py # iter_phases / get_phase_mask
│ └─ protocols.py # run_static / run_expanding
├─ notebooks/
│ └─ 01_financial.ipynb # 전통 금융모형 그리드 실행
│ └─ 02_ml.ipynb # 머신러닝 모델 그리드 실행
│ └─ 03_visualize.ipynb # 시각화
├─ results/.gitkeep
└─ requirements.txt
conda와 pip/venv 둘 다 제공합니다.
conda create -n fintel python=3.11 -y
conda activate fintel
pip install -r requirements.txtpython -m venv .venv
# macOS/Linux
source .venv/bin/activate
# Windows (PowerShell)
# .\.venv\Scripts\Activate.ps1
pip install -r requirements.txtjupyter lab
# or
jupyter notebook- 기본 실행 노트북:
notebooks/01_financial.ipynb
프로젝트 구조에 따라 src/를 모듈로 실행할 수 있습니다. 예:
python -m src(필요 시 src/__main__.py 또는 CLI 스크립트를 추가해 확장 가능합니다.)
- Static split / Expanding window 프로토콜 지원 (예:
src/eval/protocols.py) - 위기 구간별 성능 비교를 위한 phase mask 제공 (예:
src/eval/phases.py)
- 팀리더: 황희석 — 프로젝트 총괄, HAR-RV/GARCH 계열 구현, feature 생성, 해석
- 팀원: 구교현 — 외생적 충격 이벤트 식별, 국가별 해석/보고서, 선행연구
- 팀원: 송준혁 — DL(MLP~Transformer) 구현, 앙상블 설계, 데이터셋 구조화
- 팀원: 이건희 — ML(Elastic Net/XGBoost) 구현 및 평가, 데이터셋 구조화
- Andersen, T. G., Bollerslev, T., Diebold, F. X., & Labys, P. (2003). Modeling and forecasting realized volatility. Econometrica.
- Corsi, F. (2009). A simple approximate long-memory model of realized volatility. JFEC.
- Bollerslev, T. (1986). Generalized autoregressive conditional heteroskedasticity. JoE.
- Nelson, D. B. (1991). Conditional heteroskedasticity in asset returns: A new approach. Econometrica.
- Patton, A. J. (2011). Volatility forecast comparison using imperfect volatility proxies. JoE.
- Hansen, P. R., Lunde, A., & Nason, J. M. (2011). The model confidence set. Econometrica.
- Kim, H. Y., & Won, C. H. (2018). Forecasting the volatility of stock price index... ESWA.
(추가 참고문헌은 제안서/보고서에서 확장합니다.)
본 프로젝트는 연구/학습 목적이며, 어떠한 형태로도 투자 자문(financial advice) 이 아닙니다.