Сервисдеск. Жалобы, предложения. - страница 2

 
Оооочень долго арбитраж жду. 3-юю неделю(2-ую просили подождать,ладно).
 
Renat Fatkhullin:
В четверке будем исправлять - переборщили с агрессивной выгрузкой неиспользуемых чартов.

Ренат, Вы читали мой начальный пост? Почему он не используемый? К нему запросы идут каждый тик, гораздо чаще, чем раз в 10 секунд. Или не используемый = не открытый? Поясните пожалуйста.

Однако очень рад, что Вы прислушались к моим словам. 

 
Ilya Malev:
Если МТ5-функцию SeriesInfoInteger не использовать, а вместо неё пользоваться старыми функциями МТ4, iBars, iTime, MarketInfo и т.д., то проблема остается?

Используя конструкцию iTime( _Symbol, period, Bars( _Symbol, period )-1 ) можно получить время первой доступной свечи на чарте.

Но, чтобы получить время первой свечи на сервере, я что-то не придумал какую конструкцию написать.

С использованием SeriesInfoInteger все делается просто: SeriesInfoInteger( _Symbol, period, SERIES_SERVER_FIRSTDATE );

 
Alexey Kozitsyn:
Ренат, Вы читали мой начальный пост? Почему он не используемый? К нему запросы идут каждый тик, гораздо чаще, чем раз в 10 секунд. Или не используемый = не открытый? Поясните пожалуйста.

Вот поэтому я и пишу "переборщили с агрессивной выгрузкой".

Обязательно разберемся.

 
Alexey Kozitsyn:

Используя конструкцию iTime( _Symbol, period, Bars( _Symbol, period )-1 ) можно получить время первой доступной свечи на чарте.

Но, чтобы получить время первой свечи на сервере, я что-то не придумал какую конструкцию написать.

С использованием SeriesInfoInteger все делается просто: SeriesInfoInteger( _Symbol, period, SERIES_SERVER_FIRSTDATE );

А разве МТ4 перед обращением к таймсерии не подгружает её полностью? То есть если сделать обращение iBars к "неродной" таймсерии в скрипте МТ4 в цикле с промежутком в секунду, то результат будет отличаться?
 
Ilya Malev:
А разве МТ4 перед обращением к таймсерии не подгружает её полностью? То есть если сделать обращение iBar к "незнакомой" таймсерии в скрипте МТ4 с промежутком в секунду, то результат будет отличаться?

Смотрите. Можно ограничить доступность истории настройкой терминала Макс. баров в окне. Тогда на сервере будет истории больше, чем на чарте. Все логично.

Если же обращаться через функцию SeriesInfoInteger(), то, дабы постоянно иметь доступ к данным, если эта функция вернет 0 - вызвать функцию iTime() с нужного символа/периода. Но это, во-первых, нигде не задокументировано, во-вторых, не корректно, т.к. гарантировано получить данные из функции, можно только с помощью другой функции. Тогда зачем нужна эта функция?!

Но, как я уже сказал, свойство SERIES_SERVER_FIRSTDATE, похоже, не дублируется. А значит хотя бы поэтому, функция SeriesInfo.. нужна. 

 
Alexey Kozitsyn:

Если же обращаться через функцию SeriesInfoInteger(), то, дабы постоянно иметь доступ к данным, если эта функция вернет 0 - вызвать функцию iTime() с нужного символа/периода.

Я бы понял актуальность этой проблемы если бы вдруг вместо получения данных с искомого ТФ функции МТ4 - iHigh, iLow, ... iBars и т.д. вернули ошибку (0). Функции МТ5 в Мт4 просто не нужны, там нет асинхронной загрузки данных, насколько я понимаю. И нет смысла все усложнять.
 
Ilya Malev:
Я бы понял актуальность этой проблемы если бы вдруг вместо получения данных с искомого ТФ функции МТ4 - iHigh, iLow, ... iBars и т.д. вернули ошибку (0). Функции МТ5 в Мт4 просто не нужны, там нет асинхронной загрузки данных, насколько я понимаю. И нет смысла все усложнять.

Есть или нет смысла - вопрос другой.

Но еще раз говорю, что я не знаю способа получить дату первого доступного бара на сервере по символу, кроме как не через функцию SeriesInfoInteger(). Может быть Вы знаете? 

 
Alexey Kozitsyn:

Есть или нет смысла - вопрос другой.

Но еще раз говорю, что я не знаю способа получить дату первого доступного бара на сервере по символу, кроме как не через функцию SeriesInfoInteger(). Может быть Вы знаете? 

А зачем Вам её получать?
 
Ilya Malev:
А зачем Вам её получать?

Хотя бы потому, что она заявлена в документации, и я хочу ее использовать.

Для закачки и проверки истории, по аналогии с МТ5: https://www.mql5.com/ru/docs/series/timeseries_access

Повторю вопрос, Вы знаете, как можно средствами старого mql4 получить эту дату? 

Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным
Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным
  • www.mql5.com
Доступ к таймсериям и индикаторам / Организация доступа к данным - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
Причина обращения: