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

Multi pair rapid rsi

multi_pair_rapid_rsi_nmc.mq5

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

indicator previous session range + projected candles + boschoch protected for tradingview.pineTradingView · 1 общих тегов#__slope direction line.mq5MQL5 / MetaTrader 5 · 1 общих теговrange breakout @meowforex1.pineTradingView · 1 общих тегов#1.mtf_collider_h4_close_13_v18bar.mq4MQL4 / MetaTrader 4 · 1 общих тегов!mth_fasttmaline_edit3.mq4MQL4 / MetaTrader 4 · 1 общих тегов!mth_fasttmaline_edit2.mq4MQL4 / MetaTrader 4 · 1 общих тегов
Вы автор или правообладатель?

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

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

О программе

Индикатор «Multi pair rapid rsi» для MetaTrader 5 рассчитывает модифицированный RSI на основе разностей скользящих средних нескольких валютных пар одновременно. Результаты отображаются в отдельном окне в виде гистограмм, окрашенных по направлению сигнала.

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

Индикатор поддерживает систему уведомлений: текстовые сообщения, звуковые сигналы и email-оповещения. Триггером служит пересечение быстрым RSI заданных уровней при изменении тренда.

Работает в двух режимах: режим расчёта (вызывается через iCustom для получения данных по каждому символу) и режим отображения, который агрегирует результаты и строит графики и метки на графике.

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

НастройкаОписание
TimeFrame Таймфрейм — Таймфрейм для расчёта индикатора
RsiPeriod Период RSI — Период расчёта быстрого RSI
RsiPrice Цена RSI — Тип цены для расчёта быстрого RSI
RsiLevelUp Уровень RSI вверх — Верхний пороговый уровень для сигнала пересечения
RsiLevelDown Уровень RSI вниз — Нижний пороговый уровень для сигнала пересечения
MaPeriod Период MA — Период скользящей средней для расчёта быстрого RSI
MaMethod Метод MA — Метод скользящей средней для расчёта быстрого RSI
alertsOn Уведомления включены — Включает или выключает систему уведомлений
alertsOnCurrent Уведомления на текущем символе — Отправлять уведомления только для текущего символа
alertsMessage Текстовые уведомления — Отображать текстовые уведомления в окне
alertsSound Звуковые уведомления — Воспроизводить звуковой сигнал при срабатывании
alertsEmail Email-уведомления — Отправлять уведомления по электронной почте
BarsPerSymbol Баров на символ — Количество баров для расчёта на каждый символ
UniqueID Идентификатор — Уникальный идентификатор индикатора, используется как имя окна
_ Разделитель — Разделитель настроек цветов
textColor Цвет текста — Цвет текста меток символов на графике
backColor Цвет фона — Цвет фона меток символов на графике
zeroCrossUpColor Цвет пересечения вверх — Цвет прямоугольника при пересечении уровня вверх
zeroCrossDownColor Цвет пересечения вниз — Цвет прямоугольника при пересечении уровня вниз
separatorWidth Ширина разделителя — Ширина визуального разделителя между столбцами символов
Получить полный код

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

#property indicator_separate_window
#property  indicator_buffers 5
#property  indicator_color1  LimeGreen
#property  indicator_color2  LimeGreen
#property  indicator_color3  PaleVioletRed
#property  indicator_color4  PaleVioletRed
#property  indicator_color5  DarkGray
#property  indicator_width1  2
#property  indicator_width3  2
#property  indicator_width5  2
#property  indicator_minimum -55
#property  indicator_maximum  55

extern string TimeFrame          = "Current time frame";
extern double RsiPeriod          = 14;
extern int    RsiPrice           = PRICE_CLOSE;
extern double RsiLevelUp         = 80;
extern double RsiLevelDown       = 20;
extern int    MaPeriod           =  5;
extern int    MaMethod           =  0;
extern bool   alertsOn           = false;
extern bool   alertsOnCurrent    = true;
extern bool   alertsMessage      = true;
extern bool   alertsSound        = false;
extern bool   alertsEmail        = false;
extern int    BarsPerSymbol      = 100;
extern string Symbols            = "EURUSD;GBPUSD;USDCHF";
extern string UniqueID           = "Multi pair rapid rsi";
extern string _                  = "separator colors";
extern color  textColor          = Black;
extern color  backColor          = DarkGray;
extern color  zeroCrossUpColor   = LimeGreen;
extern color  zeroCrossDownColor = HotPink;
extern int    separatorWidth     = 6;

double histouu[];
double histoud[];
double histodd[];
double histodu[];
double value[];
double work[];
double slope[];
double trend[];

int      window;  
string   aPairs[];
string   shortName;
double   minValue;
double   maxValue;
double   maxValues[];
int      timeFrame;
bool     calculateValue;
string   indicatorFileName;

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

int deinit()
{
   for (int i = 0; i < ArraySize(aPairs); i++)
   { 
         ObjectDelete(shortName+i);
         ObjectDelete(shortName+i+i);
   }         
   return(0);
}

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

void plotGraph(string symbol,int limit, int& shift,int element, double max)
{
   for(int i=limit; i>=0; i--)
   {   
      value[i+shift]   = work[i+shift];
      histouu[i+shift] = EMPTY_VALUE;
      histoud[i+shift] = EMPTY_VALUE;
      histodd[i+shift] = EMPTY_VALUE;
      histodu[i+shift] = EMPTY_VALUE;
      if (work[i+shift]>RsiLevelUp-50.0)
         if (slope[i+shift]==1)
               histouu[i+shift] = work[i+shift];
         else  histoud[i+shift] = work[i+shift];
      if (work[i+shift]<RsiLevelDown-50.0)
         if (slope[i+shift]==-1)
               histodd[i+shift] = work[i+shift];
         else  histodu[i+shift] = work[i+shift];
   }
   createLabel(symbol,element,shift+limit+separatorWidth-2,max,isSignalCrossing(shift));

   shift += (limit+separatorWidth-1);
}

int isSignalCrossing(int shift)
{
   if (work[shift]>RsiLevelUp  -50 && work[shift+1]<=RsiLevelUp  -50) return( 1);
   if (work[shift]<RsiLevelDown-50 && work[shift+1]>=RsiLevelDown-50) return(-1);
                                                                      return( 0);
}

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

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

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

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

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

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

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