<- rt(n = 100, df = 2)
fat_tail_data <- rt(n = 100, df = 2) fat_tail_data
fattails02
Exercise
In seinem Buch “Statistical Consequences of Fat Tails” schreibt der Autor, Nassim Taleb (S. 53):
In the summer of 1998, the hedge fund called “Long Term Capital Management” (LTCM) proved to have a very short life; it went bust from some deviations in the markets –those “of an unexpected nature”. The loss was a yuuuge deal because two of the partners received the Swedish Riksbank Prize, marketed as the “Nobel” in economics. (…) At least two of the partners made the statement that it was a “10 sigma” event (10 standard deviations), hence they should be absolved of all accusations of incompetence (I was first hand witness of two such statements).
Wir testen in diesem Zusammenhang zwei Hypothesen: \(H_N\), dass der Finanzmarkt normalverteilt ist und \(H_F\), dass die Variable fat tailed ist, also nicht normalverteilt, sondernn einer Verteilung entspringt, in der “Extremereignisse” üblicher sind als in einer Normalverteilung.
Um die Fat-Tails-Verteilung mit \(n=100\) zu simulieren, nutzen wir hier folgende Funktion:
Dabei bedeutet df = 1
, dass die Verteilung sehr randlastig (fat tailed) sein soll (genauer gesagt eine t-Verteilung mit zwei Freiheitsgraden). Details zu dieser R-Funktion sollen uns hier nicht interessieren.
Berechnen wir die Wahrscheinlichkeit, dass die Daten einer Normalverteilung entspringen (und nicht der Fat-Tail-Verteilung).
Die Wahrscheinlichkeit eines 10-Sigma-Events ist übrigens … klein. Taleb berichtet sie mit \(1.31 \cdot 10^{-23}\):
<- 1.31e-23 L_norm
Das sind 22 Nuller nach dem Komma, danach kommt die 1.
Für die t-Verteilung ist der entsprechende Wert:
<- 1 - pt(q = 10, df = 2)
L_fat L_fat
[1] 0.004926229
Wie hoch ist die Post-Wahrscheinlichkeit, dass die Variable normalverteilt ist?
Hinweise:
- Geben Sie Anteile oder Wahrscheinlichkeiten stets mit zwei Dezimalstellen an (sofern nicht anders verlangt).
- Apriori soll und die Hypothese der Normalverteilung 1000 Mal plausibler sein als die der t-Verteilung.
Answerlist
- kleiner als 50%
- kleiner als 5%
- kleiner als 0.5%
- kleiner als 0.05%
- kleiner als 0.005%
Solution
library(tidyverse)
Erstellen wir erstmal den ersten Teil einer Bayes-Box:
<-
d tibble(H = c("Normalverteilt", "Randlastig verteilt"),
Prior = c(1e3,1))
d
# A tibble: 2 × 2
H Prior
<chr> <dbl>
1 Normalverteilt 1000
2 Randlastig verteilt 1
Dann fügen wir den Likelihood jeder Hypothese dazu:
<-
d %>%
d mutate(L = c(L_norm, L_fat))
d
# A tibble: 2 × 3
H Prior L
<chr> <dbl> <dbl>
1 Normalverteilt 1000 1.31e-23
2 Randlastig verteilt 1 4.93e- 3
Dann berechnen wir die Post-Wahrscheinlichkeit:
<-
d %>%
d mutate(Post_unstand = Prior * L,
Post = Post_unstand / sum(Post_unstand))
d
# A tibble: 2 × 5
H Prior L Post_unstand Post
<chr> <dbl> <dbl> <dbl> <dbl>
1 Normalverteilt 1000 1.31e-23 1.31e-20 2.66e-18
2 Randlastig verteilt 1 4.93e- 3 4.93e- 3 1 e+ 0
Die Wahrscheinlichkeit, dass die Variable normalverteilt ist, ist seeeeehr klein, ca. \(10^{-18}\).
Answerlist
- FALSE
- FALSE
- FALSE
- FALSE
- TRUE
Categories:
- probability
- simulation
- normal-distribution