[PYTHON] Einführung in Vector Error Correction Models (VECM) mit Statistikmodellen

In dem von Granger, Newbold (1974) und Yule (1936) eingeführten Fehlerkorrekturmodell (ECM) weisen die analysierten Daten einen langfristigen probabilistischen Trend auf, der als Republik bekannt ist. Die Fehlerkorrektur drückt aus, dass Abweichungen oder Fehler vom langfristigen Gleichgewicht die kurzfristige Dynamik beeinflussen. Wenn die wirtschaftliche Zeitreihe Einheitswurzeln enthält, ist die Zeitreihe nicht stationär. Zwei instationäre und nicht verwandte Zeitreihen können eine signifikante Beziehung aufweisen, wenn die Methode der kleinsten Quadrate in der Regressionsanalyse verwendet wird. Das Fehlerkorrekturmodell analysiert die Auswirkungen zwischen Langzeit- und Kurzzeit-Zeitreihendaten und sagt die Zeit voraus, die die abhängige Variable benötigt, um in den Gleichgewichtszustand zurückzukehren. Die Engel-Granger-Methode weist jedoch viele Probleme auf. Johansen hat das Problem durch die Ankündigung des Vector Error Correction Model (VECM) gelöst. VECM ist ein Fehlerkorrekturmodell mit dem Konzept eines Vektor-Self-Return-Modells (VAR), eines der Modelle mit mehreren Zeitreihen, die eine bidirektionale Kausalität annehmen. Daher ist das Vektorfehlerkorrekturmodell auch eines der mehreren Zeitreihenmodelle.

ECM (einfache Wiki-Übersetzung)

Das Fehlerkorrekturmodell (ECM) ist ein Modell mit mehreren Zeitreihen, bei dem mehrere zugrunde liegende Variablen für Daten mit langfristigen probabilistischen Trends verwendet werden, die als Abstimmungen bezeichnet werden. ECM hilft bei der Abschätzung der kurzfristigen und langfristigen Auswirkungen einer Zeitreihe auf eine andere und wird theoretisch unterstützt. Die Fehlerkorrektur erfasst die Tatsache, dass frühe Fehler aus dem langfristigen Gleichgewicht die kurzfristige Dynamik beeinflussen. Daher kann ECM direkt die Rate schätzen, mit der die abhängige Variable nach Änderungen anderer Variablen zum Gleichgewicht zurückkehrt.

Geschichte

Yule (1936) und Granger und Newbold (1974) konzentrierten sich zunächst auf das Problem der offensichtlichen Korrelation und fanden eine Lösung in der Zeitreihenanalyse. In zwei völlig unabhängigen Summenprozessen (nicht stationär) zeigt einer durch Regressionsanalyse tendenziell eine statistisch signifikante Beziehung zum anderen. Daher kann es falsch sein, dass zwischen diesen Variablen eine echte Beziehung besteht. Die übliche Methode der kleinsten Quadrate ist inkonsistent und häufig verwendete Teststatistiken sind ungültig. Insbesondere Monte-Carlo-Simulationen haben gezeigt, dass sehr hohe $ R ^ 2 $, individuell sehr hohe t-Statistiken und niedrige Durbin-Watson-Statistiken erhalten werden. Technisch gesehen beweist Phillips (1986), dass mit zunehmender Stichprobengröße die Parameterschätzungen nicht wahrscheinlich konvergieren, die Abschnitte divergieren und der Gradient zu einer nicht entarteten Verteilung wird. Da es jedoch die langfristigen Beziehungen zwischen diesen Variablen widerspiegelt, ist es möglich, dass es in beiden Zeitreihen einen gemeinsamen probabilistischen Trend gibt, an dem der Forscher wirklich interessiert ist.

Aufgrund der Wahrscheinlichkeitscharakteristik von Trends kann der Summierungsprozess nicht in stationäre Zeitreihen unterteilt werden, die deterministische (vorhersagbare) Trends und Abweichungen von den Trends enthalten. Sogar ein zufälliger Spaziergang mit entfernten deterministischen Trends zeigt schließlich eine gefälschte Korrelation. Daher löst die Trendentfernung das Schätzproblem nicht. Bei der Box-Jenkins-Methode wird in vielen Zeitreihen (Wirtschaftlichkeit usw.) allgemein angenommen, dass die Differenz erster Ordnung konstant ist, und die Differenz der Zeitreihendaten wird zur Schätzung eines Modells wie ARIMA herangezogen. Vorhersagen aus solchen Modellen spiegeln die Periodizität und Saisonalität der Daten wider. Die Informationen über langfristige Anpassungen der Niveaus (Originalserien, Preis) gehen jedoch verloren und langfristige Vorhersagen werden unzuverlässig. Infolgedessen entwickelte Sargan (1964) eine ECM-Methodik, bei der die in der Ebene enthaltenen Informationen erhalten bleiben.

Schätzen

Es sind verschiedene Verfahren zum Schätzen des hoch entwickelten dynamischen Modells bekannt, wie oben beschrieben. Dazu gehören der zweistufige Ansatz von Engle und Granger und das vektorbasierte VECM unter Verwendung der Johansen-Methode zur Schätzung des ECM in einem Schritt.

Engle und Grangers zweistufiger Ansatz

Im ersten Schritt bestätigt der Test im Voraus, ob die einzelnen verwendeten Zeitreihen nicht stationär sind. Verwenden Sie Standard-Unit-Root-DF- und ADF-Tests (um das Problem des Serienkorrelationsfehlers zu lösen). Betrachten Sie den Fall von zwei verschiedenen Zeitreihen $ x_ {t} $ und $ y_ {t} $. Wenn beide I (0) sind, ist die Standardregressionsanalyse gültig. Für Summen unterschiedlicher Ordnungen, zum Beispiel wenn eine I (1) und die andere I (0) ist, muss das Modell transformiert werden. Wenn beide Summen derselben Ordnung sind (normalerweise I (1)), kann ein ECM-Modell des Formulars geschätzt werden:

A(L)\Delta y_{t}=\gamma +B(L)\Delta x_{t}+\alpha (y_{t-1}-\beta_{0}-\beta_{1}x_{t-1})+\nu_{t}

Wenn beide Summen sind und dieses ECM existiert, werden sie nach dem Ausdruckssatz von Engle-Granger als Republiken bezeichnet. Verwenden Sie dann die übliche Methode der kleinsten Quadrate, um das Modell $ y_ {t} = \ beta_ {0} + \ beta_ {1} x_ {t} + \ varepsilon_ {t} $ zu schätzen. Wenn sich die Regression nicht wie durch die obigen Testkriterien bestimmt maskiert, sind nicht nur die üblichen kleinsten Quadrate gültig, sondern es gibt tatsächlich eine Super-Übereinstimmung (Stock, 1987). Speichern Sie dann den vorhergesagten Rest $ \ hat {\ varepsilon_ {t}} = y_ {t} - \ beta_ {0} - \ beta_ {1} x_ {t} $ aus dieser Regression sowie die Differenzvariable und die Verzögerung Wird zur Regression des Fehlerterms verwendet.

A(L)\Delta y_{t}=\gamma +B(L)\Delta x_{t}+\alpha {\hat {\varepsilon }}_{t-1}+\nu _{t}

Testen Sie dann die Abstimmung mit der Standard-T-Statistik von $ \ alpha $. Diese Methode ist einfach, hat aber eine Reihe von Problemen.

-Die statistische Erkennungsleistung des in der ersten Stufe verwendeten univariaten Einheitswurzeltests ist gering.

VECM Der oben beschriebene Engle-Granger-Ansatz weist viele Schwächen auf. Das heißt, eine Variable ist nur auf eine einzige Gleichung beschränkt, die als abhängige Variable bezeichnet wird. Diese Variable wird durch eine andere Variable erklärt, die für den interessierenden Parameter schwach exogen sein soll. Überprüfen Sie auch durch einen Vorversuch, ob die Zeitreihe I (0) oder I (1) ist. Diese Schwächen können mit Johansens Methode behoben werden. Der Vorteil ist, dass keine Vortests erforderlich sind, es kein Problem mit einer großen Anzahl republikanischer Beziehungen gibt, alle als endogene Variablen behandelt werden und Tests in Bezug auf Langzeitparameter möglich sind. Infolgedessen erweitert das Modell das als Vector Self-Return (VAR) bekannte exogene Modell um Fehlerkorrekturfunktionen und wird als Vector Error Correction Model (VECM) bezeichnet. Das Verfahren ist wie folgt.

Schritt 1: Schätzen Sie einen nicht eingeschränkten VAR, der möglicherweise nicht stationäre Variablen enthält Schritt 2: Kyowa-Test mit Johansens Test Schritt 3: Erstellen und analysieren Sie VECM.

ECM-Beispiel

