Gigantische Kurtosis?

10

Ich mache einige beschreibende Statistiken über die täglichen Renditen von Aktienindizes. Das heißt, wenn und die an Tag 1 bzw. Tag 2 sind, dann ist die Rendite, die ich verwende (in der Literatur völlig Standard).P1P2loge(P2P1)

In einigen Fällen ist die Kurtosis also enorm. Ich betrachte ungefähr 15 Jahre tägliche Daten (also ungefähr Zeitreihenbeobachtungen)26015

                      means     sds     mins    maxs     skews     kurts
ARGENTINA          -0.00031 0.00965 -0.33647 0.13976 -15.17454 499.20532
AUSTRIA             0.00003 0.00640 -0.03845 0.04621   0.19614   2.36104
CZECH.REPUBLIC      0.00008 0.00800 -0.08289 0.05236  -0.16920   5.73205
FINLAND             0.00005 0.00639 -0.03845 0.04622   0.19038   2.37008
HUNGARY            -0.00019 0.00880 -0.06301 0.05208  -0.10580   4.20463
IRELAND             0.00003 0.00641 -0.03842 0.04621   0.18937   2.35043
ROMANIA            -0.00041 0.00789 -0.14877 0.09353  -1.73314  44.87401
SWEDEN              0.00004 0.00766 -0.03552 0.05537   0.22299   3.52373
UNITED.KINGDOM      0.00001 0.00587 -0.03918 0.04473  -0.03052   4.23236
                   -0.00007 0.00745 -0.09124 0.06405  -1.82381  63.20596
AUSTRALIA           0.00009 0.00861 -0.08831 0.06702  -0.74937  11.80784
CHINA              -0.00002 0.00072 -0.40623 0.02031   6.26896 175.49667
HONG.KONG           0.00000 0.00031 -0.00237 0.00627   2.73415  56.18331
INDIA              -0.00011 0.00336 -0.03613 0.03063  -0.22301  10.12893
INDONESIA          -0.00031 0.01672 -0.24295 0.19268  -2.09577  54.57710
JAPAN               0.00008 0.00709 -0.03563 0.06591   0.57126   5.16182
MALAYSIA           -0.00003 0.00861 -0.35694 0.13379 -16.48773 809.07665

Meine Frage ist: Gibt es ein Problem?

Ich möchte eine umfassende Zeitreihenanalyse über diese Daten durchführen - OLS- und Quantil-Regressionsanalyse sowie Granger-Kausalität.

Sowohl meine Antwort (abhängig) als auch mein Prädiktor (Regressor) haben die Eigenschaft einer gigantischen Kurtosis. Ich werde diese Rückgabeprozesse also auf beiden Seiten der Regressionsgleichung haben. Wenn die Nicht-Normalität auf die Störungen übergreift, werden meine Standardfehler nur eine hohe Varianz aufweisen, oder?

(Vielleicht brauche ich einen schräg gestellten robusten Bootstrap?)


quelle
3
1) Möglicherweise möchten Sie dies auf die Website quant.stackexchange.com verschieben. 2) Was meinst du mit Problem? Es gibt eine ganze Literatur über die Auswirkungen von Ausreißern auf Momente. Es kann oft eher eine Kunst als eine Wissenschaft sein.
John
2
"Gibt es ein Problem?" ist zu vage. Was möchten Sie mit diesen Daten machen? Ihre riesigen Kurtosen sind mit einem riesigen linken Versatz verbunden. Da log (p2 / p1) = log p2 - log p1 ist, zeigt ein großer linker Versatz an, dass dies einige Male sehr niedrig war, dh p1 viel höher als p2 im Vergleich zum Normalfall. Könnte eine Firma sein, die bankrott geht oder so.
Peter Flom - Monica wieder einsetzen
Entschuldigung - ich habe mein OP geändert.
1
Log-Retouren sind in der Regel verzerrt und haben einen starken Schwanz. Aus diesem Grund wird bevorzugt, flexible Verteilungen in Betracht zu ziehen, die dieses Verhalten erfassen können. Siehe zum Beispiel 1 und 2 .
Sie sollten sich Kutosemessungen ansehen, die auf L-Momenten basieren
kjetil b halvorsen

Antworten:

2

Probieren Sie die Lambert W x F- Distributionen mit schwerem Schwanz oder die verzerrten Lambert W x F- Distributionen aus (Haftungsausschluss: Ich bin der Autor). In R sind sie im LambertW- Paket implementiert .

Zusammenhängende Posts:

Ein Vorteil gegenüber der Cauchy- oder Student-t-Verteilung mit festen Freiheitsgraden besteht darin, dass die Endparameter aus den Daten geschätzt werden können - so können Sie die Daten entscheiden lassen, welche Momente existieren. Darüber hinaus können Sie mit dem Lambert W x F-Framework Ihre Daten transformieren und Schiefe / schwere Schwänze entfernen. Es ist jedoch wichtig zu beachten, dass OLS keine Normalität von oder erfordert . Für Ihre EDA könnte es sich jedoch lohnen.X.yX

Hier ist ein Beispiel für Lambert W x Gaussian-Schätzungen, die auf die Rendite von Aktienfonds angewendet werden.

library(fEcofin)
ret <- ts(equityFunds[, -1] * 100)
plot(ret)

Zeitreihenplot Aktienfonds

Die zusammenfassenden Metriken der Renditen sind ähnlich (nicht so extrem) wie in OPs Beitrag.

data_metrics <- function(x) {
  c(mean = mean(x), sd = sd(x), min = min(x), max = max(x), 
    skewness = skewness(x), kurtosis = kurtosis(x))
}
ret.metrics <- t(apply(ret, 2, data_metrics))
ret.metrics

##          mean    sd    min   max skewness kurtosis
## EASTEU 0.1300 1.538 -18.42 12.38   -1.855    28.95
## LATAM  0.1206 1.468  -6.06  5.66   -0.434     4.21
## CHINA  0.0864 0.911  -4.71  4.27   -0.322     5.42
## INDIA  0.1515 1.502 -12.72 14.05   -0.505    15.22
## ENERGY 0.0997 1.187  -5.00  5.02   -0.271     4.48
## MINING 0.1315 1.394  -7.72  5.69   -0.692     5.64
## GOLD   0.1098 1.855 -10.14  6.99   -0.350     5.11
## WATER  0.0628 0.748  -5.07  3.72   -0.405     6.08

