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

dema macd zones amp alerts 2.mq5

Похожие материалы по тегам

! macd+.mq5MQL5 / MetaTrader 5 · 1 общих тегов!!!macd_adx.mq4MQL4 / MetaTrader 4 · 1 общих теговxauusd_gold_perfect.mq4MQL4 / MetaTrader 4 · 1 общих теговtm sniper pro.pineTradingView · 1 общих теговsource code of grid with 100 pips stop loss.mq4MQL4 / MetaTrader 4 · 1 общих теговsniper pro.mq5MQL5 / MetaTrader 5 · 1 общих тегов
Вы автор или правообладатель?

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

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

О программе

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

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

НастройкаОписание
TimeFrame Таймфрейм — Выбор таймфрейма для расчёта индикатора
FastEMA Быстрая EMA — Период быстрой экспоненциальной скользящей средней
SlowEMA Медленная EMA — Период медленной экспоненциальной скользящей средней
SignalEMA Сигнальная EMA — Период сигнальной линии
Price Цена — Тип цены для расчёта
UniqueID Уникальный идентификатор — Идентификатор для именования графических объектов на графике
ColorUp Цвет роста — Цвет зоны при сильном бычьем сигнале
ColorNeutralUp Цвет нейтрального роста — Цвет зоны при умеренном бычьем сигнале
ColorDown Цвет падения — Цвет зоны при сильном медвежьем сигнале
ColorNeutralDown Цвет нейтрального падения — Цвет зоны при умеренном медвежьем сигнале
MaxValue Максимальное значение — Верхняя граница отображаемых зон на графике
alertsOn Включить оповещения — Общий переключатель оповещений
alertsOnCurrent Оповещения текущего бара — Проверка оповещений на текущем баре
alertsMessage Оповещение сообщением — Отправка popup-сообщения при изменении сигнала
alertsSound Звуковое оповещение — Воспроизведение звука при изменении сигнала
alertsEmail Email-оповещение — Отправка email при изменении сигнала
Dummy Маркер времени — Вспомогательный параметр для привязки прямоугольников к времени
Получить полный код

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

#property indicator_chart_window
#property indicator_buffers 0

extern string TimeFrame = "current time frame";
extern int    FastEMA   = 12;
extern int    SlowEMA   = 26;
extern int    SignalEMA =  9;
extern int    Price     = PRICE_CLOSE;
extern string UniqueID  = "MACD zones";
extern color  ColorUp          = C'7,71,49';
extern color  ColorNeutralUp   = C'85,22,17';
extern color  ColorDown        = C'98,26,19';
extern color  ColorNeutralDown = C'6,55,38';
extern double MaxValue          = 200;
extern bool   alertsOn          = false;
extern bool   alertsOnCurrent   = true;
extern bool   alertsMessage     = true;
extern bool   alertsSound       = false;
extern bool   alertsEmail       = false;
extern double Dummy     = -1;

double macd[];
double signal[];
double colors[];
double times[];

int    timeFrame;
string indicatorFileName;

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

int deinit()
{
   string lookFor       = UniqueID+":";
   int    lookForLength = StringLen(lookFor);
   for (int i=ObjectsTotal()-1; i>=0; i--)
   {
      string objectName = ObjectName(i);
         if (StringSubstr(objectName,0,lookForLength) == lookFor) ObjectDelete(objectName);
   }
   return(0);
}

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

         if (timeFrame!=Period()) 
         { 
            iCustom(NULL,timeFrame,indicatorFileName,"",FastEMA,SlowEMA,SignalEMA,Price,UniqueID,ColorUp,ColorNeutralUp,ColorDown,ColorNeutralDown,MaxValue,alertsOn,alertsOnCurrent,alertsMessage,alertsSound,alertsEmail,Time[0],0,0); 
            return(0); 
         }
         else if (Dummy<=Time[0]) Dummy = Time[0];
         static bool secondTime=false;
         if (secondTime)
         {
            for (;limit<Bars; limit++) if (colors[limit]!=colors[limit+1]) break;
         }
         else secondTime=true;

      for(i = limit; i>=0 ; i--)
      {
         double price = iMA(NULL,0,1,0,MODE_SMA,Price,i);
         if (i>Bars-2)
         {
            macd[i]    = 0;
            signal[i]  = 0;
            continue;
         }

         macd[i]    = iDema(price,FastEMA,i,0)-iDema(price,SlowEMA,i,1);
         signal[i]  = iDema(macd[i],SignalEMA,i,2);
         colors[i]  = colors[i+1];
         times[i]   = times[i+1];
         string name = UniqueID+":"+Time[i];
            ObjectDelete(name);

            if (macd[i]>signal[i] && macd[i]> 0) colors[i] =  1;
            if (macd[i]>signal[i] && macd[i]< 0) colors[i] =  2;
            if (macd[i]<signal[i] && macd[i]< 0) colors[i] =  3;
            if (macd[i]<signal[i] && macd[i]> 0) colors[i] =  4;
            if (colors[i]!=colors[i+1] || i==0)
            {
               times[i]= Time[i];
               if (times[i+1]<Time[0])
               {
                  datetime lastTime = Time[i]; if (i==0) lastTime = Dummy;
                  ObjectCreate(name,OBJ_RECTANGLE,0,times[i+1],0,lastTime,MaxValue);
                     ObjectSet(name,OBJPROP_BACK,true);
                     int clr = colors[

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

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

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

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

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

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

Стоимость полного кода
472,10₽ ≈ $5.77