Die Idee der Republikanisierung lässt sich anhand eines einfachen makroökonomischen Beispiels veranschaulichen. Angenommen, der Verbrauch von $ C_ {t} $ und das verfügbare Einkommen von $ Y_ {t} $ sind makroökonomische Zeitreihen mit langfristigen Beziehungen. Insbesondere wird die durchschnittliche Verbrauchstendenz auf 90% festgelegt. Mit anderen Worten, $ C_ {t} = 0,9Y_ {t} $ gilt auf lange Sicht. Aus der Sicht eines metrischen Ökonomen ist der Fehler $ \ varepsilon_ {t} (= C_ {t} - \ beta Y_ {t}) $ aus der Regression eine stationäre Zeitreihe, $ Y_ {t} $ und $ C_ {t} Wenn $ nicht stationär ist, besteht diese langfristige Beziehung (auch als republikanisch bekannt). Wenn sich $ Y_ {t} $ plötzlich um $ \ Delta Y_ {t} $ ändert, wird angenommen, dass sich $ C_ {t} $ ändert. $ \ Delta C_ {t} = 0,5 \ Delta Y_ {t} $, dh die marginale Verbrauchstendenz beträgt 50%. Die letzte Annahme ist, dass sich die Lücke zwischen dem aktuellen Verbrauch und dem ausgeglichenen Verbrauch in jedem Zeitraum um 20% verringert.

Ändern Sie mit dieser Einstellung die Verbrauchsstufe $ \ Delta C_ {t} = C_ {t} - C_ {t-1} $ in $ \ Delta C_ {t} = 0,5 \ Delta Y_ {t} -0,2 (C_ {t) -1} -0,9Y_ {t-1}) + \ varepsilon_ {t} $.

Der erste Term von RHS erklärt den kurzfristigen Effekt von Änderungen von $ Y_ {t} $ auf $ C_ {t} $, der zweite Term erklärt die langfristige Beziehung von Variablen zum Gleichgewicht und der dritte Der Begriff spiegelt den zufälligen Schock wider, den das System erhält, beispielsweise den Schock des Verbrauchervertrauens, der sich auf den Verbrauch auswirkt.

Um zu sehen, wie das Modell funktioniert, betrachten Sie zwei Arten von Schocks, permanente und temporäre. Setzen Sie der Einfachheit halber $ \ varepsilon_ {t} $ für jedes t auf Null.

Angenommen, das System befindet sich für die Periode t - 1 im Gleichgewicht. Das heißt, $ C_ {t-1} = 0,9Y_ {t-1} $.

Angenommen, $ Y_ {t} $ erhöht sich in Periode t um 10, kehrt dann aber zur vorherigen Ebene zurück. In diesem Fall erhöht sich $ C_ {t} $ zu Beginn (Periode t) um 5 (die Hälfte von 10), aber in der zweiten und den folgenden Perioden beginnt $ C_ {t} $ abzunehmen und konvergiert auf das ursprüngliche Niveau.

Wenn dagegen die Auswirkung auf $ Y_ {t} $ dauerhaft ist, konvergiert $ C_ {t} $ langsam auf einen Wert größer als 9 über dem ursprünglichen Wert von $ C_ {{t-1}} $.

Vor dem Erlernen des Vektorfehlerkorrekturmodells

Grundkenntnisse (vereinfachte Teilübersetzung von 1.2 in [1])

Der Wert einer bestimmten wirtschaftlichen Variablen ist der Realisierungswert der Wahrscheinlichkeitsvariablen für einen bestimmten Zeitraum, und die Zeitreihen werden als vom Wahrscheinlichkeitsprozess generiert betrachtet. Um das Grundkonzept zu verdeutlichen, werfen wir einen kurzen Blick auf einige grundlegende Definitionen und Ausdrücke.

Ω ist eine Menge aller Grundereignisse (Probenraum) und (Ω, F, Pr) ist ein Wahrscheinlichkeitsraum. F ist die Sigma-Algebra des Ereignisses oder das Komplement von Ω, und Pr ist das durch F definierte Wahrscheinlichkeitsmaß. Die Zufallsvariable y ist eine reelle Funktion $ A_c $ = {ω ∈ Ω | y (ω) ≤ c} ∈ F, definiert durch Ω für jede reelle Zahl c, und $ A_c $ hat eine durch Pr definierte Wahrscheinlichkeit. Es ist eine Veranstaltung, die durchgeführt werden muss. Die Funktion F: R → [0, 1] ist definiert durch $ F (c) = Pr (A_c) $ und ist eine Verteilungsfunktion von $ y $.

Der K-dimensionale Wahrscheinlichkeitsvektor oder der K-dimensionale Vektor der stochastischen Variablen ist eine Funktion von Ω bis y im K-dimensionalen euklidischen Raum $ R ^ K $. Das heißt, y bildet $ y (ω) = (y_1 (ω), ..., y_K (ω)) ^ \ prime $ auf ω ∈ Ω ab, $ c = (c_1, ..., c_K ) ∈ R_K $, $ A_c = {ω | y_1 (ω) ≤ c_1, \ cdots, y_K (ω) ≤ c_K} ∈ F $. Funktion F: RK → [0, 1] ist definiert durch $ F (c) = Pr (A_c) $ und ist eine gleichzeitige Verteilung von y-Funktionen.

Angenommen, Z ist eine Menge von Indizes mit bis zu unzähligen Elementen, z. B. eine Menge aller ganzen Zahlen oder aller positiven ganzen Zahlen. Der (diskrete) stochastische Prozess ist eine reelle Funktion von y: Z × Ω → R, die alle t ∈ Z bestimmt wird, und y (t, ω) ist eine stochastische Variable. Die Wahrscheinlichkeitsvariable, die t entspricht, wird als $ y_t $ angezeigt, und der zugrunde liegende Wahrscheinlichkeitsraum wird nicht erwähnt. In diesem Fall betrachten wir, dass alle Mitglieder $ y_t $ des stochastischen Prozesses im selben stochastischen Raum definiert sind. Wenn die Bedeutung des Symbols aus dem Kontext hervorgeht, wird der stochastische Prozess normalerweise auch durch $ y_t $ angezeigt.

Der stochastische Prozess wird als gleichzeitige Verteilungsfunktion aller endlichen Teilmengenfamilien von $ y_t $ beschrieben, wenn t ∈ S ⊂ Z ist. In der Praxis ist das gesamte Verteilungssystem oft unbekannt, daher verwenden wir häufig den ersten und zweiten Moment der Verteilung. Das heißt, der Durchschnitt $ E (y_t) = \ mu_t $, die Varianz $ E [y_t- \ mu_t ^ 2] $ und die Kovarianz $ E [(y_t- \ mu_t) (y_s- \ mu_s)] $ werden verwendet.

Der K-dimensionale Vektorwahrscheinlichkeitsprozess oder der multivariate Wahrscheinlichkeitsprozess ist eine Funktion von y: Z × Ω → $ R ^ K $, und für jedes bestimmte t ∈ Z ist y (t, ω) ein K-dimensionaler Wahrscheinlichkeitsvektor. .. Verwenden Sie $ y_t $ für den Wahrscheinlichkeitsvektor, der dem bestimmten t ∈ Z entspricht. Der vollständige stochastische Prozess kann auch durch $ y_t $ dargestellt werden. Diese besondere Bedeutung wird aus dem Kontext deutlich. Die stochastischen Eigenschaften sind die gleichen wie bei univariaten Prozessen. Das heißt, die probabilistischen Eigenschaften werden als gleichzeitige Verteilungsfunktion aller endlichen Nebenmengen des Wahrscheinlichkeitsvektors $ y_t $ zusammengefasst. In der Praxis werden Momente erster und zweiter Ordnung verwendet, die aus allen relevanten stochastischen Variablen abgeleitet wurden.

Der Realisierungswert des (vektor) stochastischen Prozesses ist $ y_t (\ omega) $, eine Menge von (Vektor) Sequenzen für ω, die durch t ∈ Z festgelegt sind. Mit anderen Worten ist der realisierte Wert des stochastischen Prozesses die Funktion Z → $ R ^ K $ von t → $ y_t $ (ω). Zeitreihen werden als solche Realisierungen oder in einigen Fällen als endliche Teile solcher Realisierungen betrachtet. Das heißt, es besteht zum Beispiel aus (Vektor) $ y_1 (\ omega), \ dots, y_T (\ omega) $. Es wird angenommen, dass der zugrunde liegende stochastische Prozess die Zeitreihe (n) erzeugt hat und als Zeitreihengenerierung oder -generierungsprozess oder Datengenerierungsprozess (DGP) bezeichnet wird. Die Zeitreihen $ y_1 (\ omega), \ cdots, y_T (\ omega) $ werden normalerweise durch $ y_1, \ cdots, y_T $ oder einfach den zugrunde liegenden stochastischen Prozess $ y_t $ angegeben, wenn keine Verwirrung auftritt. Ist fertig. Die Anzahl T der Beobachtungen wird als Stichprobengröße oder Länge der Zeitreihen bezeichnet.

VAR-Prozess (vereinfachte Teilübersetzung von 1.3 von [1])

