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

! 24arrow.mq5

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

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

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

О программе

Это пользовательский индикатор для MetaTrader 5, исходный код которого написан на MQL5. Индикатор отображает на графике ценовые разворотные точки в виде стрелок: восходящие сигналы рисуются одним цветом, нисходящие — другим. Расчёт ведётся по данным выбранного инструмента и текущего таймфрейма, а результаты выводятся в отдельном окне графика.

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

НастройкаОписание
ExtDepth Целочисленный параметр, задающий глубину поиска локальных экстремумов цены при расчёте индикатора.
ExtDeviation Целочисленный параметр, задающий допустимое отклонение цены при определении разворотных точек.
ExtBackstep Целочисленный параметр, влияющий на обработку уже найденных разворотных точек при расчёте индикатора.
alertsOn Переключатель, включающий или отключающий оповещения о появлении сигналов индикатора.
alertsOnCurrent Переключатель выбора бара для проверки сигнала: текущий формирующийся бар или уже закрытый.
alertsMessage Переключатель вывода всплывающего сообщения о сигнале индикатора.
alertsNotification Переключатель отправки push-уведомления о сигнале индикатора на мобильное устройство.
alertsSound Переключатель воспроизведения звукового сигнала при появлении сигнала индикатора.
alertsEmail Переключатель отправки уведомления о сигнале индикатора по электронной почте.
Получить полный код

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

#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Lime
#property indicator_width1 4
#property indicator_color2 Red
#property indicator_width2 4

extern int ExtDepth=24;
extern int ExtDeviation=5;
extern int ExtBackstep=3;

extern bool   alertsOn            = true;
extern bool   alertsOnCurrent     = false;
extern bool   alertsMessage       = true;
extern bool   alertsNotification  = false;
extern bool   alertsSound         = true;
extern bool   alertsEmail         = false;

double ExtMapBuffer[];
double ExtMapBuffer2[];

string   previousAlert="nothing";
datetime previousTime = TimeCurrent();

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

int start()
  {
      // код доступен только после оплаты
   }
   int    shift, back,lasthighpos,lastlowpos;
   double val,res;
   double curlow,curhigh,lasthigh,lastlow;

   for(shift=Bars-ExtDepth; shift>=0; shift--)
     {
      val=Low[Lowest(NULL,0,MODE_LOW,ExtDepth,shift)];
      if(val==lastlow) val=0.0;
      else 
        { 
         lastlow=val; 
         if((Low[shift]-val)>(ExtDeviation*Point)) val=0.0;
         else
           {
            for(back=1; back<=ExtBackstep; back++)
              {
               res=ExtMapBuffer[shift+back];
               if((res!=0)&&(res>val)) ExtMapBuffer[shift+back]=0.0; 
              }
           }
        } 
      ExtMapBuffer[shift]=val;

      val=High[Highest(NULL,0,MODE_HIGH,ExtDepth,shift)];
      if(val==lasthigh) val=0.0;
      else 
        {
         lasthigh=val;
         if((val-High[shift])>(ExtDeviation*Point)) val=0.0;
         else
           {
            for(back=1; back<=ExtBackstep; back++)
              {
               res=ExtMapBuffer2[shift+back];
               if((res!=0)&&(res<val)) ExtMapBuffer2[shift+back]=0.0; 
              } 
           }
        }
      ExtMapBuffer2[shift]=val;
     }

   lasthigh=-1; lasthighpos=-1;
   lastlow=-1;  lastlowpos=-1;

   for(shift=Bars-ExtDepth; shift>=0; shift--)
     {
      curlow=ExtMapBuffer[shift];
      curhigh=E

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

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

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

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

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

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

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