De la teoría a la práctica - página 336

 
Alexander_K2:

Último post por hoy.

Así que. La pregunta más candente que una vez hizo Novaja:

¿Por qué convertir el flujo de ticks actual, que es de hecho un flujo Erlang, en un flujo exponencial, para luego volver al mismo flujo, pero ya claramente distorsionado?

Estoy de acuerdo: aquí se ha cometido un error. Hay que trabajar con el flujo de garrapatas existente y realizar las transformaciones posteriores sobre este flujo de origen natural, no artificial.

Así, el algoritmo de transformación es el siguiente:

1. tomamos el flujo de ticks inicial pero leemos cada dos ticks en su lugar - mira las distribuciones obtenidas para los intervalos e incrementos de tiempo.

2. ... cada tercer tick se lee - miramos las distribuciones.

3. ...

Hasta que la distribución de los intervalos de tiempo adquiere un flujo Erlang claro y pronunciado que satisface las fórmulas de la función de densidad de probabilidad, y la distribución de los incrementos se acerca cada vez más a una distribución normal.

Eso es lo que voy a hacer, y te haré saber los resultados.

Gracias por su atención.

esto es sólo el principio de años de dolorosa investigación, basada en hipótesis y con muchos dos puntos

y las conclusiones son como un grial...

es como un grial...

 
Alexander_K2:

Último puesto por hoy.

Así que. La pregunta más candente que una vez hizo Novaja:

¿Por qué convertir el flujo de ticks actual, que es de hecho un flujo Erlang, en un flujo exponencial, para luego volver al mismo flujo, pero ya claramente distorsionado?

Estoy de acuerdo: aquí se ha cometido un error. Hay que trabajar con el flujo de garrapatas existente y realizar las transformaciones posteriores sobre este flujo de origen natural, no artificial.

Así, el algoritmo de transformación es el siguiente:

1. tomamos el flujo de ticks inicial pero leemos cada dos ticks en su lugar - mira las distribuciones obtenidas para los intervalos e incrementos de tiempo.

2. ... cada tercer tick se lee - miramos las distribuciones.

3. ...

Hasta que la distribución de los intervalos de tiempo adquiere un flujo Erlang claro y pronunciado que satisface las fórmulas de la función de densidad de probabilidad, y la distribución de los incrementos se acerca cada vez más a una distribución normal.

Eso es lo que voy a hacer, y te haré saber los resultados.

Gracias por su atención.

Al leer cada segundo, luego el tercero y así sucesivamente cada n-ésimo tick se obtiene realmente un gráfico de los rangos de precios de cierre.

Y las distribuciones de este gráfico ya las he puesto al corriente.

Al principio, el pico central disminuirá, empezará a desdibujarse para acercarse a la normalidad y luego la distribución se volverá bimodal.

Para entender el proceso hay que estudiarlo en los bordes y las medidas de los bordes son que con n=1 te acercas a una distribución log-normal y con el aumento de n más cerca de n=100 tienes una distribución bimodal. Esto significa que la distribución siempre ha sido bimodal, sólo que debido a la discreción en n pequeños se superpone y la imagen no es clara.

Así que su investigación es una invención de la bicicleta.

 
Yuriy Asaulenko:

No, esa no es forma de vender un elefante.

A_K2 se caracteriza por la ausencia total de un planteamiento sistemático y por profundizar en los detalles. ¿Qué detalles cuando no hay visión de conjunto?

Además.

Deseo sinceramente que A_K2 produzca algo que realmente funcione. Sin embargo, a juzgar por sus mensajes, esta vez también será un tiro en blanco.

El progreso, la ciencia y la tecnología siempre han pasado de formas simples (descripciones) a otras más complejas. Y, hay que decirlo, ya los simples funcionaban bastante bien.

Si nunca has diseñado un coche, no hay posibilidad de empezar con un Mercedes. Deberías empezar con algo sencillo, algo como Zhiguli: los principios de funcionamiento son los mismos que en Mercedes, pero todo es mucho más sencillo. Cuando tu Zhigul comienza a moverse, puedes mejorar, modernizar, complicar y llevar al nivel de Mercedes. Recuerda cómo eran los coches coreanos hace 15 años: no puedes evitar llorar.

Parece que A_K2 de nuevo comenzó a diseñar Mercedes.) Se podría construir al menos Zhigul durante 4 meses anteriores - no necesita ninguna ciencia para diseñarlo, y las soluciones técnicas son suficientes).

 
Alexander_K2:

Hay que trabajar con la corriente de garrapatas que se tiene y hacer más transformaciones en esta corriente de origen natural, no en una artificial.

Ya le he escrito sobre esto, pero aparentemente mi voz no es suficiente.
Sus "tics reales" son algo inusual. No sé qué hay detrás de ese "DDE", pero no es en absoluto la basura desordenada que suele dar el forex dilling. Al menos, las garrapatas son 10 veces menos frecuentes de lo habitual, lo que ya es alarmante. La primera bolsa de tu histograma debería ser de ~200ms, no de un segundo.

