Fyra timmars arbete inkl. ett antal iterationer med ChatGPT för att få fram minor gridlines för y-axeln i en plot med log-skala… Man kan bli trött för mindre. ![]()
Före:
Efter:
Fyra timmars arbete inkl. ett antal iterationer med ChatGPT för att få fram minor gridlines för y-axeln i en plot med log-skala… Man kan bli trött för mindre. ![]()
Före:
Efter:
Jag labbar lite med att beräkna volatilitetsvärden för mina obligations-ETF:er. Jag tänkte jag skulle använda värdena för att sätta en viktad snittvolatilitet för obligationsinstrumenten i min portfölj.
Jag har dock lite bryderier med hur jag ska göra med ett par mini futures från Avanza Markets. Det gäller instrumenten MINI L US30YTBOND AVA 32 (ISIN GB00BSK0X514) samt MINI L BUND AVA 16 (ISIN GB00BNV2DF11). De finns inte på Yahoo Finance, så enda sättet är kanske att försöka lista ut hur man kommer åt data från Avanza.
Jag tänkte jag skulle ta fram volatilitet baserat på långa tidsserier för några vanliga tillgångar för allvädersportföljer. Den längsta tidsserien jag kunde hitta för MSCI World startade 1999. Jag skapade några tidsserier för rullande årsvolatilitet, för att se hur årsvolatiliteten ändrar sig på kort, medellång och lång sikt, i det här fallet 1, 3 och 5 år.
Tyvärr snöade jag in på detaljer i LibreOffice Calc, där jag stångades med en del tillkortakommanden då det gäller att presentera grafer som jag vill ha dem. Det blir nog till att återgå till Python igen, eller ev. börja sätta mig in i R, som tydligen ska vara bra v.g. analys, tidsserier, statistik, grafer etc. ![]()
Tillägg: Jag ser redan nu rena fel i diagrammet ovan. Kurvorna för de rullande årsvolatiliteterna startar inte där de borde… Tillbaka till ritbordet, imorgon. ![]()
Tillägg 2: Så där, nu är diagrammet rättat (nedan) så att kurvorna för de rullande årsvolatiliteterna börjar på rätt ställe. Varje ruta i x-led motsvarar ett år och det första året är 1999. Det är här jag inte får kalkylprogrammet att visa år som jag vill på x-axeln.
Årsvolatilitetens snitt över hela perioden är 14,51%. Månadsvolatilitetens snitt över hela perioden är 4,45%. Volatiliteten är beräknad på månadsdata. En beräkning på dagliga prisrörelser ger förmodligen lite andra siffror och mera precisa mått, men jag kom aldrig så långt i går.
En slutsats man kan dra är bl.a. att volatiliteten varierar kraftigt i olika perioder.
Tillägg 3: Skam den som ger sig. Det måste ju bara gå att få till en korrekt tidslinje. Det lyckades till sist.
Tillägg 4: Jag testade även med att använda dagliga prisrörelser istället för prisrörelser baserat på frekvensen 1 månad. Det ger mer exakta volatilitetstal. Istället för 15,41% blev årsvolatiliteten beräknad på hela perioden något högre: 16,18%. Den dagliga standardavvikelsen (volatiliteten) för hela perioden är 1,00% (0,010017769399726). ![]()
Tillägg 5: Jag kollar hur det matchar siffrorna från MSCI. 14,90% för en 10-årsperiod. Då är det beräknat på månadsdata. Något lägre än de 15,41% jag fick för hela perioden, baserat på månadsdata. Jag antar det beror på vilken 10-årsperiod man väljer. Oklart exakt vilken 10-årsperiod MSCI valt, men under faktarutan står det “Data as of Nov. 28, 2025”, så man får väl anta att det är baserat på den senaste 10-årsperioden. Liksom att värdena för 5 YR och 3 YR också gäller de senaste åren.
Tillägg 6: Nedan har jag lagt till 10-årskurvan i diagrammet med månadsavkastningar, för jämförelse med siffrorna från MSCI. Jag har även bytt funktion i LibreOffice Calc, från STEDVP till STDEV. Det gör att siffrorna skiljer något från föregående resultat. För hela perioden är den annualiserade volatiliteten 15,44% istället för tidigare 15,41%. För 10-årskurvan är det senaste värdet 14,77%. Ganska nära siffran 14,90% från MSCI. Varför det skiljer någon tiondels procent vet jag inte.
Månadsvolatiliteten blev 4,46% istället för 4,45% då jag uppdaterade från STDEVP till STDEV.