ObjectGetInteger
Возвращает значение соответствующего свойства объекта в каком формате?.
Свойство объекта должно быть типов datetime, int, color, bool или char.
//+------------------------------------------------------------------+//| Script program start function |//+------------------------------------------------------------------+voidOnStart()
{
//---int start=5;
int count=2;
datetime _time[];
datetime _timeM1[];
int ntime=CopyTime(_Symbol,_Period,start,count,_time);//узнаем время 5 и 4 бара, нумерация как в тайм серииif(ntime>0)
{
Print("_time[0]=",_time[0]);
Print("_time[1]=",_time[1]);
datetime endtime=_time[1]-PeriodSeconds(PERIOD_M1);
int nM1=CopyTime(_Symbol,PERIOD_M1,_time[0],endtime,_timeM1);//получаем массив содержащий время минуток и число минутокif(nM1>0)
{
Print("Число минуток в период с ",_time[0]," по ",endtime," =",nM1);
}
int nbarsM1=Bars(_Symbol,PERIOD_M1,_time[0],endtime);//проверимся
Print("Число минуток =",nbarsM1);
}
}
//+------------------------------------------------------------------+
Можно так.
И у Вас что то много секунд в часе, целых 72000! Мне бы столько в реальности )).
В реальном коде еще нужно проверять синхронизацию меньшего таймфрейма.
Silent:
Что - К? К инициализирована как false. По ходу присвоили true. Потом проверяем - if (К). Что - К?...
покурите доки для начала.
поймите, что bool в if - это не только true/false. для компилятора все что не 0 это true
https://www.mql5.com/ru/docs/basis/types/integer/boolconst
покурите доки для начала.
поймите, что bool в if- это не только true/false. для компилятора все что не 0 это true
https://www.mql5.com/ru/docs/basis/types/integer/boolconst
Пытаюсь получить время/цену выделенной трендовой линии
для
получаю предупреждение
Но
Вопрос 1: как правильно преобразовать?
Для
получаю не время второй точки линии, а время начала истории по символу
Вопрос 2: почему, если
ObjectGetTimeByValue Возвращает значение времени для указанного значения цены указанного объекта.с
игрался всяко, удалял, циферки разные ставил - время объекта не получаю.
Если имеется ввиду идентификатор линии - как его получить, не могу найти соответствующую функцию.
Upd
вообще, похоже, к индикаторам относится, тогда почему не отражено в документации. Так то
ObjectGetTimeByValueв разделе графических объектов.
Хм. Избавился от предупреждения, объявив как long
long TL1_Old_Time,TL2_Old_Time;Это надо понимать, что
для
TL1_Old_Time=ObjectGetInteger(0,n,OBJPROP_TIME);
получаю предупреждение
possible loss of data due to type conversion
TL1_Old_Time=(datetime)ObjectGetInteger(0,n,OBJPROP_TIME)
такая кривая в языке функция
TL1_Old_Time=(datetime)ObjectGetInteger(0,n,OBJPROP_TIME)
такая кривая в языке функция
Т. е., для функций можно (а в моём случае - нужно) задавать преобразование?
Спасибо.
Т. е., для функций можно (а в моём случае - нужно) задавать преобразование?
Получается, что нужно. Но также можно игнорировать предупреждения, что в ряде случаев не совсем удобно
Ок.
А игнорировать не вариант, и журнал ошибок закидывает чем попало при компиляции, и потенциально проблемное место - значит, надо ответы искать :)
Надо получить кол-во баров минут со старшего тф.
От Bars получаю непонятную цифру. Запускаю на H1, получаю 1201. На M1 - 6.
Подскажите, где проблема
Можно так.
И у Вас что то много секунд в часе, целых 72000! Мне бы столько в реальности )).
В реальном коде еще нужно проверять синхронизацию меньшего таймфрейма.