4 votos

Fama / Los datos del French 3 Factor no dan los resultados esperados

Estoy jugando con los datos de los 3 factores Fama-French y me está resultando difícil obtener resultados que se aproximen a lo que se cubrió en su paper aquí: https://www.bauer.uh.edu/rsusmel/phd/Fama-French_JFE93.pdf

Descargué el último archivo csv de su sitio web en esta url: https://mba.tuck.dartmouth.edu/pages/faculty/ken.french/data_library.html#Research.

Aquí hay algo de código de Python de una regresión que hice en una sola acción. Sé que esto no es lo mismo que un portafolio completo, pero aún así creo que los resultados son incorrectos.

# archivo limpio
fama = pd.read_csv('Downloads/fama_french_factors.csv')

# datos de una sola acción
data = yf.download('AAPL', freq = 'M')['Adj Close']

# obtener rendimientos EOM para Apple
data = data.resample('M', convention = 'end').last()
data = data.pct_change().dropna()
data.index = data.index + MonthEnd(0)

# fusionar los archivos juntos
data = pd.merge_asof(data, fama, left_index = True, right_index = True)

# ejecutar una regresión
y = data['Return']
X = data[['Mkt', 'SMB', 'HML']]
X = sm.add_constant(X)

# ajustar modelo con statsmodels
mod = sm.OLS(y, X)
res = mod.fit()

print(res.summary())

Cuando ejecuto esto, la regresión da un valor de R2 de 0.288, lo cual me parece muy bajo. Sé que mis regresiones no coinciden exactamente con lo que se hizo en el papel, que es el exceso de rendimiento de un portafolio regresado contra los 3 factores, pero sospecho que hay algo mal, probablemente con cómo las fechas están indexadas entre sí.

Los datos de Fama solo contienen año y mes, y no está claro si esos representan rendimientos al principio del mes o al final del mes, lo cual podría afectar los resultados.

Me pregunto si alguien sabe qué está mal con mi configuración.

8voto

RealityGone Puntos 163

Esto es perfectamente normal. Estás ejecutando una regresión para una sola acción. Las acciones individuales tienen mucho riesgo idiosincrásico (que es lo que está capturando el $R^2$).

Acabo de ejecutar la regresión de Fama-French para Apple, y esto es lo que obtuve (muy similar a lo tuyo):

      Fuente |       SS           gl       MS      Número de obs   =       504
-------------+----------------------------------   F(3, 500)       =     66.44
       Modelo |  2.39063767         3  .796879224   Prob > F        =    0.0000
    Residual |  5.99656588       500  .011993132   R-cuadrado      =    0.2850
-------------+----------------------------------   R-cuadrado ajustado   =    0.2807
       Total |  8.38720355       503  .016674361   Error estándar de la raíz        =    .10951

------------------------------------------------------------------------------
     aapl_rf | Coeficiente  Error estándar      t    P>|t|     [Intervalo de conf. del 95%]
-------------+----------------------------------------------------------------
       mktrf |   1.235098   .1121975    11.01   0.000     1.014661    1.455535
         hml |   -.862915   .1624236    -5.31   0.000    -1.182032    -.543798
         smb |   .2237973   .1714526     1.31   0.192     -.113059    .5606537
       _cons |   .0135796   .0049681     2.73   0.006     .0038186    .0233406
------------------------------------------------------------------------------

Entonces $R^2 = 0.285$

Finanhelp.com

FinanHelp es una comunidad para personas con conocimientos de economía y finanzas, o quiere aprender. Puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X