Da lineare Funktionen einfach zu handhaben sind, werden wir zunächst frühere Beobachtungen mit linearen Funktionen vorhersagen. Betrachten Sie die univariate Zeitreihe $ y_t $ und $ h = 1 $ Zukunftsprognose. Wenn f (・) eine lineare Funktion ist, \hat{y_{T+1}}=\nu+\alpha_1 y_T+\alpha_2 y_{T-1}+\cdots Wird sein. Die Vorhersageformel verwendet den vergangenen Wert y einer endlichen Zahl p, \hat{y_{T+1}} = \nu + \alpha_1y_{T}+\alpha_2y_{T-1} +\cdots+\alpha_p y_{T-p} + 1 Wird sein. Natürlich sind der wahre Wert $ y_ {T +1} $ und der vorhergesagte $ \ hat {y_ {T +1}} $ nicht genau gleich. Wenn der Vorhersagefehler $ u_ {T +1} = \ hat {y_ {T +1}} - y_ {T +1} $ ist y_{T +1} = y_{ T +1} + u_{T +1} =\nu + \alpha_1 y_T+\cdots+\alpha_p y_{T-p + 1} + u_{T +1} Wird sein. Unter der Annahme, dass der numerische Wert der realisierte Wert der stochastischen Variablen ist, wird hier der Selbstrückgabeprozess zur Datengenerierung verwendet. y_t =\nu + \alpha_1 y{t−1} +\cdots+ \alpha_p y_{t−p} + u_t Wird in jeder Periode T angewendet. Hier sind $ y_t $, $ y_ {t - 1}, \ cdots, y_ {t - p} $ und $ u_t $ stochastische Variablen. Der Self-Return (AR) -Prozess geht davon aus, dass die Vorhersagefehler $ u_t $ in verschiedenen Zeiträumen nicht korreliert sind, dh $ u_t $ und $ u_s $ sind bei $ s = t $ nicht korreliert. Das heißt, da alle nützlichen früheren Informationen $ y_t $ für die Vorhersage verwendet werden, gibt es keinen systematischen Vorhersagefehler.

Betrachten Sie zunächst mehrere Zeitreihen \hat{y_{k,T +1}} =\nu + \alpha_{k1,1}y_{1,T} +\alpha_{k2,1}y_{2,T} + \cdots+\alpha_{kK,1}y_{K,T}+\cdots+\alpha_{k1,p}y_{1,T-p+1} +\cdots+\alpha_{kK,p}y_{K,T-p+1} Es ist natürlich, mit $ k = 1, \ cdots K $ zu erweitern.

Um die Notation zu vereinfachen, $ y_t = (y_ {1t}, \ cdots, y_ {Kt}), \ hat {y_t}: = (\ hat {y_ {1t}}, \ cdots, \ hat {y_ {Kt}}), \ nu = (\ nu_1, \ cdots, \ nu_K) $ und A_i=| matrix |(Abkürzung)| Dann kann die obige Vektorgleichung kompakt wie folgt beschrieben werden.

y_{T+1}=\nu+ A_1y_T +\cdots+ A_py_{T −p + 1}

Da $ y_t $ ein Vektor stochastischer Variablen ist, ist dieser Prädiktor der beste Prädiktor, der aus einem Vektor-Selbstrückgabemodell der Form erhalten wird: y_t =\nu+ A1y_{t−1} +\cdots+ A_py_{t−p} + u_t Hier ist $ u_t = (u_ {1t}, \ cdots, u_ {Kt}) $ eine kontinuierliche Zeitreihe von Wahrscheinlichkeitsvektoren k-ter Ordnung, in der der Mittelwert der Vektoren Null ist und unabhängig und gleichmäßig verteilt ist.

VAR (p) Stabilisierungsprozess (vereinfachte Teilübersetzung von 2.1.1 von [1])

VAR (p) -Modell (VAR-Modell der Ordnung p)

y_t =\nu + A_1y_{t−1} +\cdots+ A_py_{t−p} + u_t、t = 0、±1、±2、...、(2.1.1)

nachdenken über. $ y_t = (y_ {1t}, \ cdots, y_ {Kt}) ^ \ prime $ ist der (K × 1) -Vektor der Wahrscheinlichkeitsvariablen, $ A_i $ ist durch die (K × K) -Koeffizientenmatrix festgelegt und $ \ nu = (\ nu_1, \ cdots, \ nu_K) ^ \ prime $ ist in einer (K × K) -Koeffizientenmatrix festgelegt und hat Abschnitte, die Durchschnittswerte ungleich Null sein können $ E (y_t) $. Daher ist $ u_t = (u_ {1t}, \ cdots, u_ {Kt}) ^ \ prime $ ein K-dimensionales weißes Rauschen oder ein Innovationsprozess. Das heißt, $ s \ net $, $ E (u_t) = 0, E (u_tu_t ^ \ prime) = \ sum_u, E (u_tu_s ^ \ prime) = 0 $. Sofern nicht anders angegeben, ist die Kovarianzmatrix Σu eine nicht singuläre Matrix.

Betrachten wir den Prozess von (2.1.1) etwas genauer. Betrachten Sie das VAR (1) -Modell, um die Bedeutung des Modells zu verstehen.

y_t =\nu + A_1y_{t−1} + u_t \cdots (2.1.2)

Wenn dieser Generierungsmechanismus ab $ t = 1 $ wiederholt wird

y_1 =\nu + A_1y_0 + u_1 y_2 =\nu+ A_1y_1 + u_2 =\nu+ A_1(\nu+ A_1y_0 + u_1)+ u_2 \ \ \ \ =(IK + A_1)\nu + A_1^2y_0 + A_1u_1 + u_2 \ \ \vdots \ \ \ \ \ \ (2.1.3) y_t =(I_K + A_1 +\cdots+ A_1^{t-1})\nu+ A^t_1y_0 + \sum_{t=0}^{t−1} A_1^iu_{t−i} \vdots

Daher wird der Vektor $ y_1, \ cdots, y_t $ eindeutig durch $ y_0, u_1, \ cdots, u_t $ bestimmt. Die gleichzeitige Verteilung von $ y_1, \ cdots, y_t $ wird durch die gleichzeitige Verteilung von $ y_0, u_1, \ cdots, u_t $ bestimmt.

Manchmal wird angenommen, dass der Prozess zu einem bestimmten Zeitpunkt beginnt, manchmal ist es jedoch bequemer, von einer unendlichen Vergangenheit auszugehen. In Wirklichkeit entspricht (2.1.1) dem. Wenn ja, welcher Prozess stimmt mit dem Mechanismus in (2.1.1) überein? Um dieses Problem zu beheben, wiederholen Sie den VAR (1) -Prozess in (2.1.2). Aus (2.1.3)

y_t =\nu+ A_1y_t−1 + u_t \ \ \=(I_K + A_1 +\cdots+ A_j^1)\nu+ A_1^{j + 1} y_{t−j−1} +\sum_{i=0}^j A_1^i u_{t-i}

Wenn die Koeffizienten aller Eigenwerte von $ A_1 $ kleiner als 1 sind, kann der Prozess von $ A ^ i_1 $, $ i = 0,1, \ cdots $, absolut addiert werden. Daher unendliche Summe

\sum_{i=1}^\infty A=1^j u_{t−i}

Hat einen quadratischen Durchschnitt. Ebenfalls,

(I_K + A_1 +\cdots+ A_1^j)\nu− \rightarrow_{j→\infty}(I_K − A_1)^{−1}\nu

Darüber hinaus konvergiert $ A_1 ^ {j + 1} $ schnell gegen Null als $ j → \ infty $, sodass der Term $ A_1 ^ {j + 1} y_ {t - j - 1} $ im Limit ignoriert wird. Getan werden. Wenn daher die Koeffizienten aller Eigenwerte von $ A_1 $ kleiner als 1 sind, ist $ y_t $ der VAR (1) -Prozess von (2.1.2) und $ y_t $ der genau definierte stochastische Prozess.

y_t = µ +\sum_{t=0}^\infty A_1^i u_{t−i}、t = 0,±1,±2,\cdots, (2.1.4) Dann ist $ µ = (I_K - A_1) ^ {−1} \ nu $.

Die Verteilung und gleichzeitige Verteilung von $ y_t $ wird eindeutig durch die Verteilung des Prozesses von $ u_t $ bestimmt. Der erste und zweite Moment des Prozesses von $ y_t $ gelten für alle $ t $

E(y_t)= \mu \ \ \ \ \ (2.1.5)

Es kann gesehen werden, dass es ist. Und

\Gamma y(h)= E(y_t −\mu)(y_t−h −\mu)^\prime \ \ \ \ \ \ = \lim_{n→\infty}\sum_{i=0}^n \sum_{i = 0}^n A_1^i E(u_{t-i}u_{t-h-j}^\prime)(A_1^j )^\prime \ (2.1.6) \ \ \ \ \ = \lim_{ n = 0}^n A_1^{h + i} \sum_u A_1^i=\sum_{i=0}^\infty A_1^{h+i}\sum_u A^{i\prime}_1

Denn im Fall von $ s \ net $ ist $ E (u_tu_s ^ \ prime) = 0 $ und insgesamt $ t $ $ E (u_t u_t) = \ sum_u $.

WarteschlangeA_1Die Bedingung, dass alle Eigenwerte von kleiner als 1 sind, ist wichtig und VAR(1)Der Prozess heißt stabil. Dieser Zustand ist|z|\le1Gegen

$ det(I_K − A_1z) \ne 0 \ \ \ \ \ (2.1.7)$

Wird sein. Der Prozess $ y_t $ von t = 0, ± 1, ± 2, ... kann auch definiert werden, wenn die Stabilisierungsbedingung (2.1.7) nicht erfüllt ist, aber für alle t ∈ Z definiert ist. Das machen wir hier nicht, weil wir immer von der Stabilität des Prozesses ausgehen.

Abstimmungsprozess, allgemeine probabilistische Trends und Vektorfehlerkorrekturmodell (vereinfachte Teilübersetzung von 6.3 von [1])

Gibt es wirklich ein Gleichgewicht zwischen vielen wirtschaftlichen Variablen wie Haushaltseinkommen und -ausgaben und dem Preis desselben Produkts auf verschiedenen Märkten? Die Zielvariable ist der Vektor $ y_t = (y_ {1t}, ..., y_ {Kt}) ^ \ prime $, und ihre langfristige Gleichgewichtsbeziehung ist $ \ beta y_t = \ beta_1y_ {1t} + ··· · + \ Beta_Ky_ {Kt} = 0) ^ \ prime $. Hier ist $ \ beta = (\ beta_1, ..., \ beta_K) ^ \ prime $. Im Laufe der Zeit kann diese Beziehung nicht genau erfüllt werden. Sei $ z_t $ eine stochastische Variable, die die Abweichung vom Gleichgewicht darstellt, und nehme an, dass $ \ beta y_t = z_t $ gilt. Wenn das Gleichgewicht tatsächlich hergestellt ist, wird angenommen, dass sich die Variablen $ y_t $ miteinander ändern, und $ z_t $ wird als stabil angesehen. Mit dieser Einstellung kann die Variable $ y_t $ jedoch als Gruppe stark wandern. Es kann von einem gemeinsamen probabilistischen Trend getrieben werden. Mit anderen Worten, jede Variable ist eine Summe, und es besteht eine lineare Verbindung konstanter Variablen. Eine Summenvariable mit dieser Eigenschaft wird als Überleitung bezeichnet. Im Allgemeinen sind alle Komponenten des K-dimensionalen $ y_t $ -Prozesses $ I (d) $ unter $ \ beta = (\ beta_1, \ cdots, \ beta_K) ^ \ prime \ ne 0 $, $ z_t = \ beta ^ \ prime Wenn es eine lineare Verbindung von y_t $ gibt und $ z_t $ $ I (d - b) $ ist, dann ist die Variable $ y_t $ die Abstimmung der Ordnung $ (d, b) $. Es heißt und wird durch $ y_t ~ CI (d, b) $ ausgedrückt. Wenn zum Beispiel alle Komponenten von $ y_t $ I (1) sind und $ \ beta y_t $ stationär ist (I (0)), dann ist $ y_t zu CI (1,1) $. Der Vektor $ \ beta $ wird als republikanischer Vektor bezeichnet. Der Prozess, der aus republikanischen Variablen besteht, wird als republikanischer Prozess bezeichnet. Dieser Prozess wurde von Granger (1981) und Engle & Granger (1987) eingeführt.

Um den Begriff zu vereinfachen, verwenden wir eine etwas andere Definition von Republik. Wenn $ \ Delta ^ d y_t $ stabil ist und $ \ Delta ^ {d - 1} y_t $ nicht stabil ist, wird der K-dimensionale $ y_t $ -Prozess die Summe der Ordnung $ d $ genannt und leicht $ y_t ~ I. Schreiben Sie (d) $. Der I (d) -Prozess von $ y_t $ ist eine Summe von Aufträgen unter $ d $, und wenn eine lineare Verbindung $ \ beta y_t $ von $ \ beta \ ne 0 $ besteht, wird dies als Versöhnung bezeichnet. Diese Definition unterscheidet sich von der von Engle & Granger (1987) und schließt Komponenten von $ y_t $ nicht aus, deren Summenreihenfolge kleiner als d ist. Wenn $ y_t $ nur eine I (d) -Komponente hat und alle anderen Komponenten stabil sind (I (0)), dann ist $ \ Delta ^ d y_t $ stabil und $ \ Delta ^ Wenn {d - 1} y_t $ nicht stabil ist, wird der Vektor $ y_t $ gemäß der Definition zu I (d). In einem solchen Fall ist die Beziehung $ \ beta y_t $, die nur die stationären Komponenten enthält, eine republikanische Beziehung in unserer Terminologie. Offensichtlich entspricht dieser Aspekt unserer Definition nicht der ursprünglichen Idee, eine spezielle Beziehung zwischen Summenvariablen mit einem gemeinsamen stochastischen Trend als Republik zu betrachten, sondern unterscheidet Summen von Variablen unterschiedlicher Ordnung. Die Definition ist weiterhin gültig, nicht weil sie nur den Begriff vereinfacht. Die Leser sollten eine Grundidee des Republikanismus haben, wenn es darum geht, bestimmte Beziehungen zu interpretieren.

Offensichtlich ist der republikanische Vektor nicht eindeutig. Das Multiplizieren mit einer Nicht-Null-Konstante ergibt einen republikanischen Vektor. Es kann auch verschiedene linear unabhängige republikanische Vektoren geben. Wenn Ihr System beispielsweise vier Variablen enthält, nehmen Sie an, dass sich die ersten beiden im langfristigen Gleichgewicht befinden und die letzten beiden ähnlich sind. Daher kann es einen republikanischen Vektor mit Nullen an den letzten beiden Positionen und Nullen an den ersten beiden Positionen geben. Darüber hinaus können alle vier Variablen eine republikanische Beziehung haben.

Vor der Einführung des Konzepts der Republikanität wurden sehr enge Fehlerkorrekturmodelle im Bereich der metrischen Ökonomie diskutiert. Im Allgemeinen werden Änderungen im Variablenkorrekturmodell als Abweichungen von der Gleichgewichtsbeziehung angesehen. Angenommen, $ y_ {1t} $ repräsentiert den Preis eines Artikels in einem Markt und $ y_ {2t} $ entspricht dem Preis desselben Artikels in einem anderen Markt. Unter der Annahme, dass die Gleichgewichtsbeziehung zwischen den beiden Variablen durch $ y_ {1t} = \ beta_1 y_ {2t} $ gegeben ist, hängt die Änderung von $ y_ {1t} $ von der Abweichung von diesem Gleichgewicht der Periode t - 1 ab. Machen.

\Delta y_{1t} =\alpha_1(y_{1,t−1} −\beta_1y_{2,t−1})+ u_{1t}

Eine ähnliche Beziehung kann für $ y_ {2t} $ gelten \Delta y_{2t} =\alpha_2(y_{1t−1} −\beta_1y_{2,t−1})+ u_{2t}

In einem allgemeineren Fehlerkorrekturmodell kann $ \ Delta y_ {it} $ auch von vorherigen Änderungen in beiden Variablen abhängen, zum Beispiel: \Delta y_{1t} =\alpha_1(y_{1,t−1} −\beta_1y_{2,t−1})+ \gamma_{11,1}\Delta y_{1,t−1} + \gamma_{12,1}\Delta y_{2,t−1} + u_{1t}\Delta y_{2t} =\alpha_2(y_{1,t−1} −\beta_1y_{2,t−1})+ \gamma_{21,1}\Delta y_{1t}−1 + \gamma_{22,1}\Delta y_{2,t−1} + u_{2t} / / (6.3.1) Es kann auch eine Verzögerung vor $ \ Delta y_ {it} $ enthalten.

Um die enge Beziehung zwischen dem Fehlerkorrekturmodell und dem Konzept der Republikanität zu erkennen, nehmen wir an, dass sowohl $ y_ {1t} $ als auch $ y_ {2t} $ I (1) -Variablen sind. In diesem Fall sind alle Terme in (6.3.1), einschließlich $ \ Delta y_ {it} $, stabil. Außerdem sind $ u_ {1t} $ und $ u_ {2t} $ Fehler mit weißem Rauschen, die ebenfalls stabil sind. Instabile Begriffe sind nicht gleichbedeutend mit stabilen Prozessen \alpha_i(y_{1,t−1} −\beta_1y_{2,t−1})= \Delta y_{it} − \gamma_{i1,1}\Delta y_{1,t−1} − \gamma_{i2,1}\Delta y_{2,t−1} − u_{it} Muss auch stabil sein. Wenn also $ \ alpha_1 = 0 $ oder $ \ alpha_2 = 0 $ ist, ist $ y_ {1t} - \ beta_1 y_ {2t} $ stabil und hat eine republikanische Beziehung.

Grundkenntnisse 2 (geschrieben unter Bezugnahme auf [2] 2.1)

Zielloser Spaziergang X_t=X_{t-1}+\varepsilon_t Kann beschrieben werden als. Wenn Sie dies umschreiben X_t=X_{t-1}+\varepsilon_t X_{t-1}=X_{t-2}+\varepsilon_{t-1} X_{t-2}=X_{t-2}+\varepsilon_{t-2} \vdots X_{2}=X_{1}+\varepsilon_{2} X_{1}=X_{0}+\varepsilon_{1} Kann geschrieben werden. Wenn Sie dies addieren, wird das X diagonal darunter versetzt, also am Ende X_t=X_0+\sum \varepsilon_t Kann beschrieben werden als. Random Walk ist die Summe der Zufallszahlen.

