Volúmenes, volatilidad e índice Hearst - página 5

 
Yurixx:

Como ves, aunque ponga un coeficiente no igual a 1 y lo determine de alguna manera para el euro en tf = H1, no significa que para la libra y en la otra TF vaya a ser igual. Y no es interesante. Es como tratar la escala de cada par por separado. Si es así, podemos trabajar con volúmenes.

Bien, podemos considerar a Hurst a la antigua usanza, como la pendiente de la regresión, y entonces este coeficiente no importará. De hecho, no se está atado a los TFs estándar, por lo que no es un problema encontrar puntos para la regresión.


P.D. No era una risa, era una sonrisa. En el sentido de un cierto escepticismo. Aunque, tal vez me equivoque y los usuarios del foro puedan resolver fácilmente este problema.

 

He calculado la relación (High-Low)/(Close-Open) utilizando un simple script para 1,5 millones de barras de minutos.

Para el AUDUSD en el intervalo de 2005.11.02 07:49 a 2010.08.20 22:59 la media (H-L)/(C-O) = 1.65539495
para el USDJPY en el intervalo de 2006.04.11 20:21 a 2010.08.20 22:59 la media (H-L)/(C-O) = 1.72965927
para el USDCHF en el intervalo 2006.01.24 04:23 a 2010.08.20 22:59 media (H-L)/(C-O) = 1.69927897
para USDCAD en el intervalo de 2005.05.19 13:31 a 2010.08.20 22:59 Media (H-L)/(C-O) = 1.62680742
para GBPUSD en el intervalo de 2006.02.21 23:31 a 2010.08.20 22:59 Media (H-L)/(C-O) = 1.65294349
Para el EURUSD en el intervalo de 2006.03.08 13:41 a 2010.08.20 22:59 la media (H-L)/(C-O) = 1.69371256

No es tanta la diferencia. Aunque esperaba que fuera aún más pequeño.

Por cierto, es interesante si el valor local de este ratio puede ayudar a distinguir una tendencia de un plano. Al menos hay que detectar los impulsos.

 

(Alto-Bajo)/(Cierre-Abierto) ?

Lo siento, ¿se ha perdido el módulo?

 
Svinozavr:

Permítanme explicar el método. ...

Es sin duda un enfoque interesante. Y, presumiblemente, en manos del autor es eficaz.

Pero todos estos indicadores siguen manteniendo su configuración temporal. Que, según tengo entendido, se establecen por gustos.

Es decir, si buscamos aquí indicadores objetivos, deberían ser los criterios de selección de los valores de estos parámetros los que deberían ser objeto de debate.

Mientras tanto, eso es exactamente lo que Peter nunca mencionó. O tal vez me lo perdí.

Y sería interesante escucharlo.

 
NorthAlec:

(Alto-Bajo)/(Cierre-Abierto) ?

Lo siento, ¿se ha perdido el módulo?

el módulo no se pierde

  for (i=Bars-1;i>0;i--) {
    double res = Close[i]-Open[i];
    if (res < 0) res = -res;
    SumCO += res;
    SumHL += High[i]-Low[i];
  }
  if (SumCO != 0) Alert("Для ",Symbol()," на интервале от ",TimeToStr(Time[Bars-1])," до ",TimeToStr(Time[0])," среднее (H-L)/(C-O) = ",DoubleToStr(SumHL/SumCO,8));
 
Candid:

He calculado con un simple script la relación (High-Low)/(Close-Open) en 1,5 millones de barras de minutos.


¿Y qué puede significar esta proporción en términos de significado? Por definición, esta relación debe ser mayor que 1. Además, no puede ser demasiado alto, porque el precio (casi siempre) se mueve a una velocidad terminal. Está claro que hay un valor medio en algún punto intermedio. Y no debería diferir mucho según el instrumento: el mecanismo de mercado es el mismo en todas partes. Si se dibuja la distribución (Cierre-Apertura) (sin módulo) dentro de una barra, lo más probable es que obtengamos una distribución uniforme. Y esta será la mejor confirmación de que el valor es puramente aleatorio.

