Старая версия советников - страница 3

 
Ihor Herasko #:
Нужно историю котировок и заново закачать на полную глубину М1, а на основании М1 сгенерировать все остальные ТФ.

Пробовал, не помогло.

Maxim Kuznetsov #:

ChartRedraw() !!!

Где ?

Понять бы что это ещё.

Maxim Kuznetsov #:

а вообще не поленитесь и перепишите ЭТО для новых версий, его даже читать сложно.

Код устарел сильно более 5-ти лет назад. 

Ясно. Спасибо за информацию. Если бы лень только, таких знаний нет.

 
Ramil Sungatov #:

Пробовал, не помогло.

Понять бы что это ещё.

Ясно. Спасибо за информацию. Если бы лень только, таких знаний нет.

Добавить вызов ChartRedraw() в конец всех функций создающих,удаляющих или изменяющих графические объекты. За деталями - см. справочник MQL

и использование старинного start() делает индикатор ещё и тормозным-тормозным - он на каждый тик пересчитывает уровни, хотя они в течении суток не меняются. То есть надо делать свою функцию OnDayClose "закрылся день" и в ней уже рисовать уровни. Много переделывать. Но если для себя любимого, то можно и поразбираться

 
Dz Mak #:
Ничего там не устарело,просто написан очень каряво на скорую руку видимо .Одни массивы ненужные.Кому надо пусть сам и переписывает

Даже нет #property strict

Это уже говорит о многом. 

 
Vitaly Muzichenko #:

Даже нет #property strict

Это уже говорит о многом. 

Тогда актуальность многих бесплатных индикаторов на MQL5 теряется, раз они устарели и отображаются некорректно, а то и вовсе не работают.

 
Ramil Sungatov #:

Пробовал, не помогло.

Каким именно образом пробовали? Там алгоритм действий нетривиальный. Вам он точно известен?

 
Ihor Herasko #:

Каким именно образом пробовали? Там алгоритм действий нетривиальный. Вам он точно известен?

Через архив котировок. А разве не так?


 
Ramil Sungatov #:

Через архив котировок. А разве не так?

Не так.

Нужно:

  1. Открыть по финансовому инструменту только график М1. Графиков с другими ТФ быть не должно, иначе при запуске терминала по ним произойдет закачка котировок, которые, возможно, будут рассогласованы с данными М1.
  2. Через пункт меню "Сервис" - "Настройки" во вкладке  "Графики"  установить как можно большее значение параметров "Макс. баров в истории" и "Макс. баров в окне". Например, 1 000 000. Это позволит закачать историю по М1 глубиной порядка двух лет. Правда, большинство брокеров дают 2-3 месяца, иногда до года. 
  3. Закрыть терминал.
  4. В папке терминала history \<имя сервера> удалить все hst-файлы того финансового инструмента, с которым работаете. Например, для EURUSD это будут файлы с именами EURUSD1.hst, EURUSD5.hst, EURUSD240.hst и т. д.
  5. Загрузить терминал. 
  6. На графике финансового инструмента выключить автопрокрутку и смещение, зажать клавишу Home. Это вызовет принудительную закачку котировок. Закачку можно будет считать завершенной, когда дальнейшее нажатие Home не будет приводить к уменьшению даты в левом нижнем углу графика.
  7. Запустить на графике штатный скрипт PeriodConverter. Первый раз со значением параметра "Period multiplier factor", равным 5 (генерация ТФ М5). Подождать окончания работы скрипта, ожидая во вкладке "Эксперты" сообщения типа "249 record(s) written". После этого можно удалить скрипт и запустить его с другим значением параметра. Следующим значением параметра будет 15 (генерация ТФ М15), затем 30, 60, 240, 1440, 10080 и 43200.

В итоге будет получена согласованная история котировок по всем ТФ. Можно переключаться на другие ТФ.

Этот способ также подходит для создания добротной истории котировок перед работой тестера стратегий.

 
Ihor Herasko #:
Этот способ также подходит для создания добротной истории котировок перед работой тестера стратегий.

Спасибо, но не помогло. Сделал всё как описано по инструкции.

Надо сам индикатор Мюррея переделывать под текущий билд, а я пока разберусь как это сделать, пол жизни уйдёт, времени нет столько.

 
Ramil Sungatov #:

Спасибо, но не помогло. Сделал всё как описано по инструкции.

Надо сам индикатор Мюррея переделывать под текущий билд, а я пока разберусь как это сделать, пол жизни уйдёт, времени нет столько.

Боюсь, что и это не поможет. Обновился до билда 1425 (сервер Meta Quotes) и запустил индикатор. Все в порядке, работает:

Так что причина в чем-то ином. Поэтому я и думал в направлении кривых котировок. Других идей пока нет. 

В качестве последнего шанса, предлагаю попробовать подставить котировки с сервера Meta Quotes. Файл hst для EURUSD прилагаю. С ним нужно проделать все то же самое, что и для согласования графиков.

Файлы:
EURUSD1.zip  769 kb
 
Ihor Herasko #:
Так что причина в чем-то ином. Поэтому я и думал в направлении кривых котировок. Других идей пока нет.

Если не затруднит, скиньте, пожалуйста, индикатор Мюррея который у вас на графике.

В общем у меня три МТ4 от разных брокеров. Попробовал на другом обновиться до билда 1425, та же картина.