Portfolio Theory Dr. Andrea Rigamonti andrea.rigamonti@econ.muni.cz Seminar 5 Content: β€’ Initial settings and inputs estimation β€’ Portfolio optimization Initial settings and inputs estimation We want to perform both mean-variance utility maximization and variance minimization given a target return. β€’ We use 𝛾 = 2 (lower risk aversion) and 𝛾 = 5 (higher risk aversion) for the former β€’ We set Re = 0.5% as target monthly return for the latter For the inputs estimation we use a rolling window of 120 periods. The portfolio performance will therefore be computed starting from the 121th period. Portfolio optimization First we perform the mean-variance utility maximization. At each period 𝑑, we compute the optimal weights as π’˜ π’Žπ’— = 1 𝛾 βˆ‘βˆ’πŸ 𝝁 and we compute the resulting portfolio return using 𝑅 𝑝 = π’˜β€² π’Žπ’— 𝑹 𝒕 where 𝑹 𝒕 is the vector of the single assets returns at period 𝑑. We will obtain a vector of out-of-sample returns 𝑹 𝒑, of which we compute the mean, standard deviation, and utility using π‘ˆ = π‘€π‘’π‘Žπ‘›(𝑹 𝒑) βˆ’ 𝛾 2 π‘‰π‘Žπ‘Ÿ( 𝑹 𝒑) Portfolio optimization We do the same for the 1/N portfolio, but the weights are computed using the formula: π’˜ 𝟏/𝑡 = 1 𝛾 πŸβ€²π πŸβ€²βˆ‘πŸ 𝟏 We then consider variance minimization given a target return. The formula for the optimal weights is: π’˜ π’Žπ’— = 𝑅𝑒 πβ€²βˆ‘βˆ’πŸ 𝝁 βˆ‘βˆ’πŸ 𝝁 We then compute the mean, variance and Sharpe ratio: 𝑆𝑅 = π‘€π‘’π‘Žπ‘›(π‘ƒπ‘œπ‘Ÿπ‘‘π‘“π‘œπ‘™π‘–π‘œ 𝑒π‘₯𝑐𝑒𝑠𝑠 π‘Ÿπ‘’π‘‘π‘’π‘Ÿπ‘›π‘ ) 𝑆𝐷(π‘ƒπ‘œπ‘Ÿπ‘‘π‘“π‘œπ‘™π‘–π‘œ 𝑒π‘₯𝑐𝑒𝑠𝑠 π‘Ÿπ‘’π‘‘π‘’π‘Ÿπ‘›π‘ ) Portfolio optimization Next is the minimum variance portfolio, whose weights are: π’˜ 𝒗 = 1 πŸβ€²βˆ‘βˆ’πŸ 𝟏 βˆ‘βˆ’πŸ 𝟏 Finally we consider the long-only minimum variance portfolio. There are not closed form solutions, but we can easily get the optimal weights using the β€œoptimalPortfolio” function from the β€œRiskPortfolios” package. In this function we set β€œmu=NULL” and β€œsemiDev=NULL” because we do not set any target return or target semideviation. β€œtype='minvol’” indicates that we want to minimize the variance, while β€œconstraint='lo’” requires longonly (i.e., positive) weigths.