в скрипте понятно, можно запрашивать пока "чудом" не найдет, но для индикатора не допустимо.
кстати вспомнил что приходилось самому писать функцию, т.к. встроенная не справлялась для индикатора
//--------------------------------------------------------------------------+//= Ищет индекс массива MqlRates по времени//= Протестировано 28,12,2011//= для прохода по 4 000 800 баров Скопировано USDJPY//= ошибок = 0 GetTickCount 2 200 мс.//= ВОЗВРАТИТ -1 в случае ошибки + сообщение Алерт//--------------------------------------------------------------------------+int save_indexs=0;
//+------------------------------------------------------------------+//| |//+------------------------------------------------------------------+int FindIndex(datetime find,MqlRates &xxxxxx[])
{
int size_mql=ArraySize(xxxxxx);
//проверим находится ли время в массиве, и есть ли где искатьif(size_mql<=0){Alert("ggg");return(-1);}
if(find>xxxxxx[0].time)return(0);
if(find<=xxxxxx[size_mql-1].time)return(size_mql-1);
//а может лежит рядом?//проверим по скорости с глоб. перем.for(int i=save_indexs+1;i>=save_indexs-1 && i>=0;i--)
if(i<size_mql)
if(find==xxxxxx[i].time)
return(i);
//результат с применением ошибок = 0 GetTickCount 843 мс.//результат без применения ошибок = 0 GetTickCount 3 744 мс.//начнемсint kolvo=size_mql,
start_save=size_mql-1,
end_save=0;
while(!IsStopped())
{
//градация поиска +1 для плавающей запятой, учесть все не ошибиться, дойдет до - минусовint grad=kolvo/StringLen(IntegerToString(kolvo))+1;
if(grad<10)grad=1;
//for(int start=start_save,karetka=start-grad; start>=end_save; start=karetka,karetka=start-grad)
{
//karetka может выходить за размер массif(karetka<0)karetka=0;
if(find>=xxxxxx[start].time && find<=xxxxxx[karetka].time)
{
kolvo=start-karetka+1;
start_save=start;
end_save=karetka;
if(start==karetka+1){save_indexs=karetka;return(karetka);}
break;//for
}
}
}
return(-1);
}
//+------------------------------------------------------------------+
кажись ошибка в поиске бара по времени в функ CopyClose (и в других тоже значит).
....
прошло два года, а воз и нынче там, странно.
это не баг, это фича (с)
ф-ии CopyXXX берут данные из соответствующих буферов, а если в буфере данных нет (чужой символ и\или таймфрейм отличный от текущего), то будет ошибка. Тем не менее, в этом случае запускается процесс формирования буферов и если через некоторое (sic!) время вновь вызвать CopyXXX, то результат может быть будет получен. В индикаторах Sleep нельзя использовать, поэтому мучаться нужно через таймер, т. к. на следующий тик не приходится расчитывать (выходные и неликвидные инструменты тому виной)
Спасибо! Но вопрос я поставил неверно, т.к. теперь ещё силнее заутался... Если не затруднит - ещё пара уточняющих вопросов:
1) Зачем?
2) И почему именно на 14?
:)
Спасибо! Но вопрос я поставил неверно, т.к. теперь ещё силнее заутался... Если не затруднит - ещё пара уточняющих вопросов:
1) Зачем?
2) И почему именно на 14?
:)
кажись ошибка в поиске бара по времени в функ CopyClose (и в других тоже значит).
при копировании одного бара "чужого" символа, данной фукцией, происходит ошибка копирования, хоть и на открытом рядом окне этот бар есть.
в скрипте понятно, можно запрашивать пока "чудом" не найдет, но для индикатора не допустимо.
кстати вспомнил что приходилось самому писать функцию, т.к. встроенная не справлялась для индикатора
прошло два года, а воз и нынче там, странно.
кажись ошибка в поиске бара по времени в функ CopyClose (и в других тоже значит).
....
прошло два года, а воз и нынче там, странно.
это не баг, это фича (с)
ф-ии CopyXXX берут данные из соответствующих буферов, а если в буфере данных нет (чужой символ и\или таймфрейм отличный от текущего), то будет ошибка. Тем не менее, в этом случае запускается процесс формирования буферов и если через некоторое (sic!) время вновь вызвать CopyXXX, то результат может быть будет получен. В индикаторах Sleep нельзя использовать, поэтому мучаться нужно через таймер, т. к. на следующий тик не приходится расчитывать (выходные и неликвидные инструменты тому виной)
Не могу войти в хранилище через сайт, при вводе логина пароля вновь появляется окошко для ввода логина и пароля.
Так же не могу ни чего извлечь через MetaEditor пишет:
Логин пароль введены правильно
Подскажите в чём причина?
Не могу войти в хранилище через сайт, при вводе логина пароля вновь появляется окошко для ввода логина и пароля.
Так же не могу ни чего извлечь через MetaEditor пишет:
Логин пароль введены правильно
Подскажите в чём причина?
Может меняли пароль, был там такой баг.
Может меняли пароль, был там такой баг.
Не могу войти в хранилище через сайт, при вводе логина пароля вновь появляется окошко для ввода логина и пароля.
Так же не могу ни чего извлечь через MetaEditor пишет:
Логин пароль введены правильно
Подскажите в чём причина?
Варианты: