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

fibprogression.mq5

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

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

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

О программе

FibProgression — это пользовательский индикатор для MetaTrader 5, который отрисовывает на графике горизонтальные линии, позиционированные на уровнях, образованных по принципу прогрессии на основе чисел Фибоначчи, относительно заданного ценового уровня.

Индикатор позволяет настраивать количество отображаемых линий, их направление (вверх или вниз от базового уровня), цвет и толщину. Линии создаются при первом запуске и сохраняются на графике до удаления индикатора.

Настройки задаются через внешние параметры, доступные в диалоге свойств индикатора. При некорректных значениях толщины или количества линий используются значения по умолчанию.

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

НастройкаОписание
highLow Базовый ценовой уровень, от которого отсчитываются горизонтальные линии прогрессии.
fibProgLines Количество горизонтальных линий прогрессии, создаваемых на графике. Допустимые значения от 2 до 20; при выходе за пределы устанавливается значение по умолчанию — 6.
progressionUpward Переключатель направления построения линий. Если активен, линии строятся вверх от базового уровня; если не активен — вниз.
color1 Цвет линий прогрессии, отображаемых на графике.
lineThickness Толщина линий прогрессии в пунктах. Допустимые значения от 1 до 5; при выходе за пределы устанавливается значение по умолчанию — 1.
Получить полный код

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

#property indicator_chart_window

extern double highLow           = 0.0;
extern int    fibProgLines      = 6;
extern bool   progressionUpward = FALSE;
extern color  color1            = Yellow;
extern int    lineThickness     = 1;

int  fibProgressStart = 0;
bool onceThrough      = FALSE;

int init()
{
      // код доступен только после оплаты
   }
   int i, startIndx = 0;

   if((lineThickness < 1) || (lineThickness > 5 ))
      lineThickness = 1;
   if((fibProgLines < 2) || (fibProgLines > 20))
      fibProgLines = 6;
   while(TRUE)
   {
      for(fibProgressStart = startIndx; ; fibProgressStart++)
         if(ObjectFind("Prog" + fibProgressStart) == -1)
            break;
      for(i = fibProgressStart; i < (fibProgressStart + fibProgLines); i++)
         if(ObjectFind("Prog" + i) == 0)
            break;
      if(i == (fibProgressStart + fibProgLines))
         break;
      else
         startIndx += (fibProgressStart + fibProgLines);
   

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

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

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

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

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

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

Стоимость полного кода
126,60₽ ≈ $1.55