Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Зарегистрируйся на MQL5.community, чтобы опубликовать тему на форуме
Eugeny Kotovschikov
1070
Eugeny Kotovschikov 2016.07.09 09:21 

Кто сталкивался, или как можно обойти?

Задача: Пишу заказчику индикатор на основе уже готового (строит объемы). В новом нужно циклом пройтись по выбранным пользователем парам. Соотв-но на каждом OnCalculate я циклом меняю Handle, на новую пару, и копирую в массив. Но вот проблема, когда цикл доходит до пары отличной от той на которой тестируется индикатор, при копировании выдает ошибку 4806 - "Запрошенные данные не найдены". Пробовал "отпускать" индикатор, инициализировать массив, дело не в этом. У тестера нет данных о других валютах кроме той на которой проходит тестирование. Посоветуйте как обойти, или как реализовать задачу по другому?

 

bool iterates()
  {
   int Handle;
   for(int i=0;i<ArraySize(pearsNames);i++)
     {
      int Handle=0;
      Handle=iCustom(pearsNames[i],PERIOD_CURRENT,"Volume_factor_v1",InpVCoef,InpMaxBars);
      if(CopyBuffer(Handle,0,0,3,upBuffer)==-1)
        {
         Print(GetLastError());
         break;  // ошибка, завершаем работу функции
         return(false);
        }
      if(CopyBuffer(Handle,1,0,3,dwBuffer)==-1)
        {
         break;  // ошибка, завершаем работу функции
         return(false);
        }
      IndicatorRelease(Handle);
      ArrayInitialize(upBuffer,0);
     }
   return(true);
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий