[¡AVISO CERRADO!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen. No puedo ir a ningún sitio sin ti. - página 401

 
cocacoon >>:

Как из "double" значения получить время в формате datetime? И можно ли прозводить операции между 2 переменными в формате datetime? Просто TimeCurrent() возращает datetime, а остальные функции int значения.

Цель, получить отрезок начало и конец предыдущего дня по текущему времени, и на этом отрезки найти high и low.


Objetivo iHigh("SYMBOL",PERIOD_D1,1); Es el máximo del día anterior



 
Azimuth писал(а) >>

¿Puede decirme cuál es el problema? Doy dos piezas de código que cierran todas las operaciones de la misma dirección:

y la segunda:

Parece que es lo mismo, sólo que la segunda debería cerrar las operaciones empezando por la última, y la primera debería cerrar empezando por la primera.

Así, el primero funciona correctamente, todas las operaciones se cierran, pero el segundo sólo cierra la última operación y el resto no. ¿Por qué?

La lista de pedidos en la terminal es dinámica mientras que un pase en un ciclo for() será estático - si nos dijeran que pasáramos de 0 (cero) a total-1 (el número de pedidos en la lista antes de empezar a eliminar pedidos menos uno), será así. Si había 10 órdenes y empezamos desde el principio de la lista (desde la orden cero de la lista), entonces, después de haber pasado de 0 a 4, la lista de órdenes contendrá 5 órdenes y se colocarán de nuevo en las posiciones de 0 a 5. Y pasar de 5 a 9 en el bucle dará tiros en blanco, las órdenes restantes no se cerrarán ni se borrarán. La forma correcta es borrar desde el final de la lista, entonces no habrá un efecto de colapso. La figura muestra el orden de borrado de los pedidos desde el final de la lista, el tamaño de la lista disminuirá después de cada borrado/cierre, y no se perderá ningún pedido" - Extracto de Cerrar y borrar pedidos https://www.mql5.com/ru/articles/mt4

 
Gracias por la ayuda, pero sigo preguntándome cómo convertir un valor numérico normal en formato datetime.
 
cocacoon >>:
Спасибо за помощь, но все равно интересно как привести к формату datetime обычное числовое значение.

datetime TimeCurrent( )
Devuelve la última hora conocida del servidor (hora de la última cita) como número de segundos transcurridos desde las 00:00 del 1 de enero de 1970.

Se trata de un valor numérico que puede ser manipulado como el formato int. Pero para entender si se trata de datos o de tiempo, tenemos que ejecutar :

string TimeToStr( valor datetime, int mode=TIME_DATE|TIME_MINUTES)
Convierte el valor que contiene el tiempo en segundos transcurrido desde el 01.01.1970 al formato de cadena "aaaa.mm.dd hh:mi".




 
cocacoon >>:

Как из "double" значения получить время в формате datetime? И можно ли прозводить операции между 2 переменными в формате datetime? Просто TimeCurrent() возращает datetime, а остальные функции int значения.

Цель, получить отрезок начало и конец предыдущего дня по текущему времени, и на этом отрезки найти high и low.


simplemente asignar una variable datetime o int al valor de una variable double, la parte fraccionaria será descartada ...

utilice iBarShift para determinar el número de barra que corresponde al momento en que desea obtener los datos del precio

 
Ether >>:
Доброго времени суток. Есть у меня один вопрос по оператору if. Представим, что в программе идет следующий оператор - if (A && B) { ... }, где A и B - некоторые условия. Понятно, что вся логическая формула истинна только тогда, когда истин каждый его компонент. Вопрос - MQL проверяет каждый оператор на истинность или все таки проверяет истинность каждой компоненты слева направо и если есть хоть одна ложная компонента, то прерывает работу и возвращает значение истинности - ложь?

https://docs.mql4.com/ru/basis/operations/bool

El cálculo de las condiciones está completo.

 
Azimuth >>:

Сократить то можно, но проблемы это не решает. Пробовал и OrdersTotal()-1, но это без разницы. Непонятно, почему при ii++ все работает, как надо, закрываются все ордера, например 2, 5, 6 и 10, а при ii-- только 10, а остальные остаются работать. Где тут собака зарыта?

Empiece por mirar https://docs.mql4.com/ru/basis/operators/return

En cualquier caso, debería tener una orden cerrada durante todo el ciclo. Abre diez selves sin bahías y mira los resultados. El problema probablemente no esté en estos ciclos, así que indaga en otra parte.

 
splxgf >>:

https://docs.mql4.com/ru/basis/operations/bool

Вычисление условий полное.

Muchas gracias por su respuesta. No he visto esta sección en el manual.

 

¡Buenas tardes! ¡Por favor, ayuda! ¿Cómo obtener la hora y el precio a partir de las coordenadas x,y?

Estoy utilizando el módulo IdleLib dll para obtener las coordenadas x,y en el sistema de coordenadas cartesianas. Necesito obtener las coordenadas del precio del tiempo para crear un objeto de texto (OBJ_TEXT). ¿Alguien tiene un ejemplo

¿cómo crear un objeto de texto en este lugar con un clic del ratón? Lo necesito de verdad.

 
¿Alguien conoce un indicador que dibuje líneas de tendencia sobre un oscilador u otro oscilador?