Symulacja historyczna
Przyjmijmy, że pewna brytyjska inwestorka ulokowała 30% swojego majątku w indeksie FTSE, 40% w indeksie S&P 500 i 30% w indeksie SMI.
Dla różnych wektorów log-zwrotów pięciu czynników ryzyka funkcja lossop() oblicza stratę lub zysk inwestorki przy założeniu, że jej łączny majątek wynosi 1. Funkcję tę można również zastosować do pięciowymiarowego szeregu czasowego log-zwrotów, aby uzyskać szereg czasowy historycznie symulowanych strat i zysków odpowiadających każdemu wektorowi log-zwrotów w tym szeregu.
Funkcja lossop() pełni rolę tzw. operatora straty dla portfela i została napisana specjalnie na potrzeby tego ćwiczenia. W ogólności dla każdego nowego portfela trzeba napisać osobną funkcję do obliczania strat i zysków.
W tym ćwiczeniu wygenerujesz historycznie symulowane straty i przeanalizujesz ich właściwości. Jest to niezbędny krok przed użyciem tych danych do szacowania VaR i ES.
To ćwiczenie jest częścią kursu
Ilościowe zarządzanie ryzykiem w R
Instrukcje do ćwiczenia
- Oblicz stratę wynikającą z log-zwrotu równego -0,1 dla wszystkich pięciu czynników ryzyka (ten krok jest już wykonany).
- Utwórz obiekt
hslosses, stosując funkcjęlossop()doreturns, a następnie narysuj wykreshslosses. - Sporządź wykres Q-Q dla
hslosseswzględem rozkładu normalnego. - Narysuj wykres ACF dla
hslosses, a następnie dla wartości bezwzględnych zhslosses.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Calculate the loss from a log-return of -0.1 for all risk factors
lossop(rep(-0.1, 5))
# Apply lossop() to returns and plot hslosses
___ <- lossop(___)
# Form a Q-Q plot of hslosses against normal
# Plot the sample acf of hslosses and their absolute values