Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
ЗЫ. на всякий случай, я не теоретик программирования с мировым именем, по этому моё мнение можно не учитывать.
Дык я тоже чайнеГ ещё тот... )))
Однако моё понимание таково что описано выше.
В первом случае мы просто получаем что надо,
а во втором ещё и контролируем (или ожидаем) факт исполнения функции.
Еще здесь необходимо задействовать функцию SeriesInfoInteger. Но эта функция выдает лонги, которые не преобразовываются во время. Поэтому не стал применять функцию SeriesInfoInteger в приведенном коде, как недоработанную.... И, как результат, получили нерабочий код. Без SeriesInfoInteger грамотно (без ошибки) не скопируешь, а SeriesInfoInteger не работает ...
В этом месте поподробнее. Покажите код, который иллюстрирует, что SeriesInfoInteger не работает. Кто и какую ошибку выдаёт?
stringo писал(а) >>
В этом месте поподробнее. Покажите код, который иллюстрирует, что SeriesInfoInteger не работает. Кто и какую ошибку выдаёт?
Странная ошибка: запрашиваемая история не найдена.
В терминал закачивается история минуток. Из минуток формируются все остальные таймфреймы.
То есть история минуток есть ВСЕГДА! А ошибка сообщает, что этой истории нет. Запрос-то делается о минутном таймфрейме хотя и на графике M3 ?
И вдобавок, каким образом значения BARS_FIRSTDATE и BARS_SERIES_FIRSTDATE, возвращаемые вышеозначенной функцией, из типа long перевести в datetime?
И вдобавок, каким образом значения BARS_FIRSTDATE и BARS_SERIES_FIRSTDATE, возвращаемые вышеозначенной функцией, из типа long перевести в datetime?
Попробуйте так -
Смотрите раздел "Справочник MQL5 / Основы языка / Типы данных / Приведение типов "
Попробуйте так -
Смотрите раздел "Справочник MQL5 / Основы языка / Типы данных / Приведение типов "
Тип long и datetime - это один и тот же тип, 8-байтовое целое. Разделение сделано в основном для функции Print, чтобы без лишних телодвижений распечатывать даты-время
Неужели? Теоретически так. Но практически у меня не получилось вывести полученные значения BARS_FIRSTDATE и BARS_SERIES_FIRSTDATE в формате даты. Сегодня еще попробую задать произвольное число типа лонг и вывести в формате даты - 2009 10.06 10:45.
Неужели? Теоретически так. Но практически у меня не получилось вывести полученные значения BARS_FIRSTDATE и BARS_SERIES_FIRSTDATE в формате даты. Сегодня еще попробую задать произвольное число типа лонг и вывести в формате даты - 2009 10.06 10:45.
Рашид выше показал, как пользоваться явным приведением типов.
Рашид выше показал, как пользоваться явным приведением типов.
Спасибо. Попробую так. Я ранее пробовал примерно так:
long t;
SeriesInfoInteger(Symbol(),Period_M1,BARS_SERIES_FIRSTDATE,t));
Print("time =", (datetime)t);
=======
Ничего не получалось.
Вечером еще раз попробую, может, были какие-то нюансы, которые сейчас трудно вспомнить.