Finansiella avkastningar

Introduktion till portföljriskhantering i Python

Dakota Wixom

Quantitative Analyst | QuantCourse.com

Kursöversikt

Lär dig analysera fördelningar av investeringsavkastning, bygga portföljer och minska risk, samt identifiera viktiga faktorer som driver portföljavkastning.

  • Univariat investeringsrisk
  • Portföljinvestering
  • Factorinvestering
  • Prognoser och riskreducering
Introduktion till portföljriskhantering i Python

Investeringsrisk

Vad är risk?

  • Risk på finansmarknader är ett mått på osäkerhet
  • Spridning eller varians i finansiella avkastningar

Hur mäter man risk?

  • Standardavvikelse eller varians för dagliga avkastningar
  • Kurtosis i fördelningen av dagliga avkastningar
  • Skevhet i fördelningen av dagliga avkastningar
  • Historisk drawdown
Introduktion till portföljriskhantering i Python

Finansiell risk

Avkastningar

Sannolikhet

Introduktion till portföljriskhantering i Python

Två typer av avkastning

  • Avkastningar härleds från aktiekurser
  • Diskreta avkastningar (enkla avkastningar) är de vanligast förekommande och representerar periodvisa (t.ex. dagliga, veckovisa, månadsvisa) prisrörelser
  • Logaritmiska avkastningar används ofta i akademisk forskning och finansiell modellering. De förutsätter kontinuerlig ränteuppräkning.

Introduktion till portföljriskhantering i Python

Beräkna aktiekursavkastningar

  • Diskreta avkastningar beräknas som prisförändringen som en procentandel av föregående periods pris

Introduktion till portföljriskhantering i Python

Beräkna logaritmiska avkastningar

  • Logaritmiska avkastningar beräknas som skillnaden mellan logaritmen av två priser
  • Logaritmiska avkastningar aggregeras över tid, medan diskreta avkastningar aggregeras över tillgångar

 

$$ Rl = \ln(\frac{P_{t_2}}{P_{t_1}}) $$

eller ekvivalent

$$ Rl = \ln(P_{t_2}) - \ln(P_{t_1}) $$

Introduktion till portföljriskhantering i Python

Beräkna aktiekursavkastningar i Python

Steg 1:

Läs in aktiekursdata och lagra det som en pandas DataFrame organiserad efter datum:

import pandas as pd 
StockPrices = pd.read_csv('StockData.csv', parse_dates=['Date'])
StockPrices = StockPrices.sort_values(by='Date')
StockPrices.set_index('Date', inplace=True)
Introduktion till portföljriskhantering i Python

Beräkna aktiekursavkastningar i Python

Steg 2:

Beräkna dagliga avkastningar för de justerade stängningskurserna och lägg till avkastningarna som en ny kolumn i DataFrame.

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

Introduktion till portföljriskhantering i Python

Visualisera avkastningsfördelningar

import matplotlib.pyplot as plt
plt.hist(StockPrices["Returns"].dropna(), bins=75, density=False)
plt.show()

Introduktion till portföljriskhantering i Python

Nu kör vi en övning!

Introduktion till portföljriskhantering i Python

Preparing Video For Download...