![MQL5 - Lenguaje de estrategias comerciales para el terminal de cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
He probado el Asesor Experto ExpertMACD estándar en el probador de estrategias, que se entrega junto con MT5, genera errores:
2013.03.30 19:18:09 Core 2 genetic pass (0, 15) probado con error "OnInit failed" en 46 ms
2013.03.30 19:18:08 Core 1 genetic pass (0, 13) probado con error "OnInit failed" en 32 ms
2013.03.30 19:18:07 Core 2 genetic pass (0, 5) probado con error "OnInit failed" en 0 ms
Buscando he descubierto que el error está en el módulo: "SignalMACD" al optimizar los periodos MACD Rápido y Lento (al marcar las casillas en los parámetros del probador de estrategias).
¿Alguien se ha encontrado con este problema y cómo solucionarlo? (cuando sólo hay un tic funciona de alguna manera, pero hay errores en cuanto se comprueban dos tic)
Establezca un rango diferente de cambios Lento y Rápido. El error desaparecerá. Puedes ignorarlo.
¿Es posible escribir una función con un número variable de parámetros en MQL5? ¿Por ejemplo, como en StringConcatenate(...) o Print(...)?
¿Es posible escribir en MQL5 una función con un número variable de parámetros? Por ejemplo, como en StringConcatenate(...) o Print(...)?
Por ejemplo, puedes hacer un array cuyo tamaño será igual al número de tus parámetros como parámetro.
Estoy interesado en un número variable de parámetros como en StringConcatenate. Algo así: string Concatenate(string s, ...); ¿Es posible?
Lo mismo es posible. Se pueden pasar hasta 64 parámetros a una función.
Lo mismo es posible. Se pueden pasar hasta 64 parámetros a una función.
¿Y podemos obtener tipos arbitrarios para todos los argumentos sólo por sobrecarga? Es decir, no sólo se puede pasar una cadena, sino también un doble a una función, por ejemplo. cadena s = Concatenate("abc",2.0, "def");
¿Y los tipos arbitrarios para todos los argumentos sólo pueden lograrse mediante la sobrecarga? Es decir, no sólo se puede pasar a la función una cadena, sino también un doble, por ejemplo. cadena s = Concatenate("abc",2.0, "def");