Machen Sie dasselbe für AR (1). Multiplizieren Sie jedoch jede Zeile mit $ C_ {t-j} (= \ Pi ^ j $), so dass das diagonal untere X um die linke Seite versetzt ist. X_t=\Pi X_{t-1}+\varepsilon_t Kann beschrieben werden als. Wenn Sie dies umschreiben X_t=\Pi X_{t-1}+\varepsilon_t X_{t-1}=\Pi X_{t-2}+\varepsilon_{t-1} X_{t-2}=\Pi X_{t-2}+\varepsilon_{t-2} \vdots X_{2}=\Pi X_{1}+\varepsilon_{2} X_{1}=\Pi X_{0}+\varepsilon_{1} Kann geschrieben werden. Wenn Sie dies addieren, wird das X diagonal darunter versetzt, also am Ende X_t=C_{t-1} \Pi X_0 +\sum_{i=0}^{t-1} C_i \varepsilon_{t-j} Kann beschrieben werden als. Es ist wieder die Summe der Zufallszahlen, X_t=\Pi^t X_0 +\sum_{i=0}^{t-1} \Pi^t \varepsilon_{t-j} Also wenn $ \ Pi <1 $ X_t^*=\sum_{i=0}^{\infty}\Pi^i\varepsilon_t Konvergiert zu.

Grundkenntnisse 3 (geschrieben unter Bezugnahme auf [2] 3.1)

Wenn $ X_t $ I (1) ist und A eine pxp-Matrix mit vollem Rang ist, dann ist $ AX_t $ auch $ I (0) $. X_t=X_0+\sum Y_i Und. $ Y_t = \ sum_ {i = 0} ^ \ infty C_i \ varepsilon_ {ti} $ als $ I (0) $ $ \ sum_ {i = 0} ^ \ infty C_i \ ne 0 $, $ X_t $ Ist nicht stationär. $ C_z = \ sum_ {i = 0} ^ \ infty C_i z ^ i $ als $ C ^ * (z) $

C^{\*}=\sum_{i=0}^\infty \frac{C(z)-C(1)}{1-z}=\sum_{i=0}^\infty C_i^*z^i Ist definiert als. Deshalb, X_t=X_0+\sum_{i=1}^t Y_i=X_0+C\sum_{i=1}^t\varepsilon_i+Y_t^\*-Y_0^\* Dieser Prozess ist nicht stationär, da $ C \ ne 0 $ und $ Y_t = \ Delta X_t $. Multiplizieren Sie beide Seiten mit $ \ beta $

\beta^\`X_t=\beta^\`X_0 +\beta^\`C\sum_{i=1}^t\varepsilon_t+\beta^\` Y_t^\*- \beta^\`Y_0^\* Damit $ \ beta ^ \ X_t $ stabil ist, ist $ \ beta ^ \ C = 0 $ \beta^\`X_t=\beta^\`Y_t^*+\beta^\`X_0-\beta^\`Y_0^\* Es sollte $ \ beta ^ \ X_0 = \ beta ^ \ Y_0 ^ \ * $ sein. Dann \beta^\`X_t=\beta^\`Y_t^\* Angenommen, $ X_t $ ist $ I (1) $, wenn $ \ beta ^ \ `X_t $ stationär ist, dann ist $ X_t $ eine Republik.

Induktionssystem des Fehlerkorrekturmodells \Delta X_t= \alpha \beta^\` X_{t-1}+\varepsilon_t Sei $ X_0 $ der Anfangswert und $ \ alpha $ und $ \ beta $ die p x r Matrix. $ \ beta ^ \ X_t = E (\ beta ^ \ X_t) = c $ definiert die zugrunde liegende Wirtschaft. Der Anpassungskoeffizient $ \ alpha $ versucht, den unsymmetrischen Fehler $ \ beta ^ \ `X_t-c $ in den richtigen Zustand zurückzusetzen.

Grundkenntnisse 4 (geschrieben unter Bezugnahme auf [2] 4.1)

X_t=\Pi_1 X_{t-1}+\varepsilon_t Subtrahieren Sie $ X_ {t-1} $ von beiden Seiten von X_t-X_{t-1}=\Pi_1 X_{t-1} - X_{t-1}+\varepsilon_t Wird sein. Um dies zusammenzufassen \Delta X_t=(\Pi_1-I) X_{t-1} +\varepsilon_t \Delta X_t=\Pi_1 X_{t-1} +\varepsilon_t Es wird zur Form des Fehlerkorrekturmodells. Seien Sie vorsichtig beim Umgang mit $ \ Pi $.

Dies ist leichter zu verstehen, wenn die Verzögerung zweitrangig ist. \Delta X_t=\Pi_1 X_{t-1} +\sum_{i=1}^{k-1} \Gamma_i \Delta X_{t-1}+\varepsilon_t Wenn die Verzögerung primär ist, wird der $ \ Gamma $ -Teil gelöscht.

Ein Beispiel für das intuitive Verstehen der Bedeutung von Republikanern

Beispiel 3.1 Johansen, S. 1995. Wahrscheinlichkeitsbasierte Inferenz in autoregressiven Modellen mit integriertem Vektor S.37

#Initialisieren
%matplotlib inline
import matplotlib.pyplot as plt
from statsmodels.tsa.api import VECM
import statsmodels.api as sm
from statsmodels.tsa.base.datetools import dates_from_str
import pandas as pd
import numpy as np
from numpy import linalg as LA
from statsmodels.tsa.vector_ar.vecm import coint_johansen
from statsmodels.tsa.vector_ar.vecm import select_coint_rank
from statsmodels.tsa.vector_ar.vecm import select_order

Zweidimensionaler Prozess $ X_t $ X_{1t}=\sum_{i=1}t \epsilon_{1i}+\epsilon_{2t}, X_{2t}=\sum_{i=1}t \epsilon_{1i}+\epsilon_{3t}, Wenn definiert als, sind dies Republikaner unter dem Versöhnungsvektor von $ \ beta ^ \ = (a, -1) $. Die lineare Beziehung $ \ beta ^ \ X_t = aX_ {1t} -X_ {2t} = a \ epsilon_ {2t} - \ epsilon_ {3t} $ ist stationär. Überprüfen wir sie also.

Oxford University Press.
n=10000
a=0.3
e1=np.random.normal(0,1,n)#.reshape([n,1])
e2=np.random.normal(0,1,n)#.reshape([n,1])
e3=np.random.normal(0,1,n)#.reshape([n,1])
X1=np.cumsum(e1)+e2
X2=a*np.cumsum(e1)+e3
X=np.concatenate([X1.reshape([n,1]),X2.reshape([n,1])],1)
plt.plot(X)

image.png

Aus dem Diagramm ist ersichtlich, dass beide Summationsprozesse sind, sich jedoch gleich verhalten.

betaX=a*X1-X2
plt.plot(betaX)

image.png Die Stabilität kann bestätigt werden. Lassen Sie uns einige weitere Merkmale untersuchen.

from statsmodels.tsa.vector_ar.vecm import coint_johansen
jres = coint_johansen(X, det_order=0, k_ar_diff=2)
print('critical value of max eigen value statistic',jres.cvm)
print('maximum eigenvalue statistic',jres.lr2)
print('critical value of trace statistic',jres.cvt)
print('Trace statistic',jres.lr1)
print('eigen values of VECM coefficient matrix',jres.eig)
print('eigen vectors of VECM coefficient matrix',jres.evec)
print('Order of eigenvalues',jres.ind)
print('meth',jres.meth)
critical value (90%, 95%, 99%) of max eigen value statistic 
[[12.2971 14.2639 18.52  ]
 [ 2.7055  3.8415  6.6349]]
maximum eigenvalue statistic 
[2855.97930446    4.11317178]
critical value of trace statistic 
[[13.4294 15.4943 19.9349]
 [ 2.7055  3.8415  6.6349]]
Trace statistic 
[2860.09247624    4.11317178]
eigen values of VECM coefficient matrix 
[0.24849967 0.00041136]
eigen vectors of VECM coefficient matrix 
[[ 0.50076827 -0.03993806]
 [-1.67011922 -0.01128004]]
Order of eigenvalues [0 1]
meth johansen

Als nächstes wollen wir uns über den Rang informieren.

rres = select_coint_rank(X, det_order=-1, k_ar_diff=2)
rres.summary()
Johansen cointegration test using trace test statistic with 5% significance level
r_0	r_1	test statistic	critical value
0	2	2857.	12.32
1	2	1.584	4.130

Als nächstes untersuchen wir die Verzögerung.

rres = select_order(X,maxlags=10)
rres.summary()
VECM Order Selection (* highlights the minimums)
AIC	BIC	FPE	HQIC
0	1.079	1.083	2.942	1.081
1	0.9691	0.9764	2.636	0.9716
2	0.9541	0.9642*	2.596	0.9575
3	0.9528*	0.9658	2.593*	0.9572*
4	0.9528	0.9687	2.593	0.9582
5	0.9535	0.9723	2.595	0.9598
6	0.9539	0.9755	2.596	0.9612
7	0.9546	0.9791	2.598	0.9629
8	0.9550	0.9825	2.599	0.9643
9	0.9556	0.9860	2.600	0.9659
10	0.9556	0.9888	2.600	0.9668

Sehen wir uns das Ergebnis mit dem VECM-Modell an.

model=VECM(X,k_ar_diff=0,deterministic='na')
res=model.fit()
print(res.summary())
                 Loading coefficients (alpha) for equation y1                 
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1           -0.0805      0.005    -16.217      0.000      -0.090      -0.071
                 Loading coefficients (alpha) for equation y2                 
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1            0.2708      0.003     86.592      0.000       0.265       0.277
          Cointegration relations for loading-coefficients-column 1           
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
beta.1         1.0000          0          0      0.000       1.000       1.000
beta.2        -3.3342      0.004   -850.887      0.000      -3.342      -3.327
==============================================================================

