1 votos

Backtest de reversión de medias entre el índice y los componentes

Soy un principiante con la replicación de la ETF: Tengo que hacer un código para que el valor de mis activos vuelva a la media del índice Eurostoxx 50 con un subconjunto de componentes. No estoy seguro de cómo implementarlo.

Tengo entendido que, normalmente, una estrategia de reversión a la media transversal se alimenta de un universo de acciones, donde cada acción tiene sus rendimientos relativos en comparación con los rendimientos medios del universo.

  • una acción con un rendimiento relativo positivo se pone en corto
  • se compra una acción con una rentabilidad relativa negativa

¿Pero es lo que tengo que adaptar para replicar un ETF?

Sé cómo codificar una estrategia de reversión de la media:

from backtesting import Backtest, Strategy
from backtesting.lib import crossover

from backtesting.test import SMA, GOOG

class SmaCross(Strategy):
    def init(self):
        Close = self.data.Close
        self.ma1 = self.I(SMA, Close, 10)
        self.ma2 = self.I(SMA, Close, 20)
        #self.boll = bt.indicators.BollingerBands(period=self.p.period, devfactor=self.p.devfactor)

    def next(self):
        if crossover(self.ma1, self.ma2):
            self.buy()
        elif crossover(self.ma2, self.ma1):
            self.sell()

bt = Backtest(GOOG, SmaCross,
              cash=10000, commission=.002)
bt.run()
bt.plot()

Pero, primero no sé cómo hacer la reversión media para volver al índice (SX5E) y, segundo, no sé cómo adaptar mi conjunto de datos al que Backtest está esperando ('data' must be a pandas.DataFrame with columns 'Open', 'High', 'Low', 'Close', and (optionally) 'Volume ).

El aspecto de mi conjunto de datos es totalmente accesible aquí y tiene el siguiente aspecto:

    ABI BB Equity   AD NA Equity    ADS GY Equity   AI FP Equity    AIR FP Equity   AMS SQ Equity   ASML NA Equity  BAS GY Equity   BAYN GY Equity  BBVA SQ Equity  BMW GY Equity   BN FP Equity    BNP FP Equity   CRH ID Equity   CS FP Equity    DAI GY Equity   DG FP Equity    DPW GY Equity   DTE GY Equity   EL FP Equity    ENEL IM Equity  ENGI FP Equity  ENI IM Equity   FP FP Equity    FRE GY Equity   GLE FP Equity   IBE SQ Equity   INGA NA Equity  ISP IM Equity   ITX SQ Equity   KER FP Equity   LIN GY Equity   MC FP Equity    MUV2 GY Equity  NOKIA FH Equity     OR FP Equity    ORA FP Equity   PHIA NA Equity  SAF FP Equity   SAN FP Equity   SAN SQ Equity   SAP GY Equity   SIE GY Equity   SU FP Equity    TEF SQ Equity   URW NA Equity   VIV FP Equity   VOW3 GY Equity  SX5E Index
Dates                                                                                                                                                                                                   
2019-02-27 09:00:00     65.65   22.870  212.40  109.95  113.32  69.24   162.14  67.25   68.79   5.2590  73.67   67.18   43.275  27.60   21.830  53.00   82.42   26.680  14.455  106.60  5.314   14.065  15.220  49.910  48.500  25.805  7.372   11.338  2.0830  26.22   484.20  152.80  303.55  207.1   5.3660  222.0   13.320  35.105  118.40  72.93   4.1550  94.00   97.30   68.64   7.573   143.46  24.23   150.30  3279.78
2019-02-27 09:10:00     65.69   22.490  212.20  109.90  113.20  69.16   162.32  67.21   67.96   5.2310  73.59   67.16   43.045  27.53   21.840  52.82   82.50   26.700  14.485  107.05  5.320   14.065  15.212  49.925  48.530  25.700  7.364   11.300  2.0790  26.09   483.90  152.95  303.20  206.8   5.3540  221.6   13.360  35.095  118.75  72.95   4.1265  94.27   97.20   68.76   7.558   143.04  24.25   149.80  3275.70
...   ...

La última columna es el índice.

0 votos

¿Qué quiere decir con "hacer que el valor de mis activos vuelva a la media"?

0 votos

También debe tener cuidado con esto: si simula sus activos subyacentes con una reversión a la media incorporada, para poder realizar un backtest de una estrategia de reversión a la media, está introduciendo un sesgo.

0voto

cwjohnston Puntos 306

No se puede tener una estrategia que al mismo tiempo realizar la reversión a la media y seguir un índice.

En primer lugar, la replicación de índices es una Sólo de largo plazo estrategia. En un índice no se venden nombres. En segundo lugar, cada vez que su estrategia de reversión a la media opere, se desviará del índice, aumentando el error de seguimiento y, finalmente, divergiendo de él.

Lo que podría tener es una cartera construida con las mayores ponderaciones de un índice (su subconjunto) y operar con una estrategia de reversión a la media en cada una de ellas, haciendo coincidir adecuadamente el tamaño de cada uno de los nombres con su ponderación en el índice, y reequilibrando para reflejar el índice siempre que sea necesario/apropiado.

Sin embargo, esta estrategia replicará (parte de) el índice sólo cuando todos los nombres sean largos.

1 votos

Hola: Nunca he oído hablar de seguimiento de un índice mediante la generación de una serie temporal que sigue la serie temporal de los rendimientos de la misma que creo que es lo que estás tratando de hacer. Por lo general (AFAIK ) se utiliza algún tipo de enfoque de optimización que genera pesos de cartera para que las exposiciones al riesgo de cartera coinciden con los del índice . Esto requiere un modelo de riesgo o incluso se podría hacer ( optimizar ) con los datos históricos en bruto ( sin modelo de riesgo ). Mucha gente utiliza el modelo de riesgo de Barra. Si busca en Google "optimización de carteras para el seguimiento de índices" encontrará algo útil con más detalles.

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