Скачать MetaTrader 5

обновление МТ привело к неработоспособности индикаторов

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
На MQL5.community есть возможность хранить исходные коды в MQL5 Storage. Попробуй сам!
moskitman
4027
moskitman 2011.05.04 07:49 

После апдейта билда 399 на 401 перестали что бы то ни было показывать индикаторы.
Индикаторы перекомпелированы (в новом билде), история подгружена, тем не менее...

Сталкивался ли кто-либо? Что делать в этом случае? Есть ли возможность "отката" на 399???

MetaQuotes
Админ
24950
Renat Fatkhullin 2011.05.04 08:02  

Можете привести код индикатора в форуме или выслать на stringo AT metaquotes.net?

Все штатные кастомные индикаторы в терминале компилируются и показываются нормально.

moskitman
4027
moskitman 2011.05.04 08:04  
да, конечно.
Файлы:
ccfp.mq4 17 kb
MetaQuotes
Админ
24950
Renat Fatkhullin 2011.05.04 08:08  
moskitman:
да, конечно.

Вот что индикатор пишет в лог:

2011.05.04 10:07:19     CCFp EURUSD,H4: initialized
2011.05.04 10:07:19     CCFp EURUSD,H4: unknown subwindow number -1 for ObjectCreate function
2011.05.04 10:07:19     CCFp EURUSD,H4: unknown subwindow number -1 for ObjectCreate function
2011.05.04 10:07:19     CCFp EURUSD,H4: unknown subwindow number -1 for ObjectCreate function
2011.05.04 10:07:19     CCFp EURUSD,H4: unknown subwindow number -1 for ObjectCreate function
2011.05.04 10:07:19     CCFp EURUSD,H4: unknown subwindow number -1 for ObjectCreate function
2011.05.04 10:07:19     CCFp EURUSD,H4: unknown subwindow number -1 for ObjectCreate function
2011.05.04 10:07:19     CCFp EURUSD,H4: unknown subwindow number -1 for ObjectCreate function
2011.05.04 10:07:19     CCFp EURUSD,H4: unknown subwindow number -1 for ObjectCreate function
2011.05.04 10:07:18     CCFp EURUSD,H4: loaded successfully

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

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

Это зависит не от версии терминала, а от подгруженной истории.

Специально проверил и на 399 билде - пока история чартов по остальным символам не подгрузилась (она автоматически загружается по требованию), индикатор показывает пустое окно. Надо индикатор писать с учетом недоступности истории, чтобы он пытался переинициализироваться до тех пор, пока не получит достаточного количества данных от других символов.

moskitman
4027
moskitman 2011.05.04 08:18  
Спасибо, но я до сих пор им нормально пользовался... Означает ли это обязательную потерю терминалом истории при смене билда?
MetaQuotes
Админ
24950
Renat Fatkhullin 2011.05.04 08:24  

В 401 билде не производилось никаких изменений в компиляторе и системе исполнения MQL4 кода.

История при апдейте принудительно не сбрасывается, но в любой момент терминал может запустить синхронизацию чартов, если обнаружит ее расхождение с серверной историей. В последних 399-401 билдах мы исправили ряд ошибок синхронизации чартов в компонентах MetaTrader 4 DataCenter, что наверняка у всех пользователей привело к пересинхронизации истории.

MTmql
8
MTmql 2011.05.04 09:51  

Добрый день.

У меня таже проблема возникла: мой индикатор (что-то на подобие Real_Time_MultiIndicator) перестал работать, при компиляции ничего не выводит (пусто), хотя в списке индикаторов присутствует.

Интересное объяснение модератора, но у меня все тот же вопрос: ЧТО ДЕЛАТЬ-ТО?!

И как индикатор писать с учетом недоступности истории, чтобы он пытался переинициализироваться до тех пор, пока не получит достаточного количества данных от других символов?

IgorM М
4801
IgorM М 2011.05.04 09:59  
Renat:

1.но в любой момент терминал может запустить синхронизацию чартов,

2.если обнаружит ее расхождение с серверной историей.

3.В последних 399-401 билдах мы исправили ряд ошибок синхронизации чартов в компонентах MetaTrader 4 DataCenter

1. в любой момент, это когда? периодичность проверок?

2.код скрипта/эксперта может узнать, что произошла такая ситуация?

3. теперь будет автоматически подгружаться история по всем ТФ на котором запущен эксперт или как и ранее только на активных(открытых) ТФ?

MetaQuotes
Админ
24950
Renat Fatkhullin 2011.05.04 10:20  
IgorM:

1. в любой момент, это когда? периодичность проверок?

2.код скрипта/эксперта может узнать, что произошла такая ситуация?

3. теперь будет автоматически подгружаться история по всем ТФ на котором запущен эксперт или как и ранее только на активных(открытых) ТФ?

Стратегия работы с историей (подгрузка, инициализация и тд) не менялась уже билдов сто.

Поэтому мой вердикт - паника на ровном месте (ничего не менялось), а индикаторы изначально неправильно написаны (режим работы экспертописателя "мне повезет!") .

IgorM М
4801
IgorM М 2011.05.04 10:31  
Renat:

Стратегия работы с историей (подгрузка, инициализация и тд) не менялась уже билдов сто.

ответьте плз на мой предидущий вопрос, хотя бы на пп.3, т.к. ранее я пользовался следующей ф-цией:

//_____________________________________________________________________
bool loadhistory(){
   double high[];
   int err = GetLastError();
   bool result = true;
   for(int i=0;i<9;i++){
         ArrayCopySeries(high,MODE_HIGH,NULL,period[i]);
         err = GetLastError();
         if (err > 0) result = false;
         Sleep(100);
   }
return(result);
}
//_____________________________________________________________________

и запускал эту ф-цию в своих кодах раз в минуту, чтобы быть уверенным, что эксперт может получить доступ к любому ТФ в ходе своей работы, в тестере эта ф-ция выдает ошибку - отключаю

теперь история по всем ТФ будет подкачиваться автоматически?

Vadim Zhunko
5226
Vadim Zhunko 2011.05.04 10:35  
IgorM:

ответьте плз на мой предидущий вопрос, хотя бы на пп.3, т.к. ранее я пользовался следующей ф-цией:

и запускал эту ф-цию в своих кодах раз в минуту, чтобы быть уверенным, что эксперт может получить доступ к любому ТФ в ходе своей работы, в тестере эта ф-ция выдает ошибку - отключаю

теперь история по всем ТФ будет подкачиваться автоматически?

Раньше тоже пользовался подобным способом. Он очень вреден. Сильно портит историю. После такой подкачки история имеет множество дыр. Такой способ не гарантирует правильную подкачку.
1234
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий