Portfólios ponderados por valor de mercado
Por outro lado, quando as empresas grandes vão bem, portfólios ponderados por valor de mercado (ou "market cap") tendem a superar. Isso acontece porque os maiores pesos são atribuídos às maiores empresas, ou seja, às empresas com maior valor de mercado.
Abaixo está uma tabela com os valores de mercado das empresas do seu portfólio pouco antes de janeiro de 2017:
| Company Name | Ticker | Market Cap ($ Billions) |
|---|---|---|
| Apple | AAPL | 601.51 |
| Microsoft | MSFT | 469.25 |
| Exxon Mobil | XOM | 349.5 |
| Johnson & Johnson | JNJ | 310.48 |
| JP Morgan | JPM | 299.77 |
| Amazon | AMZN | 356.94 |
| General Electric | GE | 268.88 |
| FB | 331.57 | |
| AT&T | T | 246.09 |
Este exercício faz parte do curso
Introdução ao Gerenciamento de Risco de Portfólio em Python
Instruções do exercício
- Termine de definir o array
market_capitalizationscom os valores de mercado em bilhões, conforme a tabela acima. - Calcule o array
mcap_weightsde modo que cada elemento seja a razão entre o valor de mercado da empresa e o valor de mercado total de todas as empresas. - Use o método
.mul()emmcap_weightse nos retornos para calcular os retornos do portfólio ponderado por valor de mercado. - Por fim, analise o gráfico de retornos acumulados ao longo do tempo.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Create an array of market capitalizations (in billions)
market_capitalizations = np.array([601.51, 469.25, 349.5, 310.48, 299.77, 356.94, 268.88, 331.57, ____])
# Calculate the market cap weights
mcap_weights = ____
# Calculate the market cap weighted portfolio returns
StockReturns['Portfolio_MCap'] = StockReturns.iloc[:, 0:9].mul(____, axis=1).sum(axis=1)
cumulative_returns_plot(['Portfolio', 'Portfolio_EW', 'Portfolio_MCap'])