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

FiboFan_8_TRO_MODIFIED_VERSION

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

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

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

О программе

Индикатор для MetaTrader 4, который рисует на графике два объекта типа Fibonacci Fan с настраиваемыми уровнями ретрейсмента. Вычисляет верхний и нижний каналы на основе экстремумов цен и отображает фан-линии между найденными точками.

Основные параметры включают выбор таймфрейма, количество баров слева и справа для поиска экстремумов, а также процентный фильтр для коррекции уровней. Пользователь может задать цвета, толщину и стиль для двух фан-объектов, а также пять числовых уровней Фибоначчи с их описаниями.

При инициализации индикатор определяет начальные точки для отрисовки каналов, а в процессе работы пересчитывает значения буферов и обновляет графические объекты на графике. При удалении индикатора с графика созданные объекты удаляются.

Индикатор не содержит торговой логики и не отправляет ордера. Работает исключительно как аналитический инструмент визуализации уровней.

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

НастройкаОписание
TimeFrame Таймфрейм — Таймфрейм, на котором производится расчёт индикатора
nLeft Баров слева — Количество баров слева от текущей точки для поиска экстремумов
nRight Баров справа — Количество баров справа от текущей точки для поиска экстремумов
filter Фильтр — Процентный фильтр для коррекции расчёта уровней канала
Fibo1Color Цвет фана 1 — Цвет первого объекта Fibonacci Fan на графике
Fibo1Width Толщина фана 1 — Толщина линий первого объекта Fibonacci Fan
Fibo1Style Стиль фана 1 — Стиль линий первого объекта Fibonacci Fan
Fibo2Color Цвет фана 2 — Цвет второго объекта Fibonacci Fan на графике
Fibo2Width Толщина фана 2 — Толщина линий второго объекта Fibonacci Fan
Fibo2Style Стиль фана 2 — Стиль линий второго объекта Fibonacci Fan
FibLevel1 Уровень Фибоначчи 1 — Числовое значение первого уровня Фибоначчи для фан-объекта
FibLevel2 Уровень Фибоначчи 2 — Числовое значение второго уровня Фибоначчи для фан-объекта
FibLevel3 Уровень Фибоначчи 3 — Числовое значение третьего уровня Фибоначчи для фан-объекта
FibLevel4 Уровень Фибоначчи 4 — Числовое значение четвёртого уровня Фибоначчи для фан-объекта
FibLevel5 Уровень Фибоначчи 5 — Числовое значение пятого уровня Фибоначчи для фан-объекта
Получить полный код

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

#property indicator_chart_window

#property indicator_buffers 0
#property indicator_color1 Black
#property indicator_color2 Black
#property indicator_color3 Black
#property indicator_color4 Black
#property indicator_color5 Black
#property indicator_color6 Black
#property indicator_color7 Black
#property indicator_color8 Black

extern int TimeFrame=0;
extern int nLeft=8;
extern int nRight=8;
extern int filter=10;

extern color   Fibo1Color = Red;
extern int     Fibo1Width = 1;
extern int     Fibo1Style = 2;

extern color   Fibo2Color = Blue;
extern int     Fibo2Width = 1;
extern int     Fibo2Style = 2;

extern double  FibLevel1 = 0.236;
extern double  FibLevel2 = 0.382;
extern double  FibLevel3 = 0.500;
extern double  FibLevel4 = 0.618;
extern double  FibLevel5 = 0.764;

double UpBuffer[];
double DnBuffer[];
double f_2[];
double f_3[];
double f_4[];
double f_5[];
double f_6[];

string fibo,fibo2;

int draw_begin1=0, draw_begin2=0, d_b3=0;

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

int start()
  {
      // код доступен только после оплаты
   }
   double UpStage=0.0,DnStage=0.0;
   int i,j,fRange,Range=nLeft+nRight+1;
   int counted_bars=IndicatorCounted();

   for(i=iBars(NULL,TimeFrame)-1-counted_bars-nLeft;i>=nRight;i--)
   {

      if(iHigh(NULL,TimeFrame,i)>=iHigh(NULL,TimeFrame,Highest(NULL,TimeFrame,MODE_HIGH,Range,i-nRight)))
      {

         fRange=nvnLeft(i,nLeft)+nvnRight(i,nRight)+1;

         if(iHigh(NULL,TimeFrame,i)>=iHigh(NULL,TimeFrame,Highest(NULL,TimeFrame,MODE_HIGH,fRange,i-nvnRight(i,nRight))))
         {
            UpStage=iHigh(NULL,TimeFrame,i);

         }
         else
         {
            if(iHigh(NULL,TimeFrame,i)<=UpBuffer[i+1])
            {
               UpStage=UpBuffer[i+1];

            }
            else
            {
               UpStage=nfUp(i);

            }
         }
      }
      else
      {

         if(iHigh(NULL,TimeFrame,i)<=UpBuffer[i+1])
         {
            UpStage=UpBuffer[i+1];

         }
         else
         {
            UpStage=nfUp(i);

         }
      }

      if(iLow(NULL,TimeFrame,i)<=iLow(NULL,TimeFrame,Lowest(NULL,TimeFrame,MODE_LOW,Range,i-nRight)))
      {
         fRange=nvnLeft(i,nLeft)+nvnRight(i,nRight)+1;

         if(iLow(NULL,TimeFrame,i)<=iLow(NULL,TimeFrame,Lowest(NULL,TimeFrame,MODE_HIGH,fRange,i-nvnRight(i,nRight)))) 
         {
            DnStage=iLow(NULL,TimeFrame,i);
         }
         else
         {
            if(iLow(NULL,TimeFrame,i)>=DnBuffer[i+1])
            {
               DnStage=DnBuffer[i+1];
            }
            else
            {
               DnStage=nfDn(i);
            }
         }
      }
      else
      {
         if(iLow(NULL,TimeFrame,i)>=DnBuffer[i+1])
         {
            DnStage=DnBuffer[i+1];
         }
         else
         {
            DnStage=nfDn(i);
         }
      }
      UpBuffer[i]=UpStage;
      DnBuffer[i]=DnStage;

      f_2[i]=NormalizeDouble(DnBuffer[i]+(UpBuffer[i]-DnBuffer[i])/6,4);
      f_3[i]=NormalizeDouble(DnBuffer[i]+(UpBuffer[i]-DnBuffer[i])/3,4);
      f_4[i]=NormalizeDouble(DnBuffer[i]+(UpBuffer[i]-DnBuffer[i])/2,4);
      f_5[i]=NormalizeDouble(DnBuffer[i]+(UpBuffer[i]-DnBuffer[i])*2/3,4);
      f_6[i]=NormalizeDouble(DnBuffer[i]+(UpBuffer[i]-DnBuffer[i])*5/6,4); 

   }//????? ????? for(i=iBars(NULL,TimeFrame)-counted_bars-nLeft;i>=nRight;i--)
   for(i=nRight-1;i>=0;i--)
   {
      if(iHigh(NULL,TimeFrame,i)<=UpBuffer[i+1])
      {
         UpStage=UpBuffer[i+1];
      }
      else
      {
         UpStage=nfUp(i);
      }
      if(iLow(NULL,TimeFrame,i)>=DnBuffer[i+1])
      {
         DnStage=DnBuffer[i+1];
      }
      else
      {
      

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

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

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

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

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

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

Стоимость полного кода
1 039₽ ≈ $12.70