Discusión sobre el artículo "R cuadrado como evaluación de la calidad de la curva del balance de la estrategia" - página 2
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
Figura 19: Distribución de LR-Correlación para 10.000 paseos aleatorios
Figura 20: Distribución de R^2 para 10.000 paseos aleatorios
¿No veo cómo R^2 puede tomar los valores negativos que se muestran en el segundo gráfico? Sí y hay dudas con el primer gráfico. Si la regresión lineal se traza correctamente, parece que el RQ (LR) de Pearson no debería ser negativo. Pero en el gráfico no lo es. ¿En qué me equivoco?
Entendido. No me equivoco en ninguna parte, es sólo que los gráficos tienen R^2 y LR personalizados - la multiplicación por -1 del valor real se produce si el último elemento de la serie numérica es menor que el primero. Sería bueno escribir sobre ello antes de los gráficos.
En el documento, la regresión lineal se considera con un error - a través de CLinReg::LRLine.
Prueba
Resultado
El signo es incorrecto. La implementación alternativa de LR (CAlglib::LRBuild + CAlglib::LRUnpack) cuenta correctamente:
Los gráficos de las distribuciones LR Correlación y R^2 para los 10.000 ejemplos independientes que se presentan en el artículo muestran que R^2 != LR^2.
No entiendo por qué el segundo grado de la distribución "cóncava" original la hace "plana".Aquí es donde se demostró que estaba equivocado. Para mí, la afirmación no es obvia en absoluto
Lo sorprendente es que mediante una simple acción matemática (elevando al segundo grado ) hemos eliminado por completo los efectos marginales no deseados de la distribución.
Así que decidí confirmarlo experimentalmente mediante una animación (que no se fíen de mi palabra)
Parece ser que es así.
Fig. 21: Valor R^2 como criterio de optimización personalizado
¿Dónde en MQL LR Correlación, que está en la imagen? ¿O este y muchos otros parámetros se calculan sólo para ejecuciones individuales, por lo que están ausentes en ENUM_STATISTICS?
Si es así, sugieren para calcular este parámetro de las consideraciones razonables mencionados en este artículo: por la equidad sin MM y al cuadrado.
ZY Medí cuánto tiempo se tarda en calcular GetCustomR para una matriz de un millón de valores (como la equidad) - 2,5 segundos. Eso es mucho tiempo. Todo se gasta en el cálculo de LR(CAlglib::LRBuild + CAlglib::LRUnpack). Pero a veces curvado LR a través de CLinReg::LRLine es un orden de magnitud más rápido. Si lo dopeas, llega a ser tolerable en Optimizaciones como criterio de Optimización.
¡Oh! Siempre pensé que era 100. Gracias, interesante artículo.
Sí, es un número que he encontrado en libros de renombre sobre R y estadística. Pero no he podido encontrar el enlace, lo siento.
También es habitual realizar pruebas de significación sobre el coeficiente de regresión. Incluso Alglib las tiene :-)
Obviamente, las pruebas son para una distribución normal. Nosotros tenemos una distribución uniforme.
PearsonCorrelationSignificance(), SpearmanRankCorrelationSignificance().
Gracias por el enlace, lo recordaré.
ZY Afirmación errónea
R^2 no es más que la correlación entre un gráfico y su modelo lineal
Sí, efectivamente, un craso error de redacción. Me sorprende haber escrito tal cosa. Lo corregiré.
Cuando nos fijamos en todos los demás MQL-códigos, usted no entiende por qué se dan, porque son completamente ilegibles sin el conocimiento CStrategy
CStrategy es necesario sólo para recoger los requisitos. El código principal, como se señaló con razón, es el cálculo real de R2.
El código para el cálculo de la "equidad", adecuado para R^2. Está escrito en estilo MT4, no es difícil traducirlo a MT5....
Vamos a estudiarlo.
Estoy de acuerdo con esto, todo lo demas tendra que ser arrancado de clases para agregarlo a tu sistema... seria mejor tener todo en f-iases separadas o un includnik separado.
Toma tu cálculo de equidad (o el código presentado por fxsaber) como un doble-array e insértalo en la función de cálculo R^2. No necesitas arrancar nada, no necesitas usar clases y CStrategy.
No entiendo cómo R^2 puede tomar valores negativos como se muestra en el segundo gráfico. También hay dudas con el primer gráfico. Si la regresión lineal se construye correctamente, parece que la R^2 de Pearson no debería ser negativa. Pero en el gráfico no lo es. ¿En qué me equivoco?
Entendido. No me equivoco en ninguna parte, es sólo que los gráficos tienen R^2 y LR personalizados - la multiplicación por -1 del valor real se produce si el último elemento de la serie numérica es menor que el primero. Sería bueno escribir sobre esto antes de los gráficos.
Está oculto en el artículo:
Nuestro script calcula tanto la Correlación LR como R^2. Veremos la diferencia entre ellas un poco más adelante. Hay una pequeña adición a la secuencia de comandos. Multiplicaremos el coeficiente de correlación resultante por el signo final del gráfico sintético. Si acabamos con un resultado menor que cero, la correlación será negativa, si es mayor - positiva. Esto se hace para separar rápida y fácilmente los resultados negativos de los positivos sin tener que recurrir a otras estadísticas. Así es como funciona la Correlación LR en MetaTrader 5, y R^2 se construirá de acuerdo con el mismo principio.