Portföljsimulering – Del I
I de kommande övningarna beräknar du förväntad avkastning för en aktieportfölj och analyserar osäkerheten kring den.
Anta att du har investerat 10 000 dollar i en portfölj bestående av flera aktier. Du vill utvärdera portföljens utveckling över 10 år. Du kan justera den förväntade avkastningen och volatiliteten (standardavvikelsen för avkastningen). Anta att avkastningen följer en normalfördelning.
Börja med att skriva en funktion som tar emot kapitalbeloppet (den initiala investeringen), antal år, förväntad avkastning och volatilitet som indata, och returnerar portföljens totala värde efter 10 år.
När du är klar med övningen har du en funktion som du kan anropa för att bedöma portföljens prestanda.
Den här övningen är en del av kursen
Statistisk simulering i Python
Övningsinstruktioner
- I funktionsdefinitionen, ta emot fyra argument: antal år
yrs, förväntad avkastningavg_return, volatilitetsd_of_returnoch kapitalbelopp (initial investering)principal. - Simulera avkastning
ratesför varje år som en normalfördelad slumpvariabel. - Initiera
end_returntill indatavärdetprincipal. Ifor-loopen skalasend_returnupp med årets avkastning. - Använd
portfolio_return()för att beräkna och skriva utresult.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# rates is a Normal random variable and has size equal to number of years
def portfolio_return(____):
np.random.seed(123)
rates = ____(loc=avg_return, scale=sd_of_return, size=yrs)
# Calculate the return at the end of the period
end_return = ____
for x in rates:
end_return = end_return*(1+____)
return end_return
result = portfolio_return(yrs = 5, avg_return = 0.07, sd_of_return = 0.15, principal = 1000)
print("Portfolio return after 5 years = {}".format(____))