Aan de slagGa gratis aan de slag

Portefeuillerendementen berekenen

Om een portefeuille op te bouwen en te backtesten, moet je gemakkelijk kunnen werken met de rendementen van meerdere assets in één object.

In deze oefening gebruik je een pandas-DataFrame, al opgeslagen in de variabele StockReturns, om de rendementen van meerdere assets vast te leggen en de rendementen van een modelportefeuille te berekenen.

De modelportefeuille is samengesteld met vooraf gedefinieerde wegingen voor enkele van de grootste bedrijven ter wereld, net vóór januari 2017:

Company Name Ticker Portfolio Weight
Apple AAPL 12%
Microsoft MSFT 15%
Exxon Mobil XOM 8%
Johnson & Johnson JNJ 5%
JP Morgan JPM 9%
Amazon AMZN 10%
General Electric GE 11%
Facebook FB 14%
AT&T T 16%

Let op: in de meeste gevallen moeten de portefeuillewegingen optellen tot 100%

Deze oefening maakt deel uit van de cursus

Introductie tot portefeuillerisicobeheer in Python

Cursus bekijken

Oefeninstructies

  • Maak de numpy-array met model-portfolio_weights af met de waarden uit de bovenstaande tabel.
  • Gebruik de methode .mul() om de portfolio_weights over de rijen van StockReturns te vermenigvuldigen en gewogen aandelenrendementen te krijgen.
  • Gebruik vervolgens de methode .sum() over de rijen op het object WeightedReturns om de portefeuillerendementen te berekenen.
  • Bekijk tot slot de grafiek van de cumulatieve rendementen door de tijd.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Finish defining the portfolio weights as a numpy array
portfolio_weights = np.array([0.12, 0.15, 0.08, 0.05, 0.09, 0.10, 0.11, ____, ____])

# Calculate the weighted stock returns
WeightedReturns = StockReturns.____(portfolio_weights, axis=____)

# Calculate the portfolio returns
StockReturns['Portfolio'] = WeightedReturns.____(axis=____)

# Plot the cumulative portfolio returns over time
CumulativeReturns = ((1+StockReturns["Portfolio"]).cumprod()-1)
CumulativeReturns.plot()
plt.show()
Code bewerken en uitvoeren