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

rsi_nrp__ma_crosses.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 выбранной цены, сглаживая его скользящей средней. Далее строится сигнальная линия — скользящая средняя от сглаженного RSI. Индикатор определяет пересечения RSI с сигнальной линией и отображает стрелки на графике в точках смены направления. Поддерживаются уведомления через всплывающие сообщения, электронную почту и звуковой сигнал при возникновении пересечений.

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

НастройкаОписание
RsiPeriod Период RSI — Количество баров для расчёта RSI.
RsiPrice Цена RSI — Тип цены, используемый для расчёта RSI.
SmoothingPeriod Период сглаживания — Период скользящей средней для сглаживания значения RSI.
SmoothingMethod Метод сглаживания — Метод сглаживания для средней линии RSI.
MaPeriod Период сигнальной линии — Период скользящей средней, используемой как сигнальная линия.
MaMethod Метод сигнальной линии — Метод расчёта сигнальной линии.
alertsOn Включить уведомления — Включает или отключает отправку уведомлений о пересечениях.
alertsOnCurrent Уведомления на текущем баре — Если включено, проверяет пересечение на текущем неразвившемся баре; иначе — на последнем завершённом.
alertsMessage Сообщение — Включает отправку всплывающего уведомления при пересечении.
alertsSound Звук — Включает воспроизведение звукового сигнала при пересечении.
alertsEmail Электронная почта — Включает отправку email-уведомления при пересечении.
arrowsVisible Отображение стрелок — Включает отрисовку стрелок на графике в точках пересечений.
arrowsOnSlope Стрелки по наклону — Определяет отображение стрелок при изменении направления RSI.
arrowsIdentifier Идентификатор стрелок — Префикс имён графических объектов-стрелок для их последующего удаления.
arrowsDisplacement Смещение стрелок — Множитель смещения стрелок от цены бара в зависимости от волатильности.
arrowsUpColor Цвет стрелок вверх — Цвет стрелки, указывающей на рост.
arrowsDnColor Цвет стрелок вниз — Цвет стрелки, указывающей на падение.
arrowsUpCode Код стрелки вверх — Код символа стрелки вверх из библиотеки стандартных графических объектов.
arrowsDnCode Код стрелки вниз — Код символа стрелки вниз из библиотеки стандартных графических объектов.
Получить полный код

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

#property indicator_separate_window
#property indicator_buffers 4
#property indicator_color1  LimeGreen
#property indicator_color2  Red
#property indicator_color3  Red
#property indicator_color4  PaleVioletRed
#property indicator_width1  2
#property indicator_width2  2
#property indicator_width3  2
#property indicator_style4  STYLE_DOT

extern int    RsiPeriod          = 14;
extern int    RsiPrice           = PRICE_CLOSE;
extern int    SmoothingPeriod    = 3;
extern int    SmoothingMethod    = MODE_SMA;
extern int    MaPeriod           = 9;
extern int    MaMethod           = MODE_SMA;
extern bool   alertsOn           = false;
extern bool   alertsOnCurrent    = false;
extern bool   alertsMessage      = true;
extern bool   alertsSound        = true;
extern bool   alertsEmail        = false;
extern bool   arrowsVisible      = false;
extern bool   arrowsOnSlope      = true;
extern string arrowsIdentifier   = "rsi ma cross arrows";
extern double arrowsDisplacement = 1.0;
extern color  arrowsUpColor      = LimeGreen;
extern color  arrowsDnColor      = Red;
extern int    arrowsUpCode       = 241;
extern int    arrowsDnCode       = 242;

double raw[];
double rsi[];
double rsiDa[];
double rsiDb[];
double sig[];
double trend[];
double slope[];

int init()
{
      // код доступен только после оплаты
   }  
int deinit()
{
   string lookFor       = arrowsIdentifier+":";
   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 (slope[limit]==-1) CleanPoint(limit,rsiDa,rsiDb);
   for(i=limit; i>=0; i--) raw[i] = iRSI(NULL,0,RsiPeriod,RsiPrice,i);
   for(i=limit; i>=0; i--) rsi[i] = iMAOnArray(raw,0,SmoothingPeriod,0,SmoothingMethod,i);
   for(i=limit; i>=0; i--)
   {
      sig[i]   = iMAOnArray(rsi,0,MaPeriod,0,MaMethod,i);
      rsiDa[i] = EMPTY_VALUE;
      rsiDb[i] = EMPTY_VALUE;
      trend[i] = trend[i+1];
      slope[i] = slope[i+1];
         if (rsi[i] > sig[i])   trend[i] =  1;
         if (rsi[i] < sig[i])   trend[i] = -1;
         if (rsi[i] > rsi[i+1]) slope[i] =  1;
         if (rsi[i] < rsi[i+1]) slope[i] = -1;
         if (slope[i] == -1)    PlotPoint(i,rsiDa,rsiDb,rsi);

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

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

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

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

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

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

Стоимость полного кода
400₽ ≈ $4.89