Portfolio composition and backtesting

Python में पोर्टफोलियो जोखिम प्रबंधन का परिचय

Dakota Wixom

Quantitative Analyst | QuantCourse.com

पोर्टफोलियो रिटर्न की गणना

पोर्टफोलियो रिटर्न सूत्र:

$$ R_p = R_{a_1} w_{a_1} + R_{a_2} w_{a_2} + ... + R_{a_n} w_{a_1} $$

  • $ R_p$: पोर्टफोलियो रिटर्न
  • $ R_{a_n}$: एसेट n का रिटर्न
  • $ w_{a_n}$: एसेट n का वेट
Python में पोर्टफोलियो जोखिम प्रबंधन का परिचय

StockReturns अगर स्टॉक रिटर्न्स का pandas DataFrame है, तो आप दिए गए पोर्टफोलियो वेट्स के लिए पोर्टफोलियो रिटर्न इस तरह निकाल सकते हैं:

import numpy as np
portfolio_weights = np.array([0.25, 0.35, 0.10, 0.20, 0.10])
port_ret = StockReturns.mul(portfolio_weights, axis=1).sum(axis=1)
port_ret
Date
2017-01-03    0.008082
2017-01-04    0.000161
2017-01-05    0.003448
         ...
StockReturns["Portfolio"] = port_ret
Python में पोर्टफोलियो जोखिम प्रबंधन का परिचय

Python में equally weighted पोर्टफोलियो

StockReturns अगर स्टॉक रिटर्न्स का pandas DataFrame है, तो equally weighted पोर्टफोलियो का रिटर्न इस तरह निकालें:

import numpy as np
numstocks = 5
portfolio_weights_ew = np.repeat(1/numstocks, numstocks)
StockReturns.iloc[:,0:numstocks].mul(portfolio_weights_ew, axis=1).sum(axis=1)
Date
2017-01-03    0.008082
2017-01-04    0.000161
2017-01-05    0.003448
         ...
Python में पोर्टफोलियो जोखिम प्रबंधन का परिचय

Python में पोर्टफोलियो रिटर्न्स प्लॉट करना

Python में daily returns प्लॉट करने के लिए:

StockPrices["Returns"] = StockPrices["Adj Close"].pct_change()
StockReturns = StockPrices["Returns"]
StockReturns.plot()

Python में पोर्टफोलियो जोखिम प्रबंधन का परिचय

पोर्टफोलियो cumulative returns प्लॉट करना

कई पोर्टफोलियो के cumulative returns प्लॉट करने के लिए:

import matplotlib.pyplot as plt
CumulativeReturns = ((1 + StockReturns).cumprod() - 1)
CumulativeReturns[["Portfolio","Portfolio_EW"]].plot()

Python में पोर्टफोलियो जोखिम प्रबंधन का परिचय

मार्केट कैपिटलाइजेशन

Python में पोर्टफोलियो जोखिम प्रबंधन का परिचय

मार्केट कैपिटलाइजेशन

Market capitalization: किसी कंपनी के सार्वजनिक रूप से ट्रेड होने वाले शेयरों का कुल मूल्य.

इसे Market cap भी कहते हैं.

Python में पोर्टफोलियो जोखिम प्रबंधन का परिचय

मार्केट-कैप वेटेड पोर्टफोलियो

किसी स्टॉक n का मार्केट कैप वेट निकालने के लिए:

$$ w_{mcap_n} = \frac{mcap_n}{ \sum_{i=1}^n mcap_i } $$

Python में पोर्टफोलियो जोखिम प्रबंधन का परिचय

Python में मार्केट-कैप वेट्स

Python में मार्केट कैप वेट्स निकालने के लिए, मान लें कि आपके पास हर कंपनी के मार्केट कैप का डेटा है:

import numpy as np
market_capitalizations = np.array([100, 200, 100, 100])
mcap_weights = market_capitalizations/sum(market_capitalizations)
mcap_weights
array([0.2, 0.4, 0.2, 0.2])
Python में पोर्टफोलियो जोखिम प्रबंधन का परिचय

अभ्यास करते हैं!

Python में पोर्टफोलियो जोखिम प्रबंधन का परिचय

Preparing Video For Download...