Python में पोर्टफोलियो जोखिम प्रबंधन का परिचय
Dakota Wixom
Quantitative Analyst | QuantCourse.com
कैपिटल एसेट प्राइसिंग मॉडल वित्त में कई अन्य एसेट प्राइसिंग और फैक्टर मॉडलों की बुनियादी ईंट है.
एक्सेस रिटर्न निकालने के लिए, कुल रिटर्न में से रिस्क-फ्री रिटर्न घटाएँ:
$$ \text{Excess Return} = \text{Return} - \text{Risk Free Return} $$
उदाहरण:
ब्राज़ील में निवेश:
10% Portfolio Return - 15% Risk Free Rate = -5% Excess Return
US में निवेश:
10% Portfolio Return - 3% Risk Free Rate = 7% Excess Return
$$ E(R_{P}) - RF = \beta_{{P}}(E(R_{M})-RF)\ $$
को-वेरिएंस से ऐतिहासिक बीटा निकालने के लिए:
$$ \beta_P = \frac{Cov(R_P, R_B)}{Var(R_B)} $$
मान लें कि 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
लिनियर रिग्रेशन का उदाहरण:

मैट्रिक्स नोटेशन में रिग्रेशन फ़ॉर्मूला:

मान लें कि 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
Adjusted R-squared और R-squared मान निकालने के लिए:
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
Python में पोर्टफोलियो जोखिम प्रबंधन का परिचय