Seite 1 von 1

Kointegration/GPH Test

Verfasst: Di Okt 27, 2020 8:15 pm
von Arlun
Hallo,

ich bin ziemlich neu im Umgang mit R und im Statistik Bereich. Ich möchte zwei Zeitreihen mit dem GPH Test auf Kointegration testen. Dafür benutze ich das Package LongMemoryTS und die Funktion gph: gph(X, m, l = 1). Als Ouput bekommen ich zwar den Wert für den Parameter d, ich weiß aber nicht, wie ich den t-value dazu bestimme bzw. woraus er generiert werden soll.

Hier ein Link zu der Funktion im package: https://rdrr.io/cran/LongMemoryTS/man/gph.html

Hier mein erster Versuch als Code Snippet:

Code: Alles auswählen

lr.reg.IP_AT_DE <- lm(IP_AT~IP_DE)
error.IP_AT_DE <- residuals(lr.reg.IP_AT_DE)
T <- length(error.IP_AT_DE)
d.IP_AT_DE <- gph(X=error.IP_AT_DE, m=T^0.4)
Vielen Dank schonmal im Voraus für die Hilfe!

Re: Kointegration/GPH Test

Verfasst: Di Okt 27, 2020 10:43 pm
von EDi
Aus ?gph:
Details
add details here.
Scheint ja ein top-quality package zu sein :roll:
ich weiß aber nicht, wie ich den t-value dazu bestimme bzw. woraus er generiert werden soll.
Schau dir mal den code hier an: https://rdrr.io/cran/tsqn/src/R/gph.r

ICh vermute du möchtest die summary von dem Linearen Model, oder? ( fit <- stats::lm(y.reg ~ x.reg) - sechst letzte Zeile?

Re: Kointegration/GPH Test

Verfasst: Mi Okt 28, 2020 12:41 pm
von Arlun
Hi EDi,

Vielen Dank für deine Hilfe!

Ich habe das Code Snippet mal in meinem Code ausgeführt:

Code: Alles auswählen

Call:
stats::lm(formula = log_IFS_data$Belgium ~ log_IFS_data$Germany)

Residuals:
      Min        1Q    Median        3Q       Max 
-0.096228 -0.018844  0.004773  0.022269  0.066033 

Coefficients:
                     Estimate Std. Error t value Pr(>|t|)    
(Intercept)          0.019703   0.034056   0.579    0.564    
log_IFS_data$Germany 0.952062   0.008324 114.371   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.03357 on 170 degrees of freedom
Multiple R-squared:  0.9872,	Adjusted R-squared:  0.9871 
F-statistic: 1.308e+04 on 1 and 170 DF,  p-value: < 2.2e-16
Ich glaube, ich verstehe grundsätzlich nicht, welcher t-Wert mit den kritischen Werten für den GPH-Test verglichen werden soll. Hast du vielleicht noch einen Tipp wie ich weiter machen kann?

Falls es hilft, hier mein aktueller Code:

Code: Alles auswählen

library(readr)
library(LongMemoryTS)
library(tsqn)
IFS_data <-
  read_delim(
    "data/International_Financial_Statistics_data.csv",
    ";",
    escape_double = FALSE,
    locale = locale(decimal_mark = ","),
    trim_ws = TRUE
  )
IFS_data <- na.omit(IFS_data)

log_IFS_data <- log(IFS_data[,c("Belgium", "Germany")])

a  <-stats::lm(log_IFS_data$Belgium~log_IFS_data$Germany)
summary(a)

error.IP_AT_DE <- a$residuals
T <- length(error.IP_AT_DE)
d.IP_AT_DE <- gph(X=error.IP_AT_DE, m=T^0.4)
Im Anhang die dazugehörige CSV.