Research project to explore different approaches for optimal portfolio allocation starting from 18 EU bond indices and a benchmark. Project developed using Matlab and Python.
Raw data is all returns, all maturities bond indices prices of 18 EU countries from 1998 to 2018, downloaded from Eikon. Exchange rates were downloaded as well. Techniques used range from: weight budgeting in Markowitz framework, risk budgeting, constant correlation models and recurrent neural networks.
- main.m contains the code to extract the data from the original .xlsx file
- a001_DataAnalysis.m performs the preliminary data exploration and analysis
- a002_a_StrategicAssetAllocation.m performs some initial analysis on the unconstrained and constrained efficient frontier over two different periods of 5 years
- a002_b_Forecast.m replicates the possible evolution of the equally weighted and benchmark portfolio over a period of 5 years
a003_...m
anda004_...m
files explores different advanced techniques for portfolio allocation, computing the evolution of the assets weights over time, cumulative returns and overall ranking of the various strategies- The folder
/RNN
contains the python files related to the recurrent neural network used ina004_a_Advanced.m
Most of the Matlab a00x_...m
files should be self contained and use .mat
files to gather the data needed to perform the analysis contained in the respective files.
Use as you wish. This project is licensed under the MIT License.