Nächster, Fügen Sie $ X_ {3t} = \ epsilon_ {4t} $ hinzu. In diesem Vektorprozess gibt es zwei republikanische Vektoren (a, -1,0) und (0,0,1).

n=10000
a=0.3
e1=np.random.normal(0,1,n)#.reshape([n,1])
e2=np.random.normal(0,1,n)#.reshape([n,1])
e3=np.random.normal(0,1,n)#.reshape([n,1])
e4=np.random.normal(0,1,n)#.reshape([n,1])
X1=np.cumsum(e1)+e2
X2=a*np.cumsum(e1)+e3
X3=e4
X=np.concatenate([X1.reshape([n,1]),X2.reshape([n,1]),X3.reshape([n,1])],1)
model=VECM(X,k_ar_diff=0,deterministic='na')
res=model.fit()
print(res.summary())
 Loading coefficients (alpha) for equation y1                 
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1           -0.0319      0.003    -11.006      0.000      -0.038      -0.026
                 Loading coefficients (alpha) for equation y2                 
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1            0.0962      0.002     42.596      0.000       0.092       0.101
                 Loading coefficients (alpha) for equation y3                 
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1           -0.1374      0.002    -71.039      0.000      -0.141      -0.134
          Cointegration relations for loading-coefficients-column 1           
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
beta.1         1.0000          0          0      0.000       1.000       1.000
beta.2        -3.3418      0.008   -445.090      0.000      -3.357      -3.327
beta.3         4.7902      0.059     81.021      0.000       4.674       4.906
==============================================================================

Beispiel 3.2 Johansen, S. 1995. Wahrscheinlichkeitsbasierte Inferenz in autoregressiven Modellen mit integriertem Vektor S.37

Als nächstes schauen wir uns die Summe zweiter Ordnung I (2) an. image.png

Was X1, X2 und X3 betrifft, bin ich mir nicht sicher, ob es wirklich stabil sein wird, also werde ich tatsächlich eine Zufallszahl machen. A, b und c wurden so angepasst, dass das Diagramm leicht zu sehen war.

n=1000
a=0.3
e1=np.random.normal(0,1,n)#.reshape([n,1])
e2=np.random.normal(0,1,n)#.reshape([n,1])
e3=np.random.normal(0,1,n)#.reshape([n,1])
e4=np.random.normal(0,1,n)#.reshape([n,1])
cs_e1=np.cumsum(e1)
cs_cs_e1=np.cumsum(cs_e1)
cs_e2=np.cumsum(e2)
X1=cs_cs_e1+cs_e2
a=0.5
b=2
X2=a*cs_cs_e1+b*cs_e2+e3
c=100
X3=c*cs_e2+e4
plt.plot(X1)
plt.plot(X2)
plt.plot(X3)

image.png

Als nächstes nehmen wir den tatsächlichen Unterschied und überprüfen die Stabilität.

plt.plot(np.diff(X1))
plt.plot(np.diff(np.diff(X1)))

image.png Ich verstehe, dass der Unterschied im ersten Stock nicht stabil ist, aber im zweiten Stock ist er stabil.

plt.plot(np.diff(X2))
plt.plot(np.diff(np.diff(X2)))

image.png Das Ergebnis ist hier das gleiche.

plt.plot(np.diff(X3))
plt.plot(np.diff(np.diff(X3)))

image.png

Vector Error Correction Model (VECM) Handbuch zu Statistikmodellen

Das Vektorfehlerkorrekturmodell wird verwendet, um die Beziehung zwischen dem permanenten probabilistischen Trend (Einheitswurzel) der Zielvariablen und ihrer kurzfristigen Divergenz zu untersuchen. VECM wird verwendet, um differenzielle Reihen von Vektoren zu modellieren und diese Modelle zu identifizieren und zu schätzen, vorausgesetzt, es gibt mehrere probabilistische Trends. VECM ($ k_ {ar} -1) $ ist

\Delta y_t= \Pi y_{t−1} + \Gamma_1\Delta y_{t−1} +\dots + \Gamma_{k_{ar}-1}\Delta y_{t−k_{ar} + 1} + u_t

Nimmt die Form von an. Außerdem ist $ \ Pi = \ alpha \ beta ^ \ $. Da diese $ \ alpha $ und $ \ beta ^ \ $ nicht mit der Methode der kleinsten Quadrate geschätzt werden können, können der Eigenwert und der Eigenvektor von $ \ Pi $ durch maximale Schätzung des Fehlerkorrekturmodells und $ \ Pi durch den Abstimmungstest erhalten werden. Bestimmen Sie den Rang von $ und finden Sie den Eigenvektor, der dem Eigenwert entspricht. Siehe Kapitel 7 von [1]. Es ist auch möglich, deterministische Terme wie konstante Terme und Trendterme in $ \ Pi y_ {t - 1} $ aufzunehmen. Siehe [3].

VECM ($ k_ {ar} -1 $) mit einem deterministischen Term image.png Wird sein. $ D_ {t-1} ^ \ infty $ gibt an, dass es innerhalb des republikanischen Vektors einen deterministischen Term gibt (oder den republikanischen Vektor einschränkt). $ \ eta $ ist die relevante Schätzung. Verwenden Sie das Argument exog_coint, um einen deterministischen Begriff im republikanischen Vektor zu übergeben. In zwei Sonderfällen, konstanten Begriffen und linearen Trends, gibt es einen einfacheren Weg als die Verwendung dieser Begriffe. Sie können jedes von "ci" und "li" an das deterministische Argument übergeben. Übergeben Sie daher für den konstanten Term im republikanischen Vektor "ci" für das Argument deterministic oder np.ones (len (data)) an exog_coint. In diesem Fall ist $ D_ {t-1} ^ \ infty = 1 $ für alle $ t $.

Es ist auch möglich, deterministische Begriffe außerhalb des republikanischen Vektors zu verwenden. Diese werden in der obigen Gleichung in $ D_t $ zusammen mit Schätzungen für die Matrix $ C $ definiert. Diese Begriffe werden angegeben, indem sie an das Argument exog übergeben werden. Für konstante Terme und / oder lineare Trends kann stattdessen das Argument deterministisch verwendet werden. Übergeben Sie "co" für konstante Terme und "lo" für lineare Trends. "o" steht für die Außenseite. Die folgende Tabelle zeigt die fünf in [2] betrachteten Fälle. Die letzte Spalte zeigt die Zeichenfolge, die an das deterministische Argument jedes dieser Fälle übergeben werden soll.

endog array-like(nobs_tot x neqs) Zweidimensionale endogene Antwortvariable.

exog: ndarray (nobs_tot x neqs) oder None Ein deterministischer Begriff außerhalb des republikanischen Vektors.

exog_coint: ndarray (nobs_tot x neqs) oder None Ein deterministischer Begriff im republikanischen Vektor.

Datumsarray-ähnliche Datums- und Uhrzeitangabe, optional. Weitere Informationen finden Sie unter statsmodels.tsa.base.tsa_model.TimeSeriesModel.

freqstr, optional Weitere Informationen finden Sie unter statsmodels.tsa.base.tsa_model.TimeSeriesModel.

fehlende str, Option, Weitere Informationen finden Sie unter statsmodels.base.model.Model.

k_ar_diff int Die Reihenfolge der Differenz im Modell. Gleich kar-1 in der obigen Gleichung.

coint_rank int Der republikanische Rang ist gleich dem Rang Π der Matrix und der Anzahl der Spalten von α und β.

deterministic str {"nc"、 "co"、 "ci"、 "lo"、 "li"} "nc" - kein deterministischer Begriff "co" -Konstanten außerhalb des republikanischen Vektors "ci" -Konstanten im republikanischen Vektor "lo" -Linearer Trend außerhalb des republikanischen Vektors "li" -Linearer Trend im republikanischen Vektor

Kann kombiniert werden (zB "cili" oder "colo" für lineare Trends mit konstanten Termen). Wenn Sie einen konstanten Begriff verwenden, müssen Sie wählen, ob Sie ihn auf eine republikanische Beziehung beschränken möchten (dh "ci") oder ihn unbegrenzt lassen möchten (dh "co"). Verwenden Sie nicht sowohl "ci" als auch "co". Gleiches gilt für "li" und "lo" bei Verwendung linearer Terme. Siehe Hinweis für Details.

Jahreszeiten int, Standard: 0 Die Anzahl der Perioden im saisonalen Zyklus. 0 bedeutet, dass es keine Saison gibt.

first_season int, Standard: 0 Die Jahreszeit der ersten Beobachtung.

steps int Prognosezeitraum.

alpha float, 0 < alpha < 1 or None Wenn Keine, wird nur die Punktvorhersage berechnet. Im Fall von float wird auch das Vertrauensintervall berechnet. In diesem Fall repräsentiert das Argument die Vertrauensstufe.

exog ndarray (steps x self.exog.shape[1]) Wenn self.exog nicht None ist, übergeben Sie Informationen zu zukünftigen Werten von exog von diesem Parameter. Der ndarray kann in der ersten Dimension größer sein. In diesem Fall wird nur die erste Schrittzeile berücksichtigt.

forecast - ndarray (steps x neqs) or three ndarrays

