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

rsioma_slope_mtfalerts_1.02(1).mq5

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

!!!-mt4 x-xardg-rsi.mq5MQL5 / MetaTrader 5 · 2 общих тегов!!! rsi ma simple+arrows 1.2 (mtf).mq5MQL5 / MetaTrader 5 · 2 общих теговea robofibo source v.11.2.mq4MQL4 / MetaTrader 4 · 2 общих теговsureforexhedingvonepointoneone.mq4MQL4 / MetaTrader 4 · 2 общих теговsureforexhedging 1.10 optimized.mq4MQL4 / MetaTrader 4 · 2 общих теговsureforexhedging 1.09 a (2).mq4MQL4 / MetaTrader 4 · 2 общих тегов
Вы автор или правообладатель?

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

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

О программе

Индикатор для MetaTrader 4, выполняющий анализ направления изменения RSI-OMA с поддержкой многочасовых таймфреймов. Отображает результаты расчёта в отдельном окне графика и предоставляет визуальные маркеры в виде вертикальных линий на основном графике. Поддерживает уведомления через всплывающие сообщения, звуковые сигналы и электронную почту.

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

НастройкаОписание
TimeFrame Таймфрейм — Выбор таймфрейма для анализа; может быть текущим, специальным режимом расчёта значения или возврата баров, либо указан явно.
RsiOma_Period Период RSI-OMA — Период расчёта RSI на основе сглаженной цены.
RsiOma_Price Цена RSI-OMA — Тип цены, используемый при расчёте RSI-OMA.
RsiOma_Mode Режим RSI-OMA — Метод сглаживания для расчёта RSI-OMA.
MaPeriod Период MA — Период скользящей средней, применяемой к значениям RSI.
MaType Тип MA — Метод сглаживания для скользящей средней RSI.
linesVisible Видимость линий — Включает или отключает отрисовку вертикальных линий на графике.
linesID Идентификатор линий — Префикс имени объектов для вертикальных линий.
linesOnZeroCross Линии при пересечении нуля — Отображение вертикальных линий при смене направления тренда относительно нуля.
linesOnZeroCrossUpColor Цель пересечения вверх — Цвет линии при пересечении нуля вверх.
linesOnZeroCrossDnColor Цель пересечения вниз — Цвет линии при пересечении нуля вниз.
linesOnZeroCrossStyle Стиль пересечения нуля — Стиль линии при пересечении нуля.
linesOnZeroCrossWidth Толщина пересечения нуля — Толщина линии при пересечении нуля.
linesOnSlope Линии при изменении наклона — Отображение вертикальных линий при смене направления наклона.
linesOnSlopeUpColor Цель наклона вверх — Цвет линии при изменении наклона вверх.
linesOnSlopeDnColor Цель наклона вниз — Цвет линии при изменении наклона вниз.
linesOnSlopeStyle Стиль наклона — Стиль линии при изменении наклона.
linesOnSlopeWidth Толщина наклона — Толщина линии при изменении наклона.
alertsOn Включить уведомления — Общая включение системы уведомлений.
alertsOnCurrent Уведомления на текущем баре — Применение уведомлений к текущему бару вместо предыдущего.
alertsMessage Уведомление сообщением — Вывод всплывающего сообщения при срабатывании.
alertsSound Уведомление звуком — Воспроизведение звукового файла при срабатывании.
alertsEmail Уведомление email — Отправка электронного письма при срабатывании.
soundfile Файл звука — Имя звукового файла для уведомлений.
Получить полный код

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

#property indicator_separate_window
#property indicator_buffers    3
#property indicator_color1     Lime
#property indicator_color2     Red
#property indicator_color3     Red
#property indicator_width1     5
#property indicator_width2     5
#property indicator_width3     5
#property indicator_level1     0

