Seite 1 von 1

2-stufige Regression mit 49 Industry Stock Portfolios

BeitragVerfasst: Di 19. Jun 2018, 14:01
von AlexST
Hallo zusammen,

Ich habe Zeitreihen für die Returns von 49 Industry Stock Portfolios. Ich möchte zunächst jede der 49 Zeitreihen gegen die Zeitreihen der 4 Variablen IP, MktRF, HML und SMB regressieren. Anschließend möchte ich die Returns nochmal gegen die im vorigen Schritt generierten Betas regressieren. Daraus entstehen dann weitere Betas, welche ich als λ bezeichne. Schlussendlich möchte ich die λs aggregieren indem ich deren Mittelwert berechne. Ich sollte also am Ende 5 Mittelwerte für λ_const, λ_IP, λ_MktRF, λ_HML and λ_SMB haben.

Folgendes habe ich bereits versucht (Anmerkung: Ich habe hier nur einen Auszug der 49 Portfolio-Variablen verwendet):
Code: Alles auswählen
foreach var of varlist Agric_eret Food_eret Soda_eret {
asreg `var' IP MktRF HML SMB, fmb
}

Nun erhalte ich 49 Regression Tables. Wie kann ich nun mit den oben genannten Schritten fortfahren? Ich könnte das Ergebnis jeder Regression in einem separaten .dta speichern und diese dann mergen. Das scheint allerdings nicht die effizienteste Methode zu sein.

Anbei ein Auszug aus meinen Daten:
Code: Alles auswählen
* Example generated by -dataex-. To install: ssc install dataex
clear
input float(date_adj Agric_eret Food_eret Soda_eret IP) double(MktRF HML SMB)
24  -3.66   -6.8 -100.23   -.8879781 -3.87  4.98  1.86
25   -4.2   -.07 -100.19   -.8879781  1.81   .89 -1.18
26 -13.01   1.58 -100.19   -.8879781  -.68    -1   .23
27  -1.98  -4.69 -100.21   -.8879781 -6.59   .48  -.99
28 -11.47 -11.24 -100.23   -.8879781 -8.65  2.32 -3.02
29 -10.68  -8.68 -100.19   -.8879781 -8.47  2.79  -.76
30   7.95   6.89 -100.26   -.8879781  6.28 -3.62  1.61
31   -.18   -.19 -100.22   -.8879781  2.13 -1.22  1.25
32  -6.15  -4.88  -100.2   -.8879781 -5.22  1.31 -2.49
33 -13.96  -2.57 -100.24   -.8879781  -.05  1.35 -4.01
34  15.12  11.95 -100.19   -.8879781 10.87  1.05  2.58
35    .55   2.65 -100.22   -.8879781  1.01   .34  -3.8
end
format %tm date_adj


Ich bin für jede Hilfe dankbar.

Viele Grüße,
Alex

Re: 2-stufige Regression mit 49 Industry Stock Portfolios

BeitragVerfasst: Di 19. Jun 2018, 16:03
von Staxa
Zu dem Thema kenne ich mich überhaupt nicht aus, aber es sollte doch einige Beispiele mit Syntax online geben. Ich habe hier das gefunden:
https://www.sas.upenn.edu/~fdiebold/Tea ... slides.pdf
https://www.stata.com/features/time-series/

Re: 2-stufige Regression mit 49 Industry Stock Portfolios

BeitragVerfasst: Di 19. Jun 2018, 16:14
von AlexST
Danke für die Links. Was ich versuche nennt sich Fama-MacBeth Regression. Die Schritte sehen dabei folgendermaßen aus:

1. Run N time-series regressions.
2. Perform one cross-sectional regression, where the N coefficient estimates from (1) are your explanatory variables.
3. Repeat (1) and (2) going ahead in time to get a time-series of coefficient estimates from (2). Use this time-series to obtain the "average coefficient" and its standard error.

Die Funktion asreg mit der Option fmb führt diese Regression direkt durch. Soweit ich weiß umfasst der Befehl allerdings nur die Schritte 2-3. Ich hätte die Regression also anhand von 2 Funktionen durchgeführt:

Code: Alles auswählen
asreg y x1 x2 x3 x4
asreg b_const b_x1 b_x2 b_x3 b_x4, fmb

Das Hauptproblem von mir ist, dass ich nicht ein y habe sondern 49. Über weitere Vorschläge bin ich sehr dankbar.

Viele Grüße,
Alex

Re: 2-stufige Regression mit 49 Industry Stock Portfolios

BeitragVerfasst: Mi 20. Jun 2018, 08:48
von Staxa
Schau dir doch mal das Ado parmest an:
Code: Alles auswählen
ssc install parmest

Re: 2-stufige Regression mit 49 Industry Stock Portfolios

BeitragVerfasst: Do 21. Jun 2018, 14:10
von AlexST
Dankeschön!