Die meisten Serien zeigen deutlich nicht normale Eigenschaften (starke Schiefe und / oder große Kurtosis). Lassen Sie uns jede Reihe unter Verwendung einer Lambert W x Gaußschen Verteilung mit schwerem Schwanz (= Tukey's h) unter Verwendung einer Methode des Momentenschätzers ( IGMM) Gaußschisieren .

library(LambertW)
ret.gauss <- Gaussianize(ret, type = "h", method = "IGMM")
colnames(ret.gauss) <- gsub(".X", "", colnames(ret.gauss))

plot(ts(ret.gauss))

Zeitreihendiagramm von Gaußschen Renditen

Die Zeitreihendiagramme zeigen viel weniger Schwänze und auch eine stabilere zeitliche Variation (jedoch nicht konstant). Die erneute Berechnung der Metriken für die Gaußschen Zeitreihen ergibt:

ret.gauss.metrics <- t(apply(ret.gauss, 2, data_metrics))
ret.gauss.metrics

##          mean    sd   min  max skewness kurtosis
## EASTEU 0.1663 0.962 -3.50 3.46   -0.193        3
## LATAM  0.1371 1.279 -3.91 3.93   -0.253        3
## CHINA  0.0933 0.734 -2.32 2.36   -0.102        3
## INDIA  0.1819 1.002 -3.35 3.78   -0.193        3
## ENERGY 0.1088 1.006 -3.03 3.18   -0.144        3
## MINING 0.1610 1.109 -3.55 3.34   -0.298        3
## GOLD   0.1241 1.537 -5.15 4.48   -0.123        3
## WATER  0.0704 0.607 -2.17 2.02   -0.157        3

Der IGMMAlgorithmus hat genau das erreicht, was er wollte: die Daten so transformieren, dass eine Kurtosis von vorliegt . Interessanterweise weisen alle Zeitreihen jetzt eine negative Schiefe auf, was mit der meisten Literatur zu Finanzzeitreihen übereinstimmt. Es ist wichtig darauf hinzuweisen, dass dies nur am Rande funktioniert, nicht gemeinsam (analog zu ).3Gaussianize()scale()

Einfache bivariate Regression

Um die Auswirkung der Gaußschen Methode auf OLS zu berücksichtigen, sollten Sie die "EASTEU" -Rendite aus "INDIA" -Renditen vorhersagen und umgekehrt. Obwohl wir die Renditen am selben Tag zwischen und (keine verzögerten Variablen), liefert sie angesichts des Zeitunterschieds von 6 Stunden + zwischen Indien und Europa immer noch einen Wert für eine Börsenprognose. r I N D I A , trEASTEU,trINDIA,t

layout(matrix(1:2, ncol = 2, byrow = TRUE))
plot(ret[, "INDIA"], ret[, "EASTEU"])
grid()
plot(ret.gauss[, "INDIA"], ret.gauss[, "EASTEU"])
grid()

Streudiagramm INDIEN und EASTEU

Das linke Streudiagramm der Originalserie zeigt, dass die starken Ausreißer nicht an denselben Tagen, sondern zu unterschiedlichen Zeiten in Indien und Europa auftraten. Ansonsten ist nicht klar, ob die Datenwolke in der Mitte keine Korrelation oder negative / positive Abhängigkeit unterstützt. Da Ausreißer die Varianz- und Korrelationsschätzungen stark beeinflussen, lohnt es sich, die Abhängigkeit bei entfernten schweren Schwänzen zu betrachten (rechtes Streudiagramm). Hier sind die Muster viel klarer und die positive Beziehung zwischen Indien und dem osteuropäischen Markt wird deutlich.

# try these models on your own
mod <- lm(EASTEU ~ INDIA * CHINA, data = ret)
mod.robust <- rlm(EASTEU ~ INDIA, data = ret)
mod.gauss <- lm(EASTEU ~ INDIA, data = ret.gauss)

summary(mod)
summary(mod.robust)
summary(mod.gauss)

Granger-Kausalität

Ein Granger-Kausaltest basierend auf einem -Modell (ich verwende , um den Wocheneffekt des täglichen Handels zu erfassen) für "EASTEU" und "INDIA" lehnt "keine Granger-Kausalität" für beide Richtungen ab.p = 5VAR(5)p=5

library(vars)  
mod.vars <- vars::VAR(ret[, c("EASTEU", "INDIA")], p = 5)
causality(mod.vars, "INDIA")$Granger


## 
##  Granger causality H0: INDIA do not Granger-cause EASTEU
## 
## data:  VAR object mod.vars
## F-Test = 3, df1 = 5, df2 = 3000, p-value = 0.02

causality(mod.vars, "EASTEU")$Granger
## 
##  Granger causality H0: EASTEU do not Granger-cause INDIA
## 
## data:  VAR object mod.vars
## F-Test = 4, df1 = 5, df2 = 3000, p-value = 0.003

Für die Gaußschen Daten ist die Antwort jedoch anders! Hier kann der Test H0 nicht ablehnen, dass "INDIEN kein Granger verursacht EASTEU", aber dennoch ablehnt, dass "EASTEU kein Granger verursacht INDIEN". Die Gaußschen Daten stützen also die Hypothese, dass die europäischen Märkte am nächsten Tag die Märkte in Indien antreiben.

mod.vars.gauss <- vars::VAR(ret.gauss[, c("EASTEU", "INDIA")], p = 5)
causality(mod.vars.gauss, "INDIA")$Granger

## 
##  Granger causality H0: INDIA do not Granger-cause EASTEU
## 
## data:  VAR object mod.vars.gauss
## F-Test = 0.8, df1 = 5, df2 = 3000, p-value = 0.5

causality(mod.vars.gauss, "EASTEU")$Granger

## 
##  Granger causality H0: EASTEU do not Granger-cause INDIA
## 
## data:  VAR object mod.vars.gauss
## F-Test = 2, df1 = 5, df2 = 3000, p-value = 0.06

Beachten Sie, dass mir nicht klar ist, welche die richtige Antwort ist (falls vorhanden), aber es ist eine interessante Beobachtung. Es ist unnötig zu erwähnen, dass dieser gesamte Kausaltest davon abhängt, dass der das richtige Modell ist - was höchstwahrscheinlich nicht der Fall ist. aber ich denke, es dient gut zur Veranschaulichung.VAR(5)

Georg M. Goerg
quelle
1

Was benötigt wird, ist ein Wahrscheinlichkeitsverteilungsmodell, das besser zu den Daten passt. Manchmal gibt es keine definierten Momente. Eine solche Verteilung ist die Cauchy-Verteilung. Obwohl die Cauchy-Verteilung einen Median als erwarteten Wert hat, gibt es keinen stabilen Mittelwert und keine stabilen höheren Momente. Dies bedeutet, dass beim Sammeln von Daten tatsächliche Messungen auftreten, die wie Ausreißer aussehen, aber tatsächliche Messungen sind. Wenn man beispielsweise zwei Normalverteilungen F und G mit dem Mittelwert Null hat und man F / G teilt, hat das Ergebnis keinen ersten Moment und ist eine Cauchy-Verteilung. Wir sammeln also gerne Daten und es sieht in Ordnung aus wie 5,3,9,6,2,4 und wir berechnen einen Mittelwert, der stabil aussieht. Dann erhalten wir plötzlich einen Wert von -32739876 und unser Mittelwert wird bedeutungslos. Beachten Sie jedoch, dass der Median 4 beträgt und stabil ist. So ist es bei Long-Tailed-Distributionen.

Bearbeiten: Sie können die Student-T-Verteilung mit 2 Freiheitsgraden ausprobieren. Diese Verteilung hat längere Schwänze als die Normalverteilung, die Schiefe und die Kurtosis sind instabil ( Sic , existieren nicht), aber der Mittelwert und die Varianz sind definiert, dh sie sind stabil.

Nächste Änderung: Eine Möglichkeit könnte darin bestehen, die Theil-Regression zu verwenden. Wie auch immer, es ist ein Gedanke, denn Theil wird gut funktionieren, egal wie die Schwänze aussehen. Sie können MLR (multiple lineare Regression unter Verwendung von Mediansteigungen) durchgeführt werden. Ich habe Theil noch nie für die Anpassung von Histogrammdaten durchgeführt. Aber ich habe Theil mit einer Jackknife-Variante gemacht, um Konfidenzintervalle festzulegen. Dies hat den Vorteil, dass Theil sich nicht um die Verteilungsformen kümmert und die Antworten im Allgemeinen weniger voreingenommen sind als bei OLS, da OLS normalerweise verwendet wird, wenn eine problematische Varianz der unabhängigen Achse vorliegt. Nicht dass Theil völlig unbefangen ist, es ist eine mittlere Steigung. Die Antworten haben auch eine andere Bedeutung. Sie finden eine bessere Übereinstimmung zwischen den abhängigen und unabhängigen Variablen, wobei OLS den Prädiktor für den geringsten Fehler der abhängigen Variablen findet.

Carl
quelle
2
Schöne Infos, danke. Kennen Sie einige (recht kompakte) Ressourcen, die Sie weiterlesen können? Ich habe ein völlig anderes Problem mit Long Tail, aber ich denke, meine Daten sind nur eine gemischte Verteilung verschiedener Szenarien.
Flaschenpost
Ich benutze Mathematica, und das Anpassen von Verteilungen sowie das stückweise Definieren von Verteilungen ist in dieser Sprache nicht schwierig. Zum Beispiel, schauen Sie sich diese . Im Allgemeinen addieren sich Zufallsvariablen durch Faltung, aber in der Praxis ist die Faltung von Dichtefunktionen eine Herausforderung. Einige Leute definieren nur stückweise Dichtefunktionen für gemischte Variablen, zum Beispiel das Hinzufügen eines leichten exponentiellen Schwanzes zu einer zensierten schwereren Gammaverteilung nach einem Maximalwert zur Modellierung der Erdbebenfrequenz. @ flaschenpost
Carl