Course instructors: Pierre Collin-Dufresne & Florian Perusset
Group members:
- Adrien Aït Lalim (SCIPER 326588) - @0marp
- Matthias Wyss (SCIPER 329884) - @matthias-wyss
- Liess Gröli (SCIPER 327521) - @Lsgrli
- Massimo Berardi (SCIPER 345943) - @Mass-14
This repository contains the full solution to the EPFL Investments Project for the Spring 2025 course. The goal was to evaluate the benefits of international diversification and dynamic portfolio strategies using equity indices and currencies.
.
├── notebook.ipynb # Main notebook with all code, plots, and results
├── investments-project-report.pdf # Written report answering all questions
├── investments-project-guidelines.pdf # Official project instructions and questions
├── README.md # Project overview and instructions
├── requirements.txt # Python dependencies needed to run the code
├── .gitignore # Ignore temporary files, datasets, and outputs
├── data/ # Contains input datasets and intermediate results
│ ├── fama-french-5factors/ # Fama-French 5 factor data (used in Q9)
│ ├── monthly_exchange_rate/ # Monthly exchange rate data
│ ├── monthly_returns/ # Equity index returns
│ ├── preprocess/ # Intermediate preprocessed files
│ ├── q3/ # Processed outputs for Q3
│ ├── q4/ # Momentum strategy outputs
│ ├── q5/ # Long-term reversal strategy outputs
│ ├── q6/ # Currency carry strategy outputs
│ ├── q7/ # Dollar strategy outputs
│ └── three_month_interbank_rate/ # Interest rate data from FRED
We stored intermediate CSV files after each step to reuse them efficiently in subsequent questions.
We built and analyzed several strategies:
- International Diversification (DIV) - Based on equal-weighting, risk parity, and mean-variance optimization of international equity indices (hedged/unhedged).
- Momentum (MOM) - Long-short strategy based on 11-month momentum in currency-hedged equity indices.
- Reversal (REV) - Contrarian strategy based on 5-year past returns.
- Carry (CARRY) - Currency strategy based on interest rate differentials.
- Dollar (DOLLAR) - A long-USD strategy versus a basket of foreign currencies.
- Optimal Fund Allocation (STRAT) - Combining DIV with the four alternative strategies under a 15% volatility target.
- Risk Analysis - Regression of the fund strategy returns on the Fama-French 5 factors.
All analysis was implemented in Python, and all results are reproducible using the provided notebook.
- The project was submitted after the course had ended, hence WRDS access was no longer available. All necessary data was downloaded prior to the June 4 deadline.
- All code and answers are included in
notebook.ipynb. - The final written report is available under
investments-project-report.pdf. - The official project instructions are provided in
investments-project-guidelines.pdf.
Install dependencies using:
pip install -r requirements.txtFor any questions about the repository or analysis: