SeriesInfoInteger(_Symbol,_Period,SERIES_SYNCHRONIZED)) и SymbolIsSynchronized(_Symbol) - страница 2
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Это всё понятно. Но вопрос в теме звучит так:
Чем отличается:
Опять за рыбу деньги.
Прочитали материал?
Хранение промежуточных данных
Полученные с сервера данные автоматически распаковываются и сохраняются в специальном промежуточном формате HCC. Данные по каждому символу пишутся в отдельную папку каталог_терминала\bases\имя_сервера\history\имя_символа. Например, данные по символу EURUSD с торгового сервера MetaQuotes-Demo будут находиться в папке каталаг_терминала\bases\MetaQuotes-Demo\history\EURUSD\.
Данные записываются в файлы с расширением .hcc, каждый файл хранит данные минутных баров за год. Например, файл 2009.hcc в папке EURUSD содержит минутные бары по символу EURUSD за 2009 год. Эти файлы используются для подготовки ценовых данных по всем таймфреймам и не предназначены для прямого доступа.
Получение данных нужного таймфрейма из промежуточных данных
Служебные файлы в формате HCC исполняют роль источника данных для построения ценовых данных по запрошенным таймфреймам в формате HC. Данные в формате HC являются таймсериями, максимально подготовленными для быстрого доступа. Они создаются только по запросу графика или mql5-программы в объеме, не превышающем значения параметра "Max bars in charts", и сохраняются для дальнейшего использования в файлах с расширением hc.
Для экономии ресурсов данные по таймфрейму загружаются и хранятся в оперативной памяти только по необходимости, при длительном отсутствии обращений к данным происходит выгрузка их из оперативной памяти с сохранением в файл. Для каждого таймфрейма данные подготавливаются независимо от наличия уже готовых данных для других таймфреймов. Правила формирования и доступности данных одинаковы для всех таймфреймов. Т.е. не смотря на то, что единицей хранения данных в формате HCC является минутный бар, наличие данных в формате HCC не означает наличие и доступность в том же объеме данных таймфрейма М1 в формате HC.
Получение новых данных с сервера вызывает автоматическое обновление используемых ценовых данных в формате HC по всем таймфреймам и перерасчет всех индикаторов, которые явно используют их в качестве входных данных для расчета.
SymbolIsSynchronized(_Symbol) применяется к символу вообще, безотносительно таймфрейма (вы видите среди параметров этой функции таймфрейм?), то есть к промежуточным данным
SeriesInfoInteger(_Symbol,_Period,SERIES_SYNCHRONIZED)) применяется к таймсерии. То есть, к символу-периоду. У этой функции есть параметр таймфрейм
Опять за рыбу деньги.
Прочитали материал?
SymbolIsSynchronized(_Symbol) применяется к символу вообще, безотносительно таймфрейма (вы видите среди параметров этой функции таймфрейм?), то есть к промежуточным данным
SeriesInfoInteger(_Symbol,_Period,SERIES_SYNCHRONIZED)) применяется к таймсерии. То есть, к символу-периоду. У этой функции есть параметр таймфрейм
вся история строится из минуток, при чём тут таймфремы вообще?
Вы, по-моему, не прочитали даже то, что я тут процитировал в моём предыдущем посте
Slawa, Я всё внимательно прочёл, но ничего у меня не получается.
Задача: при первом запуске индикатора получить исторические данные по периоду старше PERIOD_CURRENT при НАЛИЧИИ символа в обзоре рынка и отсутствии ОТКРЫТОГО графика периода старше PERIOD_CURRENT. Открытие графиков с нужными периодами не желательно, всего надо получить текущий и пять старших. Итого 6.
Попытался подгрузить данные функцией int CheckLoadHistory(string symbol,ENUM_TIMEFRAMES period,datetime start_date) из документации но при первом запуске в режиме отладки получаю -5, при последующих запусках 1.
Стоит только перегрузить терминал и всё повторяется.
Что я не правильно делаю?
Чтобы не создавать вновь тему спрошу тут.
правильно ли я понимаю что если мне необходимы только бид/аск цены, пусть даже сразу по нескольким символам, то я синхронизацию могу не проверять ?
А как с этим же вопросом обстоит дело в тестере, так же могу не проверять или в тестере надо ?
Чтобы не создавать вновь тему спрошу тут.
правильно ли я понимаю что если мне необходимы только бид/аск цены, пусть даже сразу по нескольким символам, то я синхронизацию могу не проверять ?
А как с этим же вопросом обстоит дело в тестере, так же могу не проверять или в тестере надо ?