Quizá no entienda algo, pero hace tiempo que dejé de prestar atención a Close y Open como fuentes de datos estadísticos. En primer lugar, sus valores son puramente aleatorios (en relación con el conjunto de datos del minuto correspondiente), y en segundo lugar, dependen totalmente del inicio de la temporización, lo que no es bueno. Mueve el punto de partida unos segundos y estos valores cambiarán. Pero el par Alto y Bajo es otro asunto. Este par define el corredor en el que se mueve el precio. Es imprescindible, por supuesto, si no es para jugar dentro de un bar. Pero si lo hacemos, entonces todos nuestros enfoques de indicadores son irrelevantes. Además, este par fija el spread y la volatilidad. En mi opinión, son características muy importantes, que sólo tenemos que aprender a utilizar.

 
Yurixx:

¿Qué puede significar esta actitud en términos de significado?

He escrito en otro hilo
 

Por lo tanto, hay muchas preguntas sin respuesta sobre el indicador Hirst. No se me había ocurrido hacerlo, pero las críticas, preguntas y comentarios de Nikolay(Candid), a quien estoy muy agradecido, me convencieron de que había que abordarlo de verdad. Sin eso, la fórmula propuesta anteriormente para calcular el índice de Hurst parece estar simplemente tomada del techo.

También era necesario responder (incluyéndome a mí mismo) a dicha observación:

Candid:

Pero hasta ahora no hay motivos suficientes para comparar los valores absolutos de este valor con la "calibración" de Hearst, es decir, para considerar que a 0,5 la serie es aleatoria, por encima es tendencial y por debajo es recursiva.

Para esta característica es necesario hacer su propia calibración.



No describiré los detalles del juicio, simplemente contaré a qué he llegado.

Hablaremos de una serie de números aleatorios (SR) que es un modelo de flujo de ticks: cada tick da +/- 1 punto de cambio de precio. El modelo es, por supuesto, muy aproximado, pero no estamos tratando con el mercado, sino con Hirst. Y, en primer lugar, tenemos que tratar con un flujo de igual probabilidad, es decir, la SB pura, cuando las probabilidades de los ticks +1 y -1 son iguales al 50% cada una. Esto también proporcionaría la calibración mencionada por Nikolai.

El cálculo del índice de Hurst se basa en el rango medio, es decir, la diferencia entre el precio máximo y el mínimo del intervalo. Además de este valor, hay otros dos muy relevantes: el módulo medio de incrementos y la dispersión de incrementos. Los tres participaron en el estudio. Las denominaciones utilizadas a continuación son las siguientes:

N es el número de ticks en el intervalo. El primer punto de un intervalo (valor inicial del precio) es el último tick del intervalo anterior y no se incluye en el actual. Por lo tanto, el número de cambios de precio dentro del intervalo es igual a su número de ticks.

K - número de intervalos en las estadísticas.

R - Diferencia de precios media por intervalos de K.

M - módulo de incremento medio por intervalos de K.

D - dispersión de los incrementos por intervalos de K.

El incremento del precio en el intervalo es un valor conveniente y fácilmente representado en la forma analítica, igual a la diferencia entre el precio final y el inicial del intervalo. Por lo tanto, M y D pueden calcularse sin problemas. Con la difusión de R es mucho más complicado. Dado que los precios mínimos y máximos del intervalo pueden alcanzarse en cualquier punto, el diferencial depende de toda la trayectoria de los precios y no puede expresarse en absoluto de forma analítica. En otras palabras, es imposible obtener una fórmula general para ello (como pidió insidiosamente Nicolai).

Sin embargo, la tarea de investigar el comportamiento del índice de Hurst para la SB está planteada y por tanto debemos obtener resultados precisos, no limitarnos a experimentos aproximados.

En esta situación, no queda más remedio que, a partir de la definición del diferencial, calcular sus valores "de frente".

 

