Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 782
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
Tengo una idea para escribir una función que tome y desplace un array. La pregunta es cómo hacer esta función para que ella misma determine qué tipo de array es unidimensional o bidimensional, de manera que no tenga que especificar en los argumentos cada vez que el array es bidimensional o regular. Al mismo tiempo, quiero aplicar una plantilla, para no tener que especificar el tipo de la matriz.
¿Cómo puedo hacer que no tenga que especificar el tipo de matriz?
Haz una sobrecarga:
Sobrecarga para hacer:
¿La segunda dimensión puede ser dinámica?
No es dinámico, sólo se escribe como un argumento recibido, sólo hay que poner corchetes.
¿Cómo puedo implementar en un bucle (o algo más) la enumeración de las posibles variantes de la condición?
Por ejemplo, hay 2 indicadores MA y MACD, es decir, representan 3 posibles variantes de condición:
1 opción - if(iMA ...) {...};
2º escenario - if(iMACD ...) {...};
variante 3 - if(iMA ... iMACD ...) {...};
Es fácil combinar los parámetros de entrada, pero ¿cómo combinar las condiciones? Esto es especialmente útil si hay más de 2 indicadores o fórmulas
Indique los enlaces a los ejemplos, si están disponibles
¿Cómo implementar en un bucle (o de alguna otra manera) la enumeración de posibles variantes de condiciones?
Si he entendido bien, la respuesta se puede encontrar en el tema.
Hola de nuevo, de nuevo no entiendo algo obvio.
Entonces, ¿cómo pasar un array a una función después de todo?
Errores:
']' - expresión esperada
'b' - conversión de parámetros no permitida
Supongamos que sé cómo eliminar el primer error:
Func(b[3]);
Pero en este caso qué, ¿sólo se pasará el tercer elemento? No tiene sentido.
¿Cómo puedo pasar la matriz como un todo?
Gracias.
Hola de nuevo, de nuevo no entiendo algo obvio.
Entonces, ¿cómo pasar un array a una función después de todo?
Errores:
']' - expresión esperada
'b' - conversión de parámetros no permitida
Supongamos que sé cómo eliminar el primer error:
Pero en este caso qué, ¿sólo se pasará el tercer elemento? No tiene sentido.
¿Cómo puedo pasar la matriz como un todo?
Gracias.
Por favor, explique la mecánica de la variable comenzar
Este enlace parece tener informaciónhttps://www.mql5.com/ru/docs/basis/function/events, pero o no lo entiendo o no lo he encontrado. No puedo entender cuál es el valor por defecto al principio y cómo cambia a medida que pasan los ciclos en los indicadores
Por ejemplo, sé que return() dentro de la función OnCalculate() asigna el valor de retorno a la variable prev_calculated y se utilizará en los cálculos en la siguiente llamada de OnCalculate(), es decir, en el siguiente tick
Por favor, describa con las mismas palabras sencillas la mecánica de la variable begin dentro de la función OnCalculate()
Buenas tardes.
Me pueden decir por qué la función OnTick no escribe datos en el archivo usando este código:
//=== escribir datos en un archivo ===
h1=FileOpen("test_bar.csv",FILE_CSV|FILE_WRITE|FILE_READ,",");
FileSeek(h1, 0, SEEK_END);
FileWrite(h1, TimeToStr(Time[1],TIME_DATE|TIME_MINUTES),i,Open[1],High[1],Low[1],Close[1], Parabola57Up, ");
FileClose(h1);
Y eso es durante las pruebas de historia. Cuando el Asesor Experto está trabajando en línea, sigue grabando.
Gracias
¿Cómo puedo implementar en un bucle (o algo más) la enumeración de las posibles variantes de la condición?
Por ejemplo, hay 2 indicadores MA y MACD, es decir, representan 3 posibles variantes de condición:
1 opción - if(iMA ...) {...};
2º escenario - if(iMACD ...) {...};
variante 3 - if(iMA ... iMACD ...) {...};
Es fácil combinar los parámetros de entrada, pero ¿cómo combinar las condiciones? Esto es especialmente útil si hay más de 2 indicadores o fórmulas
Dame algunos enlaces a ejemplos si los tienes.
Quiero haceruna auto-optimización, pero no sólo por los parámetros de entrada de los indicadores. Lo entiendo
Pero, ¿cómo hacer unbuclede condiciones? Porejemplo, hay 3 indicadores (no consideramos la selección de parámetros de entrada en el bucle para simplificar) y son 7 posibles combinaciones de condiciones/combinaciones
Por ejemplo, las tres primeras condiciones tienen un indicador
1) if(indicator #1 ...) {...};
2) if(indicator #2 ...) {...};
3) if(indicator #3....) {...};
Las segundas tres condiciones sobre dos indicadores son
4) if(#1... && #2 ...) {...};
5) if(#1 ... && #3 ...) {...};
6) if(#2 ... && #3 ...) {...};
Y en la última séptima condición los tres indicadores disponibles
7) if(#1 ... && #2 ... && #3 ...) { ...};
Y si también es posible, sería bueno hacer un bucle con la enumeración de condiciones lógicas. Por ejemplo, no escriba && || > < == y así sucesivamente, sino un bucle
. Estaría bien si pudiéramos escribir todas las variantes posibles manualmente y el EA combinara y comprobara todas las variantes posibles de los parámetros de entrada, indicadores combinados o individuales y condiciones lógicas.