Por favor, ponga en el csv un par de miles de últimos ticks recibidos, sin adelgazar, sin rellenar los espacios en blanco con los valores pasados, pero sólo los precios que vinieron. Tal vez alguien pueda utilizarlos y confirmar que estos valores son mucho más aceptables para el comercio que los habituales. Y entonces quizá la inteligencia colectiva de este hilo sugiera cómo hacer un grial con ellos en una docena de líneas de código mql.

 
Alexander_K2:

¿Y no tienes que convertir nada? ¡¡¡¡¡¡¡¡No lo creo!!!!!!!! Eso no es interesante.

El principio del tratamiento de los big data es trabajar siempre con datos brutos que tienen el máximo de información, pero añadirles diferentes métricas o reducirlos sin perder información.

Si se empieza a machacar la información, es obvio que el valor y la idoneidad de tales algoritmos descienden inmediatamente.

 
Alexander_K2:

Pero hace seis meses comentamos que, dado que los diferentes corredores tienen diferentes flujos de ticks, la primera tarea es llevarlos a una única vista universal. ¿No?

Uno no se contradice con el otro.

Una visión universal no significa que sea necesario llevarlos a la misma...
 

Gracias, aquí hay una comparación de las distribuciones de ganancias, y autocorrelaciones para los últimos 1000 valores de oferta de audcad. La fila de arriba son sus garrapatas. La fila inferior es la que está en el terminal. Hay una diferencia, pero no puedo decir por los gráficos qué es mejor. Me gusta que el pico del histograma no esté abreviado como en el terminal.

Algunas pruebas de estacionariedad:

Sus garrapatas son.

> Box.test(pricesDiff, lag=20, type="Ljung-Box")

        Box-Ljung test

data:  pricesDiff
X-squared = 39.466, df = 20, p-value = 0.005832

> adf.test(pricesDiff, alternative = "stationary")

        Augmented Dickey-Fuller Test

data:  pricesDiff
Dickey-Fuller = -11.556, Lag order = 9, p-value = 0.01
alternative hypothesis: stationary

> kpss.test(pricesDiff)

        KPSS Test for Level Stationarity

data:  pricesDiff
KPSS Level = 0.44326, Truncation lag parameter = 7, p-value = 0.05851


Y los de la terminal:

        Box-Ljung test

data:  pricesDiff
X-squared = 29.181, df = 20, p-value = 0.08426

> adf.test(pricesDiff, alternative = "stationary")

        Augmented Dickey-Fuller Test

data:  pricesDiff
Dickey-Fuller = -10.252, Lag order = 9, p-value = 0.01
alternative hypothesis: stationary

> kpss.test(pricesDiff)

        KPSS Test for Level Stationarity

data:  pricesDiff
KPSS Level = 0.3404, Truncation lag parameter = 7, p-value = 0.1


El valor p de su prueba de Box-Ljung es un orden de magnitud inferior, lo cual es genial.


Y lo más importante, sus garrapatas son un proceso con memoria, es muy poco marcado. No sé cómo expresarlo en números, pero en mi modelo sus garrapatas son más fáciles de predecir que las normales.


Me pregunto si hay otras pruebas para evaluar la previsibilidad.

 

Distancias entre ticks del archivo de Alexander 01AUDCAD_Real 14400 (incrementos de 1 segundo)


 
Alexander_K2:

Si ese es el caso, obviamente todo el mundo debería trabajar en una corriente discreta de citas como la mía y ya está. ¿No es así?

Eso mismo pensaba yo hace un mes. Ya que tenías una distribución logarítmica (o pascal), quise obtener una también por adelgazamiento para quedar bien. Después de un par de semanas y de probar "cambiaré p a 0,71 en lugar de 0,72 y estará bien". - Nunca acerté, todo es una cinta métrica, no una ciencia.

La distribución de las ganancias de los precios, y las pausas de tiempo son sólo consecuencias. Lo más importante es conseguir un proceso estacionario no markoviano. Y cuanto más estacionario y no markoviano, mejor. Creo que esta es la primera transformación necesaria con el requisito de estacionariedad no markoviana y no importa qué distribuciones produce.
No tengo ni idea de cómo lograr esta estacionariedad no markoviana, pero parece que es la forma correcta.

Entonces, para una serie tan diluida se puede intentar hacer una segunda conversión según la estrategia de negociación. Como lograr una gama en los retornos, como usted quería para su modelo. Aquí la transformación depende de su estrategia, puede crear características y entrenar la neurona en lugar de un segundo adelgazamiento.


p.d. - La"estacionariedad no markoviana" es un nombre profano puramente personal para esta propiedad. En la ciencia probablemente se llame de otra manera.

 
Novaja:

Distancias entre ticks del archivo de Alexander 01AUDCAD_Real 14400 (discreción de 1 seg.)

A juzgar por el gráfico de hace un par de páginas, el pico ha pasado de 0 a 1. Supongo que depende del par negociado (audcad y cadjpy)


Alexander_K2:

Creo que es una distribución de Pascal con r=2, p=0.5, q=0.5

Intenté dibujar la distribución de Pascal con dichos parámetros en R, no coincidió. Pero hay otras notaciones en lugar de r,p,q, tal vez me equivoqué en algo.