← К каталогу
Исходный код · ID 1403

true fractal mtf.mq5

Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

Индикатор для MetaTrader 4, рассчитывающий и отображающий уровни фракталов Билла Уильямса на графике в виде стрелок. Верхний буфер показывает фрактальные максимумы (зелёные стрелки), нижний — фрактальные минимумы (оранжевые стрелки). Поддерживает многофреймовый анализ, позволяя рассчитывать значения индикатора на указанном таймфрейме независимо от текущего периода графика.

Настройки программы

НастройкаОписание
TimeFrame Таймфрейм — Выбор периода для расчёта значений индикатора при многофреймовом анализе.
Level Уровень — Параметр, определяющий глубину поиска экстремумов при расчёте фракталов.
FractalOnFirstBar Фрактал на первом баре — Включает или отключает расчёт фракталов на первом баре истории.
Получить полный код

Поиск по коду файла

#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Lime
#property indicator_color2 OrangeRed

extern string TimeFrame         = "Current time frame";   
extern int    Level             = 5;
extern bool   FractalOnFirstBar = true;

double Upper[];
double Lower[];

string indicatorFileName;
bool   returnBars;
int    timeFrame;

int init()
  {
      // код доступен только после оплаты
   }

int start()
{
      // код доступен только после оплаты
   }
   int counted_bars=IndicatorCounted();
      if(counted_bars<0) return(-1);
      if(counted_bars>0) counted_bars--;
           int limit=MathMin(Bars-counted_bars,Bars-1);
           if (returnBars) { Upper[0] = limit+1; return(0); }

            if (timeFrame!=Period())
            {
               int shift = -1; if (FractalOnFirstBar) shift=1;
               limit = MathMax(limit,MathMin(Bars-1,iCustom(NULL,timeFrame,indicatorFileName,"returnBars",0,0)*timeFrame/Period()));
               for (int i=limit; i>=0; i--)
               {
                  int y = iBarShift(NULL,timeFrame,Time[i]);   
                  int x = iBarShift(NULL,timeFrame,Time[i+shift]);               
                  if (x!=y)
                  {
                     Upper[i] = iCu

Показано первые 50% кода (символов: 2222)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
222,20₽ ≈ $2.72