Modelul de Evaluare a Activelor Financiare

Introducere în gestionarea riscului de portofoliu în Python

Dakota Wixom

Quantitative Analyst | QuantCourse.com

Părintele modelelor de evaluare a activelor

CAPM

Modelul de Evaluare a Activelor Financiare reprezintă fundamentul multor modele de evaluare și modele factoriale în finanțe.

Introducere în gestionarea riscului de portofoliu în Python

Randamente excedentare

Pentru a calcula randamentele excedentare, scădeți rata de rentabilitate fără risc din randamentul total:

$$ \text{Excess Return} = \text{Return} - \text{Risk Free Return} $$

Exemplu:

Investiție în Brazilia:

10% Randament portofoliu - 15% Rată fără risc = -5% Randament excedent

Investiție în SUA:

10% Randament portofoliu - 3% Rată fără risc = 7% Randament excedent

Introducere în gestionarea riscului de portofoliu în Python

Modelul de Evaluare a Activelor Financiare

$$ E(R_{P}) - RF = \beta_{{P}}(E(R_{M})-RF)\ $$

  • $E(R_{P}) - RF$: Randamentul excedent așteptat al unui titlu sau portofoliu P
  • $E(R_{M}) - RF$: Randamentul excedent așteptat al portofoliului de piață B
  • $RF$: Rata regională fără risc
  • $\beta_{{P}}$: Beta portofoliului, sau expunerea față de portofoliul de piață B
Introducere în gestionarea riscului de portofoliu în Python

Calcularea Beta prin covarianță

Pentru a calcula beta istoric prin covarianță:

$$ \beta_P = \frac{Cov(R_P, R_B)}{Var(R_B)} $$

  • $\beta_P$: Beta portofoliului
  • $Cov(R_P, R_B)$: Covarianța dintre portofoliu (P) și indicele de referință al pieței (B)
  • $Var(R_B)$: Varianța indicelui de referință al pieței
Introducere în gestionarea riscului de portofoliu în Python

Calcularea Beta prin covarianță în Python

Presupunând că aveți deja randamentele excedentare ale portofoliului și ale pieței în obiectul Data:

covariance_matrix = Data[["Port_Excess","Mkt_Excess"]].cov()
covariance_coefficient = covariance_matrix.iloc[0, 1]
benchmark_variance = Data["Mkt_Excess"].var()
portfolio_beta = covariance_coefficient / benchmark_variance
portfolio_beta
0.93
Introducere în gestionarea riscului de portofoliu în Python

Regresii liniare

Exemplu de regresie liniară:

Formula de regresie în notație matriceală:

Introducere în gestionarea riscului de portofoliu în Python

Calcularea Beta prin regresie liniară

Presupunând că aveți deja randamentele excedentare ale portofoliului și ale pieței în obiectul Data:

import statsmodels.formula.api as smf
model = smf.ols(formula='Port_Excess ~ Mkt_Excess', data=Data)
fit = model.fit()
beta = fit.params["Mkt_Excess"]
beta
0.93
Introducere în gestionarea riscului de portofoliu în Python

R-pătrat vs. R-pătrat ajustat

Pentru a extrage valorile R-pătrat și R-pătrat ajustat:

import statsmodels.formula.api as smf
model = smf.ols(formula='Port_Excess ~ Mkt_Excess', data=Data)
fit = model.fit()
r_squared = fit.rsquared
r_squared
0.70
adjusted_r_squared = fit.rsquared_adj
0.65
Introducere în gestionarea riscului de portofoliu în Python

Să exersăm!

Introducere în gestionarea riscului de portofoliu în Python

Preparing Video For Download...