Discusión sobre el artículo "Comprendemos la "memoria" del mercado usando la diferenciación y el análisis entrópico" - página 10
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Si tomamos su libro en concreto, la diferenciación fraccionaria no es muy agradable (en la práctica), además, tiene cien años, a partir de las modificaciones de ARIMA. Esto es si se toman dichas series de forma autónoma, sin otras características, no obtuve resultados satisfactorios.
Me gustó su reflexión sobre el meta-marking, es decir, entrenar el segundo modelo para corregir los resultados del primero, mejorando los resultados de la matriz. Hay muy pocas operaciones perdedoras en Train Sabesta. Una vez más, esto no es puramente su enfoque, es bien conocido. Pero sólo lo he visto aplicado a fin. filas. No se deshace de reentrenamiento, pero hace una imagen agradable en la bandejane.
Usted puede ver aquí, Meta-Etiquetado sección: https: //towardsdatascience.com/financial-machine-learning-part-1-labels-7eeed050f32e.
Más aquí: https: //www.quantopian.com/posts/meta-labeling-advances-in-financial-machine-learning-ch-3-pg-50
__________________________________________________________________________________________________________________
En cuanto al problema de sobreentrenamiento, estoy mirando hacia Meta-aprendizaje, Mecanismos de atención en el aprendizaje automático.
Puedes mirar en:
1. https://medium. com/towards-artificial-intelligence/a-simple-neural-attentive-meta-learner-snail-1e6b1d487623
2. https://stats. stackexchange.com/questions/344508/what-are-attention-mechanisms-exactly
Gracias por la detallada respuesta, lo estoy mirando....
Olvidé añadir que el Meta-etiquetado de su libro es un caso especial de apilamiento, si aplicas el meta-modelo no a un único modelo primario, sino a una suspensión de varios modelos entrenados en diferentes sabets. Esto podría dar más margen para la investigación, aplicado a las series tafm.
Aquí hay un artículo bastante bueno.
Además, los mecanismos de atención + apilamiento están igual de bien entretejidos en el metaaprendizaje. Así que hay mucho que probar.
Todo esto debería conducir a una cierta generalización global y ayudar a combatir el overfit.
En mi biblioteca RL multiagente del artículo hay un tocho para multiagentes, pero sus resultados se promedian y no se ponderan de ninguna manera. Hago todo tipo de variaciones sobre el tema para mí.
Maxim Dmitrievsky:
En mi biblioteca RL multiagente del artículo hay un tocho para multiagentes, pero sus resultados se promedian y no se ponderan de ninguna manera. Para mí hago todo tipo de variaciones sobre el tema.
No lo consideres por descaro (tu eres el autor de la libreria y tu decides en que direccion moverte), en la discusion de tu primer articulo sobre RL plantee la cuestion de sustituir el promediado por un metodo mas complejo, entonces lo cogiste en la bayoneta, en principio, cuando todos los agentes son creados por un algoritmo de bosque aleatorio realmente no es relevante, con un grado de convencionalismo se puede considerar que 2 agentes dan en la union bosque con un gran numero de arboles. Solo es necesario hacer un paso mas en la libreria RL y poner los arboles en una clase wrapper estandarizada separada, para la posibilidad de simple reemplazo en el agente por otro algoritmo.
Sobre la base de su biblioteca intenté crear una ampliada con la siguiente estructura: clase de preparación de datos primarios (series de pares, series adicionales-Euro-dólar afecta a muchos pares, un conjunto de lecturas de indicadores, parámetros adicionales como día del mes, día de la semana, etc.) - preparación de datos para todas las cadenas de algoritmos.
La cadena en sí: varias clases de preprocesamiento estándar, clase de método.
Al final - una clase de toma de decisiones (combinando los resultados de las cadenas), en una forma simple - promedio
Tengo 4 clases-bases-envolventes: datos, preprocesamiento, procesamiento, toma de decisiones.
En esta forma es posible mezclar ambos métodos diferentes y un método en diferentes datos, probablemente algo no se tiene en cuenta, pero este es el mínimo obtenido
No seas descarado (tu eres el autor de la librería y tu decides en que dirección moverte), en la discusión de tu primer artículo sobre RL planteé la cuestión de sustituir el promediado por un método más complejo, entonces tu lo cogiste de un tirón, en principio, cuando todos los agentes son creados por un algoritmo de bosque aleatorio realmente no es relevante, con un grado de convencionalismo podemos considerar que 2 agentes dan un bosque con un gran número de árboles. Solo es necesario dar un paso más en la librería RL y poner los árboles en una clase wrapper estandarizada aparte, para la posibilidad de sustitución simple en el agente por otro algoritmo.
Sobre la base de su biblioteca traté de crear una extendida con la siguiente estructura: clase de preparación de datos primarios (un número de pares, una fila adicional - euro-dólar afecta a muchos pares, un conjunto de lecturas de indicadores, parámetros adicionales - como el día del mes, día de la semana, etc.) - preparación de datos para todas las cadenas de algoritmos.
La cadena en sí: varias clases de preprocesamiento estándar, clase de método
Al final - una clase de toma de decisiones (combinando los resultados de las cadenas), en una forma simple - promedio
Tengo 4 clases-base-envolvente: datos, preprocesamiento, procesamiento, toma de decisiones.
En esta forma es posible mezclar ambos métodos diferentes y un método en diferentes datos, probablemente algo no se tiene en cuenta, pero este es el mínimo obtenido.
Pero, ¿dónde conseguir otros algoritmos? No hay nada más en alglib, tendremos que añadir algunos algoritmos de terceros. En esa librería del artículo puedes cambiar los parámetros de cada agente, es decir, puedes añadirle otras características, número de árboles y otros ajustes, es decir, puedes obtener, digamos, un montón de clasificadores débiles con un número pequeño de árboles que estén entrenados en diferentes características. Lo único que falta, como has visto, es sustituir el promedio por un metamodelo. Bueno, también es posible dividir el entrenamiento en pliegues, de forma que cada agente se entrene en su propia submuestra. Todavía no he experimentado con el apilamiento.
¿Pero dónde conseguir otros algoritmos? No hay nada más en alglib, así que tendremos que añadir algoritmos de terceros. En esa biblioteca del artículo se pueden cambiar los parámetros de cada agente, es decir, se pueden añadir otras características, número de árboles y otros ajustes, es decir, se pueden obtener, por ejemplo, un montón de clasificadores débiles con un pequeño número de árboles, que se entrenan con diferentes características. Lo único que falta, como has visto, es sustituir el promedio por un metamodelo. Bueno, también es posible dividir el entrenamiento en pliegues, para que cada agente sea entrenado en su propia submuestra. Todavía no he experimentado con el apilamiento.
Ahí es donde me quemé... Decidí mover el algoritmo de bousting, estoy disperso y no consigo juntarlo todo. Las librerías C++ son demasiado pesadas en plantillas y sobrecarga de funciones, porque en MQL no se soportan todas las sobrecargas, el algoritmo vuela y es más fácil escribirlo de nuevo, para algoritmos python se necesita una librería matricial normal (lo que hay en AlgLib está truncado, algunas cosas sólo se cierran con tapones, no es bueno para la base), era más fácil trasladarlo desde C#, parece que los desarrolladores de MQL se centran más en ello que en C++, hasta en la coincidencia de métodos y nombres. Intenté tomar árboles de alglib como base, pero allí los árboles se hacen sobre matrices, es difícil tratar la indexación, y el borrado es difícil. Ahora lo terminaré y lo publicaré, o espero que a alguien le interese y lo comparta....
Ahí es donde me quedé atascado ... Decidí mover el algoritmo de bousting, estoy disperso y no consigo juntarlo todo. Las librerías C++ están demasiado centradas en plantillas y sobrecarga de funciones, pues en MQL no se soportan todas las sobrecargas, el algoritmo vuela y es más fácil escribirlo de nuevo, para algoritmos python se necesita una librería matricial normal (lo que hay en AlgLib está truncado, algunas cosas sólo se cierran con tapones, no es bueno para la base), lo más fácil era trasladar de C#, parece que los desarrolladores de MQL están más orientados a ello que a C++, hasta la coincidencia de métodos y nombres. Intenté tomar árboles de alglib como base, pero allí los árboles se hacen sobre matrices, es difícil tratar la indexación, y el borrado es difícil. Ahora lo terminaré y lo publicaré, o espero que a alguien le interese y lo comparta....
O hacerlo en python, pero luego sufrir con MT5 :) Tengo un deseo de hacer una biblioteca similar en python, las posibilidades allí están por las nubes en términos de modelos. ¿Tiene algún sentido molestarse con el artículo?
El único problema es que he desarrollado mucho esta biblioteca, se ve mucho más complicado que en el artículo ... bueno, o simplemente diferente, aunque el concepto sigue siendo el mismo.O hacer en python, pero luego sufrir con MT5 enlaces :) Tengo un deseo de hacer una biblioteca similar en python, las posibilidades allí están por las nubes en términos de modelos. ¿Tiene algún sentido molestarse con el artículo?
El único problema es que he desarrollado esta biblioteca mucho, se ve mucho más complicado que en el artículo ... bueno, o simplemente diferente, aunque el concepto es el mismoDEFINITIVAMENTE EL ARTÍCULO TIENE SU PUNTO.
Python se ha convertido en un estándar de ML, los desarrolladores de MQL también se han movido en esta dirección, tienes que dominar Python en cualquier caso. Mi intento de transferir algoritmos está relacionado con la negativa de DLLs para auto-negociación en MQL, pero esto no es un requisito estricto y si los algoritmos son más fáciles de usar en python, entonces por qué no.
Sin adulación - leo sus artículos con placer, podemos discutir hasta que estamos azules en la cara sobre el contenido, pero el hecho de que establecen nuevas direcciones es inequívoca.
Estoy a favor de un nuevo artículo.
DEFINITIVAMENTE EL ARTÍCULO TIENE SENTIDO.
Python se ha convertido en un estándar de ML, los desarrolladores de MQL también se han movido en esta dirección, así que tienes que dominar Python en cualquier caso. Mi intento de transferir algoritmos está relacionado con el rechazo de DLLs para auto-negociación en MQL, pero esto no es un requisito estricto y si los algoritmos son más fáciles de usar en python, por qué no.
Sin adulación - leo sus artículos con placer, podemos discutir hasta que estamos azules en la cara sobre el contenido, pero el hecho de que establecen nuevas direcciones es inequívoca.
Estoy a favor de un nuevo artículo.
Propongo hacer un análogo de la librería RL en Python como artículo, sólo que no con random forest sino con bousting, por ejemplo CatBoost.
Y luego desarrollar el tema más adelante. Para empezar sencillo.Propongo hacer un análogo de la librería RL en Python como artículo, sólo que no con random forest sino con bousting, por ejemplo CatBoost.
Y luego desarrollar el tema más adelante. Para empezar sencillo.Como opción XGBoost - librería con código fuente o incluso simplificada:
https://habr.com/ru/company/mailru/blog/438562/
Por cierto, el artículo describe bousting, bousted respaldo.