Вопрос: Подскажите, как найти индекс бара ближайшего Лоу Фрактала?

Ответ(sergeev): Для этого можно воспользоваться индикатором iFractals . Он возвращает значение 0, если на баре нет фрактала и значение цены фрактала если он есть. Так как вам необходимо найти Лоу фракал, то в функцию iFractals следует передавать MODE_LOWER.

Для поиска фрактала проходим в цикле по барам и первое не 0 значение и будет искомым фракталом.

пример:

double frac;
for (int i=3; i<Bars; i++)
{

   frac=iFractals(Symbol(), Period(), MODE_LOWER, i); if (frac>0) break;
}
if (frac>0) Print("Индекс ближайшего Лоу Фрактала: ", i);


пример организации отдельной функции
:

//---------------------------------------------------------------   GetLastFrac
int GetLastFrac(string smb, int tf, int iB)
{

   int n=iBars(smb, tf);  double frac;
   for (int i=iB; i<n; i++)
   {
      frac=iFractals(smb, tf, MODE_LOWER, i); if (frac>0) return(i);

   }
   return(-1);
}
.....
Print("Ближайший бар с Лоу фракталом: ", GetLastFrac("EURUSD", 60, 3));

теги: фрактал, iBars, числовые константы, вызов индикаторов

смотри также на форуме:
- как обратиться к пользовательскому индикатору
- как узнать значение буфера на закрытом баре