Нужна помощь начинающему

 

Всех поздравляю с Рождеством и Новым 2009 годом, годом быка, больше позитивных баев, здоровья и успехов в делах!

В инклюде на вычисление различных торговых критериев на комбинациях МА, индикаторах (Аллигатор, сстох и т.д.) все работает, советник тестируется на истории, открывает ордера, работает в режиме реального времени и т.д. Но при подключении в инклюд стратегии, основанной на правиле 4-х недель Д.Мерфи: 1. цена закрытия выше макс цены за последние 20 дней - Открытие Buy, 2.цена закрытия ниже мин цены за последние 20 дней
- Открытие Sell, 3. цена закрытия ниже мин цены за последние 10 дней - Закрытие Buy, 4. цена закрытия выше макс цены за последние 10 дней - Закрытие Sell, все компилируется, но советник на истории (закачана вся) не работает, ордера не открываются, хотя условия были, старт истории с 2000г и по наст. время. Может у кого-нибудь будет возможность подсказать возможные причины либо изложить какие-нибудь мысли по вопросу? Сам советник - базовый, с учебника.


//--------------------------------------------------------------------
// Criterion.mqh
// Правило 4-х недель
//--------------------------------------------------------------- 1 --
// Функция вычисления торговых критериев.
// Возвращаемые значения:
// 10 - открытие Buy  
// 20 - открытие Sell 
// 11 - закрытие Buy
// 21 - закрытие Sell
// 0 - значимых критериев нет
// -1 - используется другой финансовый инструмент
//--------------------------------------------------------------- 2 --
// Внешние переменные:
extern int i, // Индекс бара for max min  
  Counted_bars1=20, // Количество просчитанных баров (20 дней) 
  Counted_bars2=10; // Количество просчитанных баров (10 дней) 
  //--------------------------------------------------------------- 3 --
 int Criterion() // Пользовательская функция
  {
  string Sym="EURUSD";
  if (Sym!=Symbol()) // Если не наш фин. инструмент
  {
  Inform(16); // Сообщение..
  return(-1); // .. и выход
  }
  double
  Max_20=Bid, Min_20=Bid, // нач знач max за период 20 дней 
  Max_10=Bid, Min_10=Bid; // нач знач min за период 10 дней
   
  //--------------------------------------------------------------- 4 --
  // Параметры торговых критериев:
   
  for(i=0;i<=Counted_bars1-1;i++) // цикл для 20 дней 
  {  
  if (Low[i]< Min_20) // Если < известного  
  Min_20=Low[i]; // то оно и будет мин  
  if (High[i] > Max_20) // Если > известного  
  Max_20=High[i]; // то оно и будет макс  
  }  
  
  for(i=0;i<=Counted_bars2-1;i++) // цикл для 10 дней 
  {  
  if (Low[i]< Min_10) // Если < известного  
  Min_10=Low[i]; // то оно и будет мин  
  if (High[i] > Max_10) // Если > известного  
  Max_10=High[i]; // то оно и будет макс  
  }  

  //--------------------------------------------------------------- 5 --
   
  // Вычисление торговых критериев
   
  if(Close[0]>Max_20) //цена закрытия выше макс цены за последние 20 дней
  return(10); // Открытие Buy  
   
   
  if (Close[0]<Min_20) //цена закрытия ниже мин цены за последние 20 дней
  return(20); // Открытие Sell
   
  if(Close[0]<Min_10) //цена закрытия ниже мин цены за последние 10 дней
  return(11); // Закрытие Buy  
  
   
  if(Close[0]> Max_10) //цена закрытия выше макс цены за последние 10 дней
  return(21); // Закрытие Sell  
   
   
   
  
   
   
//--------------------------------------------------------------- 6 --
  return(0); // Выход из пользов. функции
  }
//--------------------------------------------------------------- 7 --