Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 85
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
En el camino surgieron un par de preguntas más:
1. hay una cadena:
datetime ProvTimeX1=ObjectGetInteger(0, "Y="+IntegerToString(y,0,''),OBJPROP_TIME);
El compilador lo desaprueba, escribiendo"posible pérdida de datos debido a la conversión de tipos". ¿Qué ocurre aquí?
2. ¿Cómo pone mql5 los datos en arrays y los distribuye, en qué dirección?
En el camino surgieron un par de preguntas más:
1. hay una cadena:
datetime ProvTimeX1=ObjectGetInteger(0, "Y="+IntegerToString(y,0,''),OBJPROP_TIME);
El compilador lo desaprueba, escribiendo"posible pérdida de datos debido a la conversión de tipos". ¿Qué ocurre aquí?
Bien, es correcto, estás intentando escribir en la variable datetime un valor largo devuelto por ObjectGetInteger. Haz la conversión de tipo.
La dirección es siempre la misma - desde el principio (el índice es cero) hasta el final, PERO si no se especifica la indexación con la función ArraySetAsSeries. Si la pregunta es sobre la indexación.
Buenas tardes, no puedo dividir los números, el resultado es 0.0
¿Por qué?
Buenas tardes, no puedo dividir los números, el resultado es 0.0
¿Por qué?
Documentación >>> Conversión de tipos
>>Documentación >>> Conversión de tipos
Es una estupidez por supuesto, que haya que añadir algo para cambiar algo, alguna calculadora sin puntos está bien y no necesita especificar qué tipo de datos, pero bueno, la segunda forma es añadir ".0" al final del entero
por lo que la expresión correcta sería así.
Por cierto, en algún lenguaje de programación vio una variable para que el terminal selecciona su tipo, tal vez fue sólo para los datos numéricos, pero todavía cómodo, no está implementado aquí, he tratado de encontrar en la documentación - no pudo encontrar?En la versión 4: datetime TimeX2=Time[0]+18000; - se aumenta el valor del tiempo en 5 velas hacia adelante
Ahora en 5 al escribir:
Al depurar da error de desbordamiento de array y apunta a la línea dedatetime TimeX2=Topen[0]+18000;
Por favor, indíqueme cómo conseguir el mismo resultado en el 5 que en el 4.
Adenda: Está escrito correctamente, sólo cometí un error - en OnInit el array estaba vacío.
En la versión 4: datetime TimeX2=Time[0]+18000; - se aumenta el valor del tiempo en 5 velas hacia adelante
Ahora en 5 al escribir:
Al depurar da error de desbordamiento de array y apunta a la línea dedatetime TimeX2=Topen[0]+18000;
Por favor, indíqueme cómo conseguir el mismo resultado en el 5 que en el 4.
He encontrado un problema con el dibujo de los niveles.
Lo comprobé con Print() y obtuve resultados de cálculo normales "Ejemplo: (GBPUSD,H1) 0.0152 i 1.5911 i 1.59682 i 2013.01.20 22:00:00 i 2013.01.22 09:46:40" pero no dibuja estos niveles. Comprobando en el terminal a través de la"Lista de objetos", no están ahí. Por favor, indíqueme cuál es el problema. ¿En qué me equivoco?Tengo problemas para dibujar los niveles.
Lo comprobé con Print() y obtuve resultados de cálculo normales "Ejemplo: (GBPUSD,H1) 0.0152 i 1.5911 i 1.59682 i 2013.01.20 22:00:00 i 2013.01.22 09:46:40" pero no dibuja estos niveles. Comprobando en el terminal a través de la"Lista de objetos", no están ahí. Por favor, indíqueme cuál es el problema. ¿En qué me equivoco?