Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
так всегда было
Он тик эксперта не работает. Да и всё остальное на чате. Таймер и пользовательские события правда не проверял.
Тоже из справки
... Служебные файлы в формате HCC исполняют роль источника данных для построения ценовых данных по запрошенным таймфреймам в формате HC. Данные в формате HC являются таймсериями, максимально подготовленными для быстрого доступа. Они создаются только по запросу графика или mql5-программы в объеме, не превышающем значения параметра "Max bars in charts", и сохраняются для дальнейшего использования в файлах с расширением hc.
Для экономии ресурсов данные по таймфрейму загружаются и хранятся в оперативной памяти только по необходимости, при длительном отсутствии обращений к данным происходит выгрузка их из оперативной памяти с сохранением в файл. Для каждого таймфрейма данные подготавливаются независимо от наличия уже готовых данных для других таймфреймов. Правила формирования и доступности данных одинаковы для всех таймфреймов. Т.е. не смотря на то, что единицей хранения данных в формате HCC является минутный бар, наличие данных в формате HCC не означает наличие и доступность в том же объеме данных таймфрейма М1 в формате HC.
:)
Так кто-же их загрузит в память, как не SeriesInfoInteger(symbol,PERIOD_M1,SERIES_TERMINAL_FIRSTDATE,first_date)
Другой-то функции нет!!!!
Зачем лезть на сервер, если данные ЕСТЬ в терминале????
:)
Так кто-же их загрузит в память, как не SeriesInfoInteger(symbol,PERIOD_M1,SERIES_TERMINAL_FIRSTDATE,first_date)
Другой-то функции нет!!!!
Зачем лезть на сервер, если данные ЕСТЬ в терминале????
Потому что именно она ПЕРВЫЙ раз обращается конкретно к этой серии.
Я делал цикл:
Угадайте какой результат?
Всё правильно - она и загружает подготавливает то что есть. Но из-за того что любое промедление в индикаторе тормозит чат со всем что на нем висит - в индикаторах сделали так, что если серия к моменту вызова не готова - функция вернет ошибку и ИНИЦИАЛИЗИРУЕТ подготовку данных. Через какое-то время она уже не будет возвращать ошибку. Это у Вас в логах и происходит.
Я делал цикл:
Угадайте какой результат?
Это время может занимать или несколько вызовов OnCalculate() или даже несколько секунд. Так работает машинка для зарабатывания денег. Именно поэтому вызывать, что-либо связанное с получением данных из OnInit() индикатора - неправильно.
Все правильно - цикл ОЧЕНЬ быстрый. не успевает подготовиться... Я понимаю что с точки зрения разработчика (нас) это АДСКИЙ АД :) , но к нему придется привыкнуть...
Кстати Sleep() в индикаторах не работает
:)
Все правильно - цикл ОЧЕНЬ быстрый. не успевает подготовиться... Я понимаю что с точки зрения разработчика (нас) это АДСКИЙ АД :) , но к нему придется привыкнуть...
Кстати Sleep() в индикаторах не работает
:)
Спасибо, Андрей!
Вопрос не к Вам, а риторический:
А для чего тогда
SeriesInfoInteger( symbol, PERIOD_M1, SERIES_TERMINAL_FIRSTDATE, first_date ) ????
Не получив ответа, я должен обращаться на сервер (данных-то в терминале действительно может не быть) !
Всем спасибо. До чукчи дошло....
... и "респект" MQ!
P/S Больше не буду читать справку...
komposter!
Когда Вы что-то не понимаете или заблуждаетесь, то Вас никто не называет чукчей.
С чего бы это?
Когда я не понимаю, я стараюсь слышать, что мне говорят.
А вы упорно игнорировали опыт многих людей, которые сталкивались с подобной проблемой и решили ее.
Это я и назвал "чукча писатель".
А для чего тогда
SeriesInfoInteger( symbol, PERIOD_M1, SERIES_TERMINAL_FIRSTDATE, first_date ) ????
Не получив ответа, я должен обращаться на сервер (данных-то в терминале действительно может не быть) !
Все правильно - цикл ОЧЕНЬ быстрый. не успевает подготовиться... Я понимаю что с точки зрения разработчика (нас) это АДСКИЙ АД :) , но к нему придется привыкнуть...
Кстати Sleep() в индикаторах не работает
:)
Кстати, а то мешало разработчикам, при идентификаторе SERIES_TERMINAL_FIRSTDATE
возвращать:
-1 - данных нет
0 - данные есть, но не готовы
> 0 - сама дата
Кстати, а то мешало разработчикам, при идентификаторе SERIES_TERMINAL_FIRSTDATE
возвращать:
-1 - данных нет
0 - данные есть, но не готовы
> 0 - сама дата
А какая разница между "нет" и "не готовы" для программы (и программиста)?
Если данные не готовы, будет ошибка.
А может эта информация тоже не доступна моментально, поэтому ее и не показывают.