Von einer Formel zur vollständigen Regression
statsmodels.formula.api.ols('excess ~ mkt_rf + smb + hml', data=table).fit() passt eine gewöhnliche Kleinste-Quadrate-Regression aus einer einzeiligen Formel an: Der Name links von ~ wird erklärt, die Namen rechts sind die Regressoren, und ein Achsenabschnitt wird automatisch ergänzt (mit - 1 entfernen). Das Ergebnisobjekt enthält alles: params (die Koeffizienten), bse (ihre Standardfehler), tvalues, pvalues, rsquared, rsquared_adj, aic, resid und summary() für den gedruckten Bericht. Weil jedes davon eine pandas-Series oder eine Zahl ist, ergibt das Nebeneinanderstellen in einem DataFrame eine saubere Tabelle, und res.predict(neue_tabelle) wendet die angepasste Formel auf neue Zeilen mit denselben Spaltennamen an. Die Faktorregression einer Aktie ist der Standardfall: excess ist die Rendite der Aktie über dem risikofreien Zins, mkt_rf die des Marktes, smb der Größenfaktor und hml der Value-Faktor.
Zwei Vergleiche machen die Tabelle nützlich. Das CAPM nutzt nur den Markt, excess ~ mkt_rf; das Drei-Faktoren-Modell fügt smb und hml hinzu. Zusätzliche Regressoren können das R² nie senken, also nimmt man das angepasste R², das AIC oder einen F-Test: ff3.compare_f_test(capm) liefert die F-Statistik, ihren p-Wert und die Zahl zusätzlicher Regressoren, und ein kleiner p-Wert sagt, dass die zwei zusätzlichen Faktoren echte Erklärungskraft liefern. Ein zweiter Routinepunkt ist die Tabelle selbst. Monatsendrenditen stammen vom letzten Schlusskurs jedes Kalendermonats (prices.groupby(prices.index.to_period('M')).last() dann pct_change()) und müssen am selben Monat an die Faktortabelle gejoint werden: Eine Regression auf verschobenen Monaten ist eine Regression auf Rauschen.
- Eine Zeile, eine Regression: Die Formel nennt Zielgröße und Regressoren, das Ergebnisobjekt enthält jede Statistik.
- Geschachtelte Modelle mit dem richtigen Werkzeug vergleichen: R² steigt immer, also angepasstes R², AIC oder F-Test nutzen.
- Zuerst die Monate ausrichten: Eine Monatsendrendite gehört zu den Faktoren desselben Monats.
Lab: Was bewertet wird
- Die monatliche Regressionstabelle15 Pkt.
- Die CAPM-Anpassung10 Pkt.
- Die Drei-Faktoren-Anpassung10 Pkt.
- Eine saubere Koeffiziententabelle15 Pkt.
- Lohnt sich das größere Modell?15 Pkt.
- Eine Prognose10 Pkt.
- Die gesamte Studie25 Pkt.