Gracias por plantear este tema.
Por favor, comente la información un tanto contradictoria, citando dos partes del artículo:
"
Para aplicar la ecuación de entropía a variables continuas, debemos discretizar los valores indicadores. Esto se hace dividiendo el rango de valores en intervalos de igual tamaño y contando el número de valores que caen dentro de cada intervalo. Con este método, el conjunto original que enumera el rango máximo de todos los valores indicadores se sustituye por subconjuntos, cada uno de los cuales representa intervalos seleccionados.
...
Intervalos: número de intervalos que se van a muestrear. El autor de TTMTS especifica 20 intervalos para un tamaño de muestra de varios miles, siendo 2 un valor mínimo estricto. He añadido mi propio enfoque a un valor adecuado mediante la implementación de la capacidad de variar el número de intervalos en relación con el tamaño de la muestra, específicamente 51 por cada 1000 muestras. Esta opción está disponible si el usuario introduce cualquier valor inferior a 2. Por lo tanto, al establecer Intervalo en cualquier número inferior a 2, el número de intervalos utilizados variará en función del número de barras que se analicen.
"
Pregunta, ¿se trata de lo mismo? En caso afirmativo, ¿por qué el número de separadores del intervalo de valores del indicador depende del número de barras? ¿Cuál es la lógica aquí? Hasta ahora, puedo suponer que es útil sólo para los indicadores que tienen algún componente acumulativo.
Si no es así, ¿a qué equivale el número de separadores del rango?
El artículo carece de una tabla que muestre claramente el beneficio de transformar los valores de los indicadores.
Se ha publicado un nuevo artículo Medición de la información de los indicadores:
Autor: Francis Dube
Hola Francis
¿Puede usted por favor elaborar cómo probar un indicador personalizado para EntrophyAnalysis.
Estoy tratando de usar como abajo:
input ENUM_TIMEFRAMES Timeframe=PERIOD_H1;
entrada ENUM_INDICATOR IndicatorType=IND_CUSTOM;
input string CustomIndicatorName="Indicadores\NKGold\Regresion\iNonLinRegress.ex5";
input bool UseDefaults=true;
input string IndicatorParameterTypes="int,CENUM_APPLIED_PRICE";
input string IndicatorParameterValues="34,precioHA_WEIGHTED";
y obtener error como abajo
2025.03.26 19:53:11.282 EntropyIndicatorAnalysis (XAUUSD,H1) indicador personalizado 'Indicators\NKGold\Regression\iNonLinRegress.ex5' no se puede cargar [4802]
2025.03.26 19:53:11.282 EntropyIndicatorAnalysis (XAUUSD,H1) Indicador no válido, código de error: 4802
¿Por qué tantas letras? ¿Ha identificado el autor un indicador válido? En otras palabras, ¿ha encontrado algo para ganar dinero? La pregunta es sencilla: ¿existe una herramienta para ganar dinero con una alta probabilidad de beneficio? ¿O es todo lo mismo, como la ruleta: o funciona o no funciona.
El artículo no pretende haber descubierto un Santo Grial que imprima billetes con seguridad. Su objetivo es más modesto: mostrar cómo medir la riqueza de información que un indicador aporta a un modelo de aprendizaje.
-
Una puntuación de entropía elevada sólo significa que la variable no es trivial (varía lo suficiente para que el algoritmo aprenda). No garantiza la dirección, el momento oportuno o la gestión ganadora del dinero.
-
Incluso un indicador muy informativo puede resultar poco predictivo si el mercado ya es eficiente en el horizonte temporal elegido, si los costes de transacción absorben la señal o si el modelo está mal diseñado.
-
En la práctica, se apilan una serie de elementos: selección de indicadores con buena entropía, pruebas estrictas fuera de muestra, gestión del riesgo, ejecución robusta y seguimiento en tiempo real. Sólo combinando todos estos pasos se puede esperar obtener una pequeña ventaja, que debe comprobarse constantemente a medida que se adapta el mercado.
-
El autor proporciona una herramienta de diagnóstico académico. No garantiza el éxito. Cada cual es libre de utilizarla para afinar sus características o, por el contrario, para darse cuenta de que un indicador favorito no aporta nada nuevo.
En resumen, la entropía es un termómetro, no un elixir. Ayuda a detectar rápidamente las variables muertas o infraexplotadas. No sustituye a la estrategia ni al control del riesgo.
...
Intervalos - el número de intervalos que se van a muestrear. El autor de TTMTS especifica 20 intervalos para una muestra de varios miles de personas, siendo 2 un mínimo absoluto. He añadido mi propia aproximación a un valor apropiado implementando la posibilidad de variar el número de intervalos en relación con el tamaño de la muestra, concretamente 51 para 1000 muestras. Esta opción está disponible si el usuario introduce un valor inferior a 2. De este modo, al establecer Intervalo en un número inferior a 2, el número de intervalos utilizados variará en función del número de barras analizadas.
"
Pregunta: ¿es lo mismo? En caso afirmativo, ¿por qué el número de separadores en el intervalo de valores del indicador depende del número de barras? ¿Cuál es la lógica detrás de esto? Hasta ahora, sólo puedo suponer que esto es útil para los indicadores que tienen un componente acumulativo.
Si no es así, ¿a qué corresponde el número de divisores en el rango?
El artículo carece de una tabla que muestre claramente el beneficio de transformar los valores de los indicadores.
Para estimar la entropía de una variable continua, dividimos su rango de valores en intervalos iguales y contamos las observaciones en cada intervalo. El script permite elegir el número deintervalos. Si introduce < 2 (o deja el valor por defecto), el script activa su propia heurística: 51 intervalos por cada 1.000 observaciones, es decir, un número proporcional al tamaño de la muestra. Si introduce un valor > 2, lo utiliza tal cual, por lo que no se trata de dos métodos contrapuestos. Uno describe el concepto, el otro explica cómo el código elige el parámetro cuando no lo fijas tú mismo.
Cuando se tienen muy pocos intervalos, se pegan artificialmente los valores. Se subestima la entropía (sesgo). Cuando tiene demasiados intervalos para una muestra pequeña, hay muchos bins vacíos o bins con 1 observación. La entropía es muy ruidosa (varianza). Existen varias reglas automáticas para los histogramas: Sturges, raíz cuadrada, Freedman-Diaconis, Scott, etc). Todas tienen la misma idea: aumentar la resolución cuando se tienen más datos, porque así se pueden estimar probabilidades más finas sin que se dispare la varianza.
Para 1.000 barras, 51 intervalos => 20 puntos por bandeja si la distribución fuera uniforme. Esta proporción (entre 15 y 30 obs / clase) es un compromiso clásico que el autor ha tomado de la literatura. No tiene nada que ver con el carácter acumulativo o no de un indicador. La lógica es puramente estadística. La finura de la rejilla se adapta a la cantidad de información disponible.
-
más visible es la distribución fina del indicador,
-
más detalles (picos y valles) puede captar el cálculo de entropía,
-
pero se necesitan más datos para que estas frecuencias sean estables.
Es cierto que el artículo se habría beneficiado de mostrar, por ejemplo, la entropía del mismo indicador antes y después de las transformaciones. Pero la demostración es fácil de hacer uno mismo. Basta con marcar ApplyTransform=true en el script y leer la doble salida: antes / después. El código ha dejado deliberadamente esta parte interactiva para que cada cual pueda probar sus propios activos y horizontes.
Cuantas más barras verticales haya en el histograma:
-
más perceptible es la sutileza de la distribución del índice,
-
más detalle (picos y valles) puede captar el cálculo de entropía,
-
pero se necesitan más datos para que estas frecuencias sean estables.
Según tengo entendido, la visualización de los valores de los indicadores en una muestra a través de un histograma no tiene nada que ver con los métodos de transformación de datos del autor. ¿Estoy en lo cierto?
Me interesa más la cuestión del efecto de entrenamiento de estas transformaciones. Puedo suponerlo para las redes neuronales, pero no para los métodos arbóreos.
Si he entendido bien, la visualización de las puntuaciones de los indicadores en una muestra mediante un histograma no tiene nada que ver con los métodos de transformación de datos del autor. ¿Estoy en lo cierto?
Me interesa más la cuestión del efecto de estas transformaciones. Puedo suponerlo para las redes neuronales, pero no para los métodos arbóreos.
El histograma dibujado por el script es simplemente una herramienta de diagnóstico visual. Muestra cómo se distribuyen los valores de un indicador en la muestra, antes o después de la transformación. Las funciones sqrt, log, tanh, etc. actúan sobre los datos. El histograma simplemente muestra el resultado. Por lo tanto, las dos etapas son independientes. En primer lugar, se transforma (o no) la serie y, a continuación, se dibuja su histograma para ver si la entropía ha cambiado.
Transformar un indicador que se ha vuelto más bien monótono (log, sqrt) no suele cambiar la puntuación. En cambio, las transformaciones no monótonas (tanh que satura) cambian el orden de ciertos puntos. Esto significa que ciertas transformaciones preparan mejor el terreno para crear interacciones no lineales.
El histograma construido por el script es simplemente una herramienta de diagnóstico visual. Muestra cómo se distribuyen los valores del indicador en la muestra antes o después de la transformación. Las funciones sqrt, log, tanh, etc. afectan a los datos. El histograma simplemente muestra el resultado. Así pues, las dos etapas son independientes. En primer lugar, se transforma (o no) la serie y, a continuación, se representa su histograma para ver si la entropía ha cambiado.
Vale, ya he pillado el punto. Originalmente estaba pensando en otra cosa.
La transformación de un exponente que se ha convertido en bastante monótona (log, sqrt) a menudo no cambia el resultado. En cambio, las transformaciones no monotónicas (tanh, saturates) cambian el orden de ciertos puntos. Esto significa que ciertas transformaciones preparan mejor el terreno para crear interacciones no lineales.
¿Cómo cambia el orden de los puntos? ¿Puede dar un ejemplo de una transformación de este tipo? Hasta ahora había entendido que había puntos ABC con valores propios en orden ascendente, y después de la transformación el orden ascendente pasó a ser, alternativamente, BAC.
Vale, ahora entiendo la idea. Originalmente estaba pensando en otra cosa.
¿Cómo cambia el orden de los puntos? ¿Puedes dar un ejemplo de tal transformación? Hasta ahora he entendido que hay puntos ABC con valores propios en orden ascendente, y que tras la transformación el orden ascendente ha pasado a ser, alternativamente, BAC.
Las funciones del script (raíz, log, tanh, etc.) son todas monotónicamente crecientes. Todas conservan el orden de los puntos. Mi frase anterior era ambigua. El orden sólo cambia de ABC a BAC si se utiliza una transformación no monotónica. Por ejemplo, si no me equivoco, la función f(x)=∣x-50∣ no es monótona porque dobla el eje alrededor de x= 50. Por tanto, el orden pasa a ser BAC. Por lo tanto, el orden pasa a ser BAC. En su introducción, el autor del artículo nos remite al libro"Testing and Tuning Market Trading Systems (TTMTS) de Timothy Masters". Por mi parte, pienso hacerme con él porque, al igual que usted, aún tengo algunas dudas. Además, no estoy muy familiarizado con los modelos de aprendizaje ni con las redes neuronales. Por lo visto, es bastante fácil de encontrar en los sitios de venta en línea. Su contenido debería sernos de gran ayuda porque el artículo, por muy interesante que sea, es sin duda incompleto y/o, en cualquier caso, bastante sintético.
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Usted acepta la política del sitio web y las condiciones de uso
Artículo publicado Medimos la informatividad de los indicadores:
El aprendizaje automático se ha convertido en una técnica popular de desarrollo de estrategias. Por lo general, en el trading se presta más atención a la maximización de la rentabilidad y la precisión de los pronósticos. Al mismo tiempo, el procesamiento de los datos utilizados para la construcción de los modelos predictivos permanece en la periferia. En este artículo, analizaremos el uso del concepto de entropía para evaluar la idoneidad de los indicadores en la construcción de modelos predictivos, como se describe en el libro «Testing and Tuning Market Trading Systems» de Timothy Masters.
Como ejemplo, veremos algunas de las propiedades estadísticas de los dos indicadores analizados anteriormente.
La distribución del rango de porcentaje de Williams muestra cómo casi todos los valores se distribuyen por todo el rango. Además de ser multimodal, la distribución resulta bastante uniforme. Esta distribución es ideal y se refleja en el valor de la entropía.
Esto es diferente de la distribución de Market Facilitation Index, que tiene una cola larga. Dicho indicador no resulta adecuado para la mayoría de los algoritmos de aprendizaje y requiere una transformación de sus valores. La transformación de los valores debería provocar una mejora en la entropía relativa del indicador.
Autor: Francis Dube