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
А
desgraciadamente, esta observación es desafortunada... también se nota...
SHOOTER ¿podría decirnos brevemente qué es exactamente lo que optimizan los grupos de parámetros
- x
- y
- z
- X
- Y
- Z
Probablemente entienda algo, pero todavía no me entra en la cabeza la imagen completa.Aquí hay otra rareza, o quizás sólo un fallo
Resulta que si ahora F == 0 y no hay ninguna posición abierta, entonces podemos entrar primero en el primer bloque y luego en el segundo, lo que llevará posteriormente a resultados incorrectos.
¿O me estoy perdiendo algo?
Pero probablemente no. No podemos entrar en los dos bloques a la vez porque no nos dejan entrar.
no nos deja entrar.
No me gusta criticar las cosas que funcionan. Sólo voy a criticar el código:
Spsb. No me tomo las críticas como tales, sino como una guía para la acción, es decir, para leer al menos un poco del manual de MQL
Aceptado, pero probablemente en futuros trabajos. Conseguí esta "escritura" después de otros proyectos más globales y debido a la escasa resolución de mi monitor de 12 pulgadas. Su versión es indudablemente mejor, pero tendría que desplazarme constantemente hacia atrás y hacia delante por el listado. Pero como no estoy aquí por mí, lo diré de nuevo: lo tendré en cuenta.
¡Vean lo anterior! Aunque me gustan los nombres, hay que acostumbrarse a ellos, como nos acostumbramos a las abreviaturas GOELRO, OBHSS, IMHO, etc. Si te fijas, he dado a algunas variables nombres más o menos significativos, pero he abreviado todas las vocales.
Todavía no he conseguido controlar las variables. Cuando escribes código desde cero no tienes ni idea de dónde estará una variable, así que casi todo es global.
empíricamente no es así, voy a recordar donde lo encontré - creo que fue en la función BuSll ()
Estoy de acuerdo, corrijámoslo, de nuevo, cuando escribes un bloque desde cero no tienes ni idea aún de los parámetros que vas a pasar a la función, y luego el ojo se "ensucia" y no prestas atención a esas "nimiedades" ))
SHOOTER ¿podría decirnos brevemente qué es exactamente lo que optimizan los grupos de parámetros
El principal motor y guía del Asesor Experto es la notoria)) función G12(). En esta función se calculan las direcciones comerciales preferidas en función de los indicadores. Pero una dirección no es suficiente: necesitamos puntos de entrada. En los "clásicos", si en un marco de tiempo se buscan patterrones, o el propio indicador se ajusta si hay parámetros externos, si hay dos o más, se optimizan también. He probado otro método nuevo para mí NN
Aquí esta función
double prcptrnAC(int q1,int q2,int q3,int q4,int pr,int at)
{doble qw = (q1-50)+((q2-50)*iA_C(pr)+(q3-50)*iA_C(2*pr)+(q4-50)*iA_C(3*pr))/iA_C(1);
si (MathAbs(qw)>at) return(qw);si no, return(0);}
una especie de perceptrón y diseñado para conseguir.... algo. Aquí en detalle hay algunas respuestas a muchas preguntas, y mejor de lo que yo hubiera respondido. Cómo encontrar una estrategia de trading rentable' y Recetas de Redes Neuronales. Hay que reconocer que yo mismo lo he leído todo en diagonal y me he puesto más interesante estudiando el trabajo de otros, véase más abajo.
Este EA es "creado sobre la base de" MTS "red neuronal + MACD" por Batohov, MTS "Сombo", "Combo_Right" & AI por Reshetov, PROphet por PraVedNiK,RSI_Test por zerkmax, auto_optimization.mqh por Igor Malcev y algunos otros.
Aquí hay otra rareza, o quizás sólo un fallo
Resulta que si ahora F == 0 y no hay ninguna posición abierta, entonces podemos entrar primero en el primer bloque y luego en el segundo, lo que llevará posteriormente a resultados incorrectos.
¿O tal vez no entiendo algo?
F == 0 sólo en las dos primeras etapas de optimización, cuando además de Delta_G12 hay Trd_Up_X y Trd_Dn_Y.
Si los seis pasos se superan correctamente y se utilizan secuencialmente los archivos de configuración de optimización, entonces F debería ser siempre igual a 1.
Y encontré mi otro error al revisar el código. Veo que las últimas versiones funcionan peor. Este error apareció en las versiones 7 y 9.
¿Alguien se ha dado cuenta?
Aquí esta función
double prcptrnAC(int q1,int q2,int q3,int q4,int pr,int at)
{doble qw = (q1-50)+((q2-50)*iA_C(pr)+(q3-50)*iA_C(2*pr)+(q4-50)*iA_C(3*pr))/iA_C(1);
si (MathAbs(qw)>at) return(qw);si no, return(0);}
una especie de perceptrón y que pretende conseguir.... algo.
Esto es un poco misterioso para mí en este momento. Por supuesto, entiendo lo que hace y para qué sirve. Pero la fórmula en sí es algo inusual.
El resultado del trabajo de las neuronas debe ser un número que sume las entradas de las neuronas multiplicadas por los pesos de estas entradas.
Es decir, lógicamente debería ser algo como lo siguiente:
Está claro que ambas son alguna función de 4 variables (¿o son 8?) que interviene en la búsqueda del máximo (equilibrio resultante), pero sigue siendo raro :)
Esta función sigue siendo un misterio para mí. Por supuesto, entiendo lo que hace y por qué lo hace. Pero la fórmula en sí es algo inusual.
El resultado del trabajo de las neuronas debe ser un número que sume las entradas de las neuronas multiplicadas por los pesos de estas entradas.
Así que, lógicamente, debería ser algo así:
Está claro que ambas son alguna función de 4 variables (¿o son 8?) que interviene en la búsqueda del máximo (equilibrio resultante), pero sigue siendo raro :)
Has dado una versión simplificada de la función, al menos así lo entiendo yo
Aquí es donde se discute
'MTS 'Sombo'.
Para ser justos, no es una red neuronal en su forma más pura. En primer lugar, carece de un valor umbral sin el cual la capacidad de división del NS es mucho menor. En segundo lugar, en mi opinión, merece la pena añadir un umbral de activación de la salida. ¿Qué significa? Para que la señal vuelva a operar sólo si se supera el umbral de activación. Por ejemplo:
double res = (w1 * a1 + w2 * a2 + w3 * a3 + w4 * a4 // )/Close[0] - T); // Dividir por Close[0] para unificar
if (MathAbs(res) > ActivityThreshold) return(res); // ActivityThreshold -- umbral de activación
Las versiones anteriores utilizaban Close(0) en la fórmula del perceptrón z1, pero en 7 y 9 Close(1). ¿Es esto de lo que estamos hablando?
No, no creo que se trate de eso, al fin y al cabo hay una norma para trabajar en barras formadas.
Pero el hecho de que la bandera Flq=false; una para la compra y otra para la venta influye mucho en la división de estas direcciones de negociación y, por tanto, en los resultados.