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
Artículo publicado Pipelines en MQL5:
La biblioteca SCIKIT-LEARN de Python se ha convertido, a todos los efectos, en el estándar de referencia del sector en lo que respecta al preprocesamiento en el aprendizaje automático. Con tan solo escribir unas pocas líneas de código, los desarrolladores pueden aplicar un escalador estándar para centrar las características; un escalador min-max para comprimir las características dentro de un rango fijo; un escalador robusto, que sirve para reducir la influencia excesiva de los valores atípicos; o un codificador one-hot, que ayuda a convertir las características en representaciones binarias. Más aún, la clase pipeline de SCIKIT-LEARN permite encadenar estos pasos sin problemas, lo que significa que todos los conjuntos de datos que se pasan al modelo se benefician de las mismas secuencias de transformación. Este mecanismo modular «plug-and-play» ha propiciado una rápida adopción del aprendizaje automático en una amplia variedad de sectores.
Por el contrario, los desarrolladores de MQL5 se enfrentan a una realidad muy diferente. Aunque MQL5 es relativamente eficaz a la hora de gestionar datos de trading, sigue sin ofrecer de forma nativa métodos de preprocesamiento comparables a los de SCIKIT-LEARN. En cada transformación —ya sea escalado, codificación o incluso imputación de valores ausentes—, el código debe escribirse manualmente y, a menudo, de forma fragmentada. Esto no solo aumenta la probabilidad de que se produzcan errores, sino que también dificulta la reproducción de los resultados de las pruebas o el mantenimiento de la coherencia entre los datos de entrenamiento y los de prueba.
En mi opinión, la solución podría consistir en diseñar una clase de pipeline de preprocesamiento en MQL5 que emule esta filosofía de SCIKIT-LEARN. Si logramos implementar módulos reutilizables como CStandardScaler, CMinMaxScaler, CRobustScaler y COneHotEncoder, podríamos encadenar un pipeline de preprocesamiento en un contenedor. Esta estructura garantizaría que los datos brutos de las series temporales financieras se sometieran a un proceso de preparación sistemático antes de introducirse en los modelos de aprendizaje profundo. Esto sería así tanto si los modelos están programados de forma nativa en MQL5 como si se importan a través de ONNX. Utilizando esta estructura, los desarrolladores de MQL5 pueden adoptar en MQL5 un flujo de trabajo de Python que les resulta familiar, lo que permite una experimentación más limpia, un desarrollo más rápido y, presumiblemente, sistemas de IA más fiables.
Autor: Stephen Njuki