extern string TimeFrame               = "Current time frame";
extern int    RsiOma_Period           = 14;
extern int    RsiOma_Price            = 0;
extern int    RsiOma_Mode             = MODE_LWMA;
extern int    MaPeriod                = 10;
extern int    MaType                  = MODE_LWMA;
extern bool   linesVisible            = false;
extern string linesID                 = "Rsioma slope 1";
extern bool   linesOnZeroCross        = false;  
extern color  linesOnZeroCrossUpColor = Lime;
extern color  linesOnZeroCrossDnColor = Red;
extern int    linesOnZeroCrossStyle   = STYLE_SOLID;
extern int    linesOnZeroCrossWidth   = 3;
extern bool   linesOnSlope            = false;  
extern color  linesOnSlopeUpColor     = Lime;
extern color  linesOnSlopeDnColor     = Red;
extern int    linesOnSlopeStyle       = STYLE_SOLID;
extern int    linesOnSlopeWidth       = 3;

extern string note                    = "turn on Alert = true; turn off = false";
extern bool   alertsOn                = false;
extern bool   alertsOnCurrent         = true;
extern bool   alertsMessage           = true;
extern bool   alertsSound             = false;
extern bool   alertsEmail             = false;
extern string soundfile               = "alert2.wav";

double rsi[];
double slp[];
double slpda[];
double slpdb[];
double ma[];
double mab[];
double trend[];
double slope[];

string shortName;
string indicatorFileName;
int    timeFrame;
bool   returnBars;
bool   calculateValue;

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

int deinit()
{
   string find = linesID+":";
   for (int i=ObjectsTotal()-1; i>= 0; i--)
   {
      string name = ObjectName(i); if (StringFind(name,find)==0) ObjectDelete(name);
   }
   return(0); 
}

int start()
{
      // код доступен только после оплаты
   }
   int counted_bars=IndicatorCounted();
   int i,limit;

   if(counted_bars<0) return(-1);
   if(counted_bars>0) counted_bars--;
         limit = MathMin(Bars-counted_bars,Bars-1);
         if (returnBars) { rsi[0] = limit+1; return(0); }

   if (calculateValue || timeFrame==Period())
   {
     int window = WindowFind(shortName);
     if  (slope[limit] == -1) ClearPoint(limit,slpda,slpdb);
     for (i=limit; i >= 0; i--) mab[i] = iMA(NULL,0,RsiOma_Period,0,RsiOma_Mode,RsiOma_Price,i);
     for (i=limit; i >= 0; i--) rsi[i] = iRSIOnArray(mab,0,RsiOma_Period,i);
     for (i=limit; i >= 0; i--)
     {
        ma[i]  = iMAOnArray(rsi,0,MaPeriod,0,MaType,i);
        slp[i] = ma[i]-ma[i+1];
        slpda[i] = EMPTY_VALUE;
        slpdb[i] = EMPTY_VALUE;
        slope[i] = slope[i+1];
        trend[i] = trend[i+1]; 

	     if (slp[i] > slp[i+1]) slope[i]= 1; 
	     if (slp[i] < slp[i+1]) slope[i]=-1;
	     if (slp[i] > 0)        trend[i]= 1; 
	     if (slp[i] < 0)        trend[i]=-1;
	     if (slope[i] == -1) PlotPoint(i,slpda,slpdb,slp);
        if (linesVisible && window > -1)
        {
          string name = linesID+":"+Time[i];
            ObjectDelete(name);
            if (linesOnZeroCross)
            {
              if (trend[i]!=trend[i+1])
              {
                 color theZColor  = linesOnZeroCrossUpColor; if (trend[i]==-1) theZColor = linesOnZeroCrossDnColor;
                    ObjectCreate(name,OBJ_VLINE,window,Time[i],0);
                       ObjectSet(name,OBJPROP_WIDTH,linesOnZeroCrossWidth);
                       ObjectSet(name,OBJPROP_STYLE,linesOnZeroCrossStyle);
                       ObjectSet(name,OBJPROP_COLOR,theZColor);
              }
            }
            if (linesOnSlope)
            {
              if (slope[i]!=slope[i+1])
              

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

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

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

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

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

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

Стоимость полного кода
657,70₽ ≈ $8.04