Für die Punktvorhersage: Jede Zeile des zurückgegebenen ndarray repräsentiert eine Vorhersage der neqs-Variablen für einen bestimmten Zeitraum. Die erste Zeile (Index [0]) ist die Vorhersage für die nächste Periode und die letzte Zeile (Index [Schritte-1]) ist die Vorhersage der Schritte-Perioden-Voraus.

References

[1] Lütkepohl, H. 2005. New Introduction to Multiple Time Series Analysis. Springer.

[2] Johansen, S. 1995. Likelihood-Based Inference in Cointegrated * *Vector Autoregressive Models. Oxford University Press.

[3] Johansen, S. and K Jusellus 1990. Likelihood-Based Estimation and Inference on Cointegration with application to the demand for money. 0xford Bullretin of Economics and Statisitics,52,169-210

Vor der Analyse der tatsächlichen Daten

Die effektivste Waffe ist es, künstliche Daten zu generieren und diese Daten zu verwenden, um die Eigenschaften des Modells zu verstehen, bevor die tatsächlichen Daten analysiert werden.

Generieren wir also zwei instationäre Zeitreihen, $ x $ und $ y $, und analysieren sie mit VECM. Zu diesem Zeitpunkt ist deterministisch = 'nc' und K_ar_diff = 0. Dies ist ein Versuch, die Modellvariablen auf nur $ \ alpha $ und $ \ beta $ einzugrenzen. Zu diesem Zeitpunkt wird das Beta durch einfache Regression von $ x $ und $ y $ erhalten, und das Alpha wird unter Verwendung des Fehlers geschätzt. Die Anzahl der Daten beträgt $ n = 10000 $. Genug, um zu konvergieren.

n=10000
y=pd.DataFrame(np.random.normal(0,1,n).reshape([n,1]),columns=['y'])
x=pd.DataFrame(np.random.normal(0,1,n).reshape([n,1]),columns=['x'])
data=pd.concat([y.cumsum(),x.cumsum()],axis=1)
data.columns=['y','x']
model=VECM(data,k_ar_diff=0,deterministic='na')
res=model.fit()
print(res.summary())

xx=sm.add_constant(x.cumsum())
res= sm.OLS(y.cumsum(), xx).fit()
print(res.summary())
 Loading coefficients (alpha) for equation y                  
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1           -0.0005      0.000     -1.671      0.095      -0.001    8.89e-05
                 Loading coefficients (alpha) for equation x                  
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1        -3.723e-05      0.000     -0.121      0.904      -0.001       0.001
          Cointegration relations for loading-coefficients-column 1           
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
beta.1         1.0000          0          0      0.000       1.000       1.000
beta.2        -0.2731      0.382     -0.716      0.474      -1.021       0.475
==============================================================================
                            OLS Regression Results                            
==============================================================================
Dep. Variable:                      y   R-squared:                       0.126
Model:                            OLS   Adj. R-squared:                  0.126
Method:                 Least Squares   F-statistic:                     1443.
Date:                Sun, 01 Mar 2020   Prob (F-statistic):          4.92e-295
Time:                        02:27:15   Log-Likelihood:                -43187.
No. Observations:               10000   AIC:                         8.638e+04
Df Residuals:                    9998   BIC:                         8.639e+04
Df Model:                           1                                         
Covariance Type:            nonrobust                                         
==============================================================================
                 coef    std err          t      P>|t|      [0.025      0.975]
------------------------------------------------------------------------------
const        -29.8591      0.210   -142.406      0.000     -30.270     -29.448
x             -0.1572      0.004    -37.984      0.000      -0.165      -0.149
==============================================================================
Omnibus:                      414.693   Durbin-Watson:                   0.003
Prob(Omnibus):                  0.000   Jarque-Bera (JB):              401.515
Skew:                          -0.447   Prob(JB):                     6.49e-88
Kurtosis:                       2.593   Cond. No.                         58.5
==============================================================================
u=res.resid
#x1=pd.concat([x,u],axis=1)
#x1=sm.add_constant(x1)

res= sm.OLS(y, u).fit()
print(res.summary())
 OLS Regression Results                                
=======================================================================================
Dep. Variable:                      y   R-squared (uncentered):                   0.000
Model:                            OLS   Adj. R-squared (uncentered):             -0.000
Method:                 Least Squares   F-statistic:                             0.2729
Date:                Sun, 01 Mar 2020   Prob (F-statistic):                       0.601
Time:                        02:57:55   Log-Likelihood:                         -14187.
No. Observations:               10000   AIC:                                  2.838e+04
Df Residuals:                    9999   BIC:                                  2.838e+04
Df Model:                           1                                                  
Covariance Type:            nonrobust                                                  
==============================================================================
                 coef    std err          t      P>|t|      [0.025      0.975]
------------------------------------------------------------------------------
x1             0.0001      0.000      0.522      0.601      -0.000       0.001
==============================================================================
Omnibus:                        0.070   Durbin-Watson:                   2.013
Prob(Omnibus):                  0.966   Jarque-Bera (JB):                0.053
Skew:                          -0.002   Prob(JB):                        0.974
Kurtosis:                       3.011   Cond. No.                         1.00
==============================================================================

Wenn Sie dies immer wieder verschieben, sollten Sie in der Lage sein, die Bedeutung und Verwendung des Modells zu erkennen. Vergessen Sie nicht, dass die Daten ein zufälliger Spaziergang sind.

Beispiel: US-Makrodaten

Jahr Zeitraum --1959q1 --2009q3 Viertel: Viertel - 1-4 realgdp: Reale inländische Gesamtproduktion (Bil. Von verketteten USD 2005, saisonbereinigte Jahresrate) realcons: Realer persönlicher Verbrauch (Bil. Von verketteten USD 2005, saisonbereinigte Jahresrate) realinv: Reale private inländische Gesamtinvestitionen (Bil. Von verkettetem USD 2005, saisonbereinigter Jahreszins)

from statsmodels.tsa.api import VECM
import statsmodels.api as sm
from statsmodels.tsa.base.datetools import dates_from_str
import pandas as pd
import numpy as np

mdata = sm.datasets.macrodata.load_pandas().data 
dates = mdata[['year', 'quarter']].astype(int).astype(str) 
quarterly = dates["year"] + "Q" + dates["quarter"] 

quarterly = dates_from_str(quarterly) 
mdata = mdata[['realgdp','realcons','realinv']] 
mdata.index = pd.DatetimeIndex(quarterly) 
data = np.log(mdata).diff().dropna() 

model = VECM(data)

results = model.fit() 
print(results.summary())
Det. terms outside the coint. relation & lagged endog. parameters for equation realgdp
===============================================================================
                  coef    std err          z      P>|z|      [0.025      0.975]
-------------------------------------------------------------------------------
L1.realgdp     -0.0101      0.147     -0.068      0.945      -0.298       0.278
L1.realcons    -0.4094      0.133     -3.081      0.002      -0.670      -0.149
L1.realinv      0.0039      0.020      0.197      0.843      -0.035       0.043
Det. terms outside the coint. relation & lagged endog. parameters for equation realcons
===============================================================================
                  coef    std err          z      P>|z|      [0.025      0.975]
-------------------------------------------------------------------------------
L1.realgdp      0.0039      0.140      0.028      0.978      -0.270       0.277
L1.realcons    -0.4813      0.126     -3.818      0.000      -0.728      -0.234
L1.realinv     -0.0083      0.019     -0.443      0.658      -0.045       0.028
Det. terms outside the coint. relation & lagged endog. parameters for equation realinv
===============================================================================
                  coef    std err          z      P>|z|      [0.025      0.975]
-------------------------------------------------------------------------------
L1.realgdp      2.3752      0.825      2.879      0.004       0.758       3.992
L1.realcons    -1.4317      0.745     -1.922      0.055      -2.892       0.028
L1.realinv     -0.3738      0.110     -3.383      0.001      -0.590      -0.157
              Loading coefficients (alpha) for equation realgdp               
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1           -1.2524      0.141     -8.875      0.000      -1.529      -0.976
              Loading coefficients (alpha) for equation realcons              
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1            0.0673      0.134      0.503      0.615      -0.195       0.330
              Loading coefficients (alpha) for equation realinv               
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1           -7.3749      0.791     -9.322      0.000      -8.926      -5.824
          Cointegration relations for loading-coefficients-column 1           
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
beta.1         1.0000          0          0      0.000       1.000       1.000
beta.2        -0.9514      0.037    -25.704      0.000      -1.024      -0.879
beta.3        -0.0204      0.010     -1.967      0.049      -0.041   -6.88e-05
==============================================================================

Wechselkursanalyse

import matplotlib.pyplot as plt
start="1949/5/16"
fx = web.DataReader("DEXJPUS","fred",start)# usdjpy
rf = web.DataReader("USD12MD156N", 'fred',start)
rd = web.DataReader("JPY12MD156N", 'fred',start)
data=pd.concat([fx,rf,rd],axis=1).ffill().dropna()
data.tail()
	DEXJPUS	USD12MD156N	JPY12MD156N
DATE			
2019-12-02	109.09	1.96250	0.10283
2019-12-03	108.53	1.93663	0.10367
2019-12-04	108.87	1.91700	0.10567
2019-12-05	108.69	1.92263	0.09833
2019-12-06	108.66	1.92313	0.10833
model = VECM(data)

