Написал себе либу, Включаю ее в скрипт (#include <lib.mqh>). Даже не обращаясь к модулям скрипта он при запуске зависает, даже не выполнив первой команды в процедуре start(). (Проверил командой Alert()). Такая же история с включением в советник - советник даже не отображается в логах, что запустился. Возникла проблема, когда добавил TestBasePeriod, но что там ТАКОГО?
#property library //#include <stderror.mqh> #define ERR_HISTORY_WILL_UPDATED 4066 int StringToPeriod(string Period_Mov_Str) { int Period_Mov=0; if(Period_Mov_Str=="M1") Period_Mov=PERIOD_M1; if(Period_Mov_Str=="M5") Period_Mov=PERIOD_M5; if(Period_Mov_Str=="M15") Period_Mov=PERIOD_M15; if(Period_Mov_Str=="M30") Period_Mov=PERIOD_M30; if(Period_Mov_Str=="H1") Period_Mov=PERIOD_H1; if(Period_Mov_Str=="H4") Period_Mov=PERIOD_H4; if(Period_Mov_Str=="D1") Period_Mov=PERIOD_D1; if(Period_Mov_Str=="W1") Period_Mov=PERIOD_W1; if(Period_Mov_Str=="MN1") Period_Mov=PERIOD_MN1; return(Period_Mov); } bool TestBasePeriod(string symb, int per, int sec_wait) { datetime sec_now=LocalTime(); double arr[][6]; int stat=ArrayCopyRates(arr,symb,per); if(!IsConnected()) return(false); while((stat==ERR_HISTORY_WILL_UPDATED)&&(LocalTime()<=sec_now+sec_wait)) { Sleep(2000); stat=ArrayCopyRates(arr,symb,per); } return(stat==0); }