Disculpas si esta pregunta es vaga, la he repasado varias veces en mi cabeza tratando de expresarla de la mejor manera posible, pero no estoy seguro de que se aclare cada vez.
He estado mirando este artículo del sitio web https://www.quantstart.com/articles/Basics-of-Statistical-Mean-Reversion-Testing y he estado investigando el código para el exponente de Hurst en Python. El artículo proporciona un fragmento de código en Python como sigue (para calcular el Hurst):
def hurst(ts):
"""Devuelve el Exponente de Hurst del vector de series temporales ts"""
# Crear el rango de valores de retardo
lags = range(2, 100)
# Calcular la matriz de las varianzas de las diferencias desfasadas
tau = [sqrt(std(subtract(ts[lag:], ts[:-lag]))) for lag in lags]
# Utilizar un ajuste lineal para estimar el Exponente de Hurst
poly = polyfit(log(lags), log(tau), 1)
# Devolver el exponente de Hurst desde la salida del polyfit
return poly[0]*2.0
Que funciona muy bien, pero debido a mi personalidad molesta donde necesito entender algo antes de usarlo, he estado volviéndome loco durante un día y medio tratando de entender cómo se desarrolló/determinó este código (especialmente la parte de sqrt(std)). El artículo en sí tiene algunos pasos breves, pero no puedo seguirlos. Puede ser que no entienda del todo lo que significa la notación <| ..... |> y cómo puede relacionarse con la desviación estándar. Adjunto aquí:
¿Alguien puede proporcionar un enlace a un artículo, sitio web o documento que muestre desde qué principios podría haber sido derivado este cálculo? A partir del documento de Racine, tengo entendido que el método original de Hurst fue el método RS, pero creo que el método utilizado en el código es del exponente de Hurst generalizado o el método estándar.
Mi nivel de matemáticas no es de nivel de doctorado, pero tengo un título en Ingeniería, por lo que tampoco es totalmente inútil. Lo que me cuesta entender enormemente es por qué el código utiliza la raíz cuadrada de la desviación estándar, así que si alguien pudiera arrojar algo de luz sobre eso, se lo agradecería enormemente.
Gracias por tu tiempo, nuevamente disculpas si esto no es totalmente claro.
0 votos
¿El paso para calcular el vector tau sigue siendo claro?
0 votos
Entiendo la parte: (restar(ts[lag:], ts[:-lag])) ya que esto solo resta la serie rezagada de la serie de tiempo original. Lo que no entiendo es por qué tomamos la desviación estándar de eso y luego la raíz cuadrada de eso, ya que no veo nada en las ecuaciones dadas en el artículo (desearía poder reproducirlas aquí, pero no puedo averiguar cómo reproducir fórmulas aquí) que indique por qué debería estar usando std y luego sqrt.
0 votos
Puede ser que el signo <| |> en esas ecuaciones me esté confundiendo, ya que podrían tener algún significado matemático avanzado del que no estoy al tanto.