results = model.fit() 
print(results.summary())
Det. terms outside the coint. relation & lagged endog. parameters for equation DEXJPUS
==================================================================================
                     coef    std err          z      P>|z|      [0.025      0.975]
----------------------------------------------------------------------------------
L1.DEXJPUS         0.0179      0.011      1.681      0.093      -0.003       0.039
L1.USD12MD156N     0.2679      0.155      1.729      0.084      -0.036       0.572
L1.JPY12MD156N    -0.1119      0.272     -0.412      0.681      -0.645       0.421
Det. terms outside the coint. relation & lagged endog. parameters for equation USD12MD156N
==================================================================================
                     coef    std err          z      P>|z|      [0.025      0.975]
----------------------------------------------------------------------------------
L1.DEXJPUS         0.0042      0.001      5.762      0.000       0.003       0.006
L1.USD12MD156N     0.0529      0.011      4.931      0.000       0.032       0.074
L1.JPY12MD156N     0.0111      0.019      0.590      0.555      -0.026       0.048
Det. terms outside the coint. relation & lagged endog. parameters for equation JPY12MD156N
==================================================================================
                     coef    std err          z      P>|z|      [0.025      0.975]
----------------------------------------------------------------------------------
L1.DEXJPUS         0.0041      0.000      9.923      0.000       0.003       0.005
L1.USD12MD156N     0.0337      0.006      5.562      0.000       0.022       0.046
L1.JPY12MD156N    -0.0922      0.011     -8.665      0.000      -0.113      -0.071
              Loading coefficients (alpha) for equation DEXJPUS               
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1           -0.0002   7.46e-05     -3.277      0.001      -0.000   -9.82e-05
            Loading coefficients (alpha) for equation USD12MD156N             
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1        -8.487e-06   5.16e-06     -1.645      0.100   -1.86e-05    1.63e-06
            Loading coefficients (alpha) for equation JPY12MD156N             
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1        -1.177e-05   2.92e-06     -4.034      0.000   -1.75e-05   -6.05e-06
          Cointegration relations for loading-coefficients-column 1           
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
beta.1         1.0000          0          0      0.000       1.000       1.000
beta.2       -34.4981      7.117     -4.847      0.000     -48.447     -20.549
beta.3        52.7028     12.677      4.157      0.000      27.857      77.549
==============================================================================

Wechselkurs, 12-Monats-LIBOR und 250 Datenprognose

from pandas.plotting import register_matplotlib_converters
register_matplotlib_converters()
results.plot_forecast(250)

image.png

Fehler bei der Vorhersage des Wechselkurses

plt.hist(results.resid[:,0])

image.png

Aktienkursanalyse

n225 = web.DataReader("NIKKEI225", 'fred',start)
sp500 = web.DataReader("SP500", 'fred',start)
data=pd.concat([fx,n225,sp500],axis=1).ffill().dropna()
data.tail()
DEXJPUS	NIKKEI225	SP500
DATE			
2019-12-09	108.66	23430.70	3135.96
2019-12-10	108.66	23410.19	3132.52
2019-12-11	108.66	23391.86	3141.63
2019-12-12	108.66	23424.81	3168.57
2019-12-13	108.66	24023.10	3168.80
model = VECM(data)

results = model.fit() 
print(results.summary())
Det. terms outside the coint. relation & lagged endog. parameters for equation DEXJPUS
================================================================================
                   coef    std err          z      P>|z|      [0.025      0.975]
--------------------------------------------------------------------------------
L1.DEXJPUS      -0.0278      0.021     -1.308      0.191      -0.069       0.014
L1.NIKKEI225     0.0001   6.14e-05      2.016      0.044    3.45e-06       0.000
L1.SP500         0.0019      0.001      2.823      0.005       0.001       0.003
Det. terms outside the coint. relation & lagged endog. parameters for equation NIKKEI225
================================================================================
                   coef    std err          z      P>|z|      [0.025      0.975]
--------------------------------------------------------------------------------
L1.DEXJPUS      63.7228      6.161     10.342      0.000      51.647      75.799
L1.NIKKEI225    -0.1888      0.018    -10.592      0.000      -0.224      -0.154
L1.SP500         5.1709      0.200     25.879      0.000       4.779       5.562
Det. terms outside the coint. relation & lagged endog. parameters for equation SP500
================================================================================
                   coef    std err          z      P>|z|      [0.025      0.975]
--------------------------------------------------------------------------------
L1.DEXJPUS      -0.5797      0.631     -0.919      0.358      -1.816       0.656
L1.NIKKEI225     0.0020      0.002      1.097      0.273      -0.002       0.006
L1.SP500        -0.0170      0.020     -0.830      0.406      -0.057       0.023
              Loading coefficients (alpha) for equation DEXJPUS               
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1            0.0003      0.000      1.906      0.057    -8.9e-06       0.001
             Loading coefficients (alpha) for equation NIKKEI225              
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1            0.1447      0.048      3.023      0.003       0.051       0.238
               Loading coefficients (alpha) for equation SP500                
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1            0.0109      0.005      2.231      0.026       0.001       0.021
          Cointegration relations for loading-coefficients-column 1           
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
beta.1         1.0000          0          0      0.000       1.000       1.000
beta.2        -0.0469      0.014     -3.367      0.001      -0.074      -0.020
beta.3         0.3437      0.113      3.050      0.002       0.123       0.564
==============================================================================
register_matplotlib_converters()
results.plot_forecast(250)

image.png

model = VECM(data.iloc[-500:])

results = model.fit() 
print(results.summary())

register_matplotlib_converters()
results.plot_forecast(250)
Det. terms outside the coint. relation & lagged endog. parameters for equation DEXJPUS
================================================================================
                   coef    std err          z      P>|z|      [0.025      0.975]
--------------------------------------------------------------------------------
L1.DEXJPUS       0.0021      0.048      0.043      0.966      -0.092       0.096
L1.NIKKEI225  6.633e-05   8.34e-05      0.795      0.427   -9.72e-05       0.000
L1.SP500        -0.0004      0.001     -0.499      0.618      -0.002       0.001
Det. terms outside the coint. relation & lagged endog. parameters for equation NIKKEI225
================================================================================
                   coef    std err          z      P>|z|      [0.025      0.975]
--------------------------------------------------------------------------------
L1.DEXJPUS      74.0915     21.467      3.451      0.001      32.017     116.166
L1.NIKKEI225    -0.1603      0.037     -4.298      0.000      -0.233      -0.087
L1.SP500         4.7485      0.332     14.311      0.000       4.098       5.399
Det. terms outside the coint. relation & lagged endog. parameters for equation SP500
================================================================================
                   coef    std err          z      P>|z|      [0.025      0.975]
--------------------------------------------------------------------------------
L1.DEXJPUS      -2.4372      3.102     -0.786      0.432      -8.517       3.642
L1.NIKKEI225    -0.0029      0.005     -0.545      0.586      -0.014       0.008
L1.SP500         0.0160      0.048      0.333      0.739      -0.078       0.110
              Loading coefficients (alpha) for equation DEXJPUS               
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1            0.0004      0.002      0.215      0.830      -0.003       0.004
             Loading coefficients (alpha) for equation NIKKEI225              
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1            2.4929      0.866      2.880      0.004       0.796       4.190
               Loading coefficients (alpha) for equation SP500                
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
ec1            0.1778      0.125      1.421      0.155      -0.067       0.423
          Cointegration relations for loading-coefficients-column 1           
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
beta.1         1.0000          0          0      0.000       1.000       1.000
beta.2        -0.0117      0.003     -4.390      0.000      -0.017      -0.006
beta.3         0.0521      0.021      2.510      0.012       0.011       0.093
==============================================================================

image.png

Referenz: Referenz zu Statistikmodellen error correction model wiki Analyse von Republik-, ECM- und Kausalzusammenhängen im VAR-Modell

Recommended Posts

Einführung in Vector Error Correction Models (VECM) mit Statistikmodellen
Einführung in das Testen statistischer Hypothesen mit Statistikmodellen
Einführung in das Generalized Linear Model (GLM) von Python
Einführung in RDB mit sqlalchemy Ⅰ
Einführung in RDB mit sqlalchemy II
Einführung in das maschinelle Lernen: Funktionsweise des Modells
Einführung in das Auffüllen von Python-Bildern Auffüllen von Bildern mit ImageDataGenerator
[Einführung in Python] Verwenden wir foreach mit Python
[Einführung in Pytorch] Ich habe mit sinGAN ♬ gespielt
[Python] Einfache Einführung in das maschinelle Lernen mit Python (SVM)
Einführung in die künstliche Intelligenz mit Python 1 "Genetic Algorithm-Theory-"
Markov Chain Artificial Brainless mit Python + Janome (1) Einführung in Janome
Einführung in die künstliche Intelligenz mit Python 2 "Genetic Algorithm-Practice-"
[Einführung in StyleGAN2] Unabhängiges Lernen mit 10 Anime-Gesichtern ♬
Einführung in Tornado (1): Python Web Framework mit Tornado gestartet
Einführung in den Formationsflug mit Tello edu (Python)
[Einführung zur Minimierung] Datenanalyse mit SEIR-Modell ♬
Einführung in Python mit Atom (unterwegs)
[Einführung in die Udemy Python3 + -Anwendung] 9. Drucken Sie zunächst mit print