Para ello tuve que escribir un script que, para un número determinado de ticks N en el intervalo, construye todas las posibles trayectorias de precios. Como todas estas trayectorias son igualmente probables para SB, queda por determinar la dispersión de cada una de ellas y calcular su media para todas las trayectorias. Este será su valor "teórico", o MO en definitiva. Obviamente, el número total de todas las posibles trayectorias de precios para el intervalo de longitud N es 2^N. Según la misma ley, el tiempo de recuento del script y el consumo de memoria crecen. Por lo tanto, es posible calcular la extensión MO sólo para una región de valores pequeños de N. El módulo medio y la varianza de los incrementos se calculan para completar la imagen y para comprobar indirectamente la corrección de los cálculos.

N R M D
1 1.0000 1.0000 1.0000
2 1.5000 1.0000 2.0000
3 2.0000 1.5000 3.0000
4 2.3750 1.5000 4.0000
5 2.7500 1.8750 5.0000
6 3.0625 1.8750 6.0000
7 3.3750 2.1875 7.0000
8 3.6484 2.1875 8.0000
9 3.9219 2.4609 9.0000
10 4.1680 2.4609 10.0000
11 4.4141 2.7070 11.0000
12 4.6396 2.7070 12.0000
13 4.8652 2.9326 13.0000
14 5.0747 2.9326 14.0000
15 5.2842 3.1421 15.0000
16 5.4806 3.1421 16.0000
17 5.6769 3.3385 17.0000
18 5.8624 3.3385 18.0000
19 6.0479 3.5239 19.0000
20 6.2241 3.5239 20.0000
21 6.4003 3.7001 21.0000
22 6.5685 3.7001 22.0000
23 6.7367 3.8683 23.0000
24 6.8978 3.8683 24.0000
25 7.0590 4.0295 25.0000

Para la SB en cuestión existe una fórmula sencilla que relaciona la varianza de los incrementos D con el número de ticks N:

D = N .

Al parecer, Hurst, al postular su fórmula para la varianza media, se basó en este resultado teórico.

La tabla muestra que los valores obtenidos de D concuerdan plenamente con esta fórmula. Significa que el algoritmo para generar todo el conjunto de trayectorias de precios y la aritmética para el cálculo de las medias están escritos correctamente. El cálculo de los precios máximos y mínimos en el intervalo y sus diferencias es tan sencillo que la probabilidad de error es cercana a cero.

 

Ahora que tenemos algo con lo que comparar, podemos ver cómo se comporta el exponente de Hearst para SB con diferentes valores del intervalo N.

Permítanme recordarles la fórmula utilizada para calcular el ratio de Hearst, tal y como lo define su autor.

H = (Log(R2) - Log(R1))/ (Log(N2) - Log(N1))

El esquema de cálculo de dos puntos se debe a la necesidad de deshacerse del factor desconocido que está presente en la fórmula de Hurst.

Para simplificar los cálculos, ser más claros y maximizar el rango de investigación, el número de ticks en el intervalo N también se cambió en potencias de dos. Es decir, se tomó N = 2^n. La base del logaritmo en la fórmula de H no juega ningún papel. Por lo tanto, se asumió que era 2, por lo que Log(N ) =n.

El algoritmo de cálculo fue el siguiente:

  1. Fijamos el número n, el precio inicial p=0 y la precisión de cálculo acc=0,001.
  2. Calcular el número de puntos en el intervalo N
  3. Utiliza el PRNG incorporado para generar el intervalo K-ésimo- N incrementos de ticks unitarios
  4. Calcule para este intervalo el rango y el módulo de incremento del precio
  5. Suma acumulativamente la amplitud, el módulo y el cuadrado a las variables
  6. Calcular la media y la varianza de los intervalos K
  7. Determine si se cumple la condición de precisión. Si no es así, añada uno a K y continúe con el paso 3. Si no es así, termine la secuencia de comandos.

Los resultados están en la tabla.

(Desgraciadamente, no he podido pegar toda la tabla; el editor no acepta textos de este tamaño. Tuve que dividirlo en 2 tablas, guardando las dos primeras columnas por comodidad. La primera se denominará 2a y la segunda 2